From Agile Development to Agile Operations (QCon SF 2009)

24
November, 2009 San Francisco 200 © 2009 Elastra Corporation, licensed under a Creative Commons Attribution-No Derivative Works 3.0 Unported License From Agile Development to Agile Operations Stuart Charlton, CTO, Elastra

description

Slides from my talk at QCon SF 2009 on agile operations.

Transcript of From Agile Development to Agile Operations (QCon SF 2009)

Page 1: From Agile Development to Agile Operations (QCon SF 2009)

November, 2009

San Francisco 2009

© 2009 Elastra Corporation, licensed under a Creative Commons Attribution-No Derivative Works 3.0 Unported License

From Agile Development to Agile Operations

Stuart Charlton, CTO, Elastra

Page 2: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 2

Objectives

• Reflecting on how cloud computing is changing the game between development & operations

• Suggested design goals for cloud computing technology, to help bridge these worlds

• Characterizing an integrated approach to application design, development, and operations

2

Page 3: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 3

About Your Presenter

Stuart Charlton• Canadian,

now in San Francisco

CTO, Elastra

In prior lives... • BEA Systems,

Rogers Communications,Infusion Development,global training & consulting

RESTafarian and Data geek

Stu Says Stuffhttp://stucharlton.com/blog

Page 4: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 4

The Dev / Ops Game

Page 5: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 5

The Realities

• Organizationally & Geographically Distributed Design and Operations (The Cloud)

• Performance, Scale, and Availability are due to a complex combination of design and operational decisions

• Application and infrastructure management is complex and inter-disciplinary

5

Page 6: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 66

The World of Design & OperationsHP IBM MSFT ORCL BMC VMW

Architecture, Development

Rational Visual Studio

Jdeveloper Spring

Application LifecycleManagement

Mercury Rational Visual Studio Team System

IT Automation OO TPM Systems Center CM

Oracle EM Atrium Vcenter Orch.,vApps

Operations and System Management

SA, NA, CMDB

Tivoli Systems Center

Oracle EM PatrolRemedyBlade Logic

vCenter

Virtualization, Operating Systems

HPUXNonStop

z/OS,LPARAIX

Windows,Azure,Hyper-V

Oracle VM, Linux, Solaris

vSphere

Hardware, Network, Storage

ProliantIntegrityProCurve

System x, 1, p, z

Sun

Page 7: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 7

HP IBM MSFT ORCL BMC VMW

Architecture, Development

Application LifecycleManagement

IT Automation

Operations and System Management

Virtualization, Operating Systems

Hardware, Network, Storage

7

A Major Cultural Split

Delivery Orientation

Operations Orientation

Big Culture and Tool Gaps!

Page 8: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009

Applying Agile Practices to Operations?

Some can remain a

useful guide…

• Value expressed through functionality

• Automated Build, Test, Integration

• Autonomous teams• Continuous integration of

source

…But development practices don’t always translate well

• Greater value is placed on continuity and risk

• What’s the test environment?» More like ”rehearsal”

• Legacy dependencies» Need for situational awareness

• Where’s the source?

Page 9: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009

Example:Why can’t these two servers communicate?Possible areas of problems

• Security» Bad credentials

• Server Configuration» Wrong IP or Port» Bad setup to listen or call

• Network Configuration» Wrong duplex» Bad DNS or DHCP

• Firewall Configuration» Ports or protocols not open

Page 10: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009

Example:What do I need to do to make this change?Desired Change

• Scale-out this cluster

But…

• Impacts on other systems» Security Systems» Load Balancers» Monitoring» CMDB / Service Desk

• Architecture issues» Stateful or stateless nodes» Repartitioning?» Limits/constraints on

scale out?

10

Page 11: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009

Example:What is the authoritative reality?

Desired State

• Configuration Template• Model• Script• Workflow• CMDB• Code

Current State

• On the server» Might not be in a file» Might get changed at runtime

• And when you do change…» It may not actually change» It might change to an

undesirable setting» It might affect other settings

that you didn’t think about

11

Page 12: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 12

Cloud Computing to the Rescue?What Exists, What is Missing

• What we have now:» On Demand Provisioning of Commodity Infrastructure

OS-level down registration, launch, attachment

» On Demand Provisioning of Constrained Applications Works for some cases, not integrated cases (yet)

• What we still need to consider:» Configuration as data and as code» Collaboration on design and operations» Accounting for the full value stream of the system

Page 13: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 13

Suggested Design Goals for Cloud Computing

• Separate Applications from Infrastructure» How far can Black-Box PaaS really go?

• Enabling Computer-Assisted Design and Operations» IT complexity is getting overwhelming» Can machine reasoning and planning help?

• Explicit Collaboration» Both design and operations suggest are

highly collaborative work» But in operations, not traditionally supported by most tooling

13

Page 14: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 14

An Approach to Integrated Design and Ops

14

Page 15: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009

Configuration Code, Config, and Models,or What is the Source?Bottom Up

• Scripts & Recipes» Hand-grown automation

• Runbooks» Workflow, policy

• Frameworks» Chef» Puppet, Cfengine

• Build Dependency Systems» Maven

Top Down

• Modeled Viewpoints» E.g. Microsoft Oslo, UML,

Enterprise Architecture

• Modular Containers» E.g. OSGi, Spring, Azure roles

• Configuration Models» SML, CIM» ECML , EDML

Page 16: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 16

Modeled Collaboration & Change Management

Page 17: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 17

On the other hand…

• “All Modeling is Programming and All Programming is Debugging” - Neil Gunther

• Need visibility into what the model implies» Solutions don’t seem completely satisfactory…

Code generation? Plan generation? Runtime adjustment?

17

Page 18: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 18

Accounting Barriers to Agile/Lean Operations

• Cost Attribution» Capex vs. Opex

Lots of heat, little light

» Fixed vs. Variable Cost Maybe? Still HW focused

• As opposed to» Looking at the end-to-end

system as a value stream» Costing based on time calculations for repeatable

activities: Time-Driven Activity Based Costing

Page 19: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009

AN APPROACH

Cloudy, with a chance of …

Page 20: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 20

Characterizing an Integrated Approach to Cloud Application Design, Dev & Operations

• Distributed, Autonomous Control» Ownership & stewardship of artifacts and systems are

normally decentralized

• Open Document-Exchange Describing a System» The trouble with APIs» Today’s attempts: model marts, CMDBs, scripts, POMs» Contrast to the success of the Web

• Hyperlinked Web Architecture» No monolithic documents

20

Page 21: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 21

Characterizing an Integrated Approach to Integrated Cloud App Design & Operations

• Model-Driven» Make documents conform to a logical framework and

visual notation

• Goal and Policy Driven» “What, not How”: Declarative specifications» Allow for automated planning of operational steps

• Viewpoint-Based» Extensible modeling languages & constraints

21

Page 22: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 22

Characterizing an Integrated Approach to Integrated Cloud App Design & Operations

• Collaborative» Leveraging social computing» Faster decision making to enact changes to a system

• Governable» Access control & entitlement enforcement

22

Page 23: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009 23

Elastic Modeling Languages – A Beginning

23

Page 24: From Agile Development to Agile Operations (QCon SF 2009)

San Francisco 2009

THANK YOU

[email protected]