The Two Cultures - When DevOps Meets Enterprise

Post on 13-Feb-2017

226 views 3 download

Transcript of The Two Cultures - When DevOps Meets Enterprise

©  2016,  Amazon  Web  Services,  Inc.  or  its  Affiliates.  All  rights  reserved.

Dr.  Thomas  Fuhrmann,  AWS  Professional  Services

12  April  2016

The  Two  CulturesWhen  DevOps Meets  Enterprise

Agenda

The  Two  CulturesSoftware  Development:  Enterprise  vs.  Start-­UpsWhat  is  DevOps?DevOps the  Amazon  Way

C.  P.  Snow  – The  Two  Cultures

A  good  many  times  I  have  been  present  at  gatherings  of  people  who,  by  the  standards  of  the  traditional  culture,  are  thought  highly  educated  and  who  have  with  considerable  gusto  been  expressing  their  incredulity  at  the  illiteracy  of  scientists.

C.  P.  Snow  -­ The  Two  Cultures  and  the  Scientific  Revolution,  1959

Enterprises havewell-­structured roles …

… follow strictapproval processes …

... and needextensive upfront

documentation

Enterprises arerisk averse!

Requirement  Analysis

Architecture

Development

Testing

Run-­Books

Operations

Software  Development  in  the  Enterprise

Competing  Forces

Business

Development Operations

Build  it  faster Keep  it  stable

Plans are suited forwell charted territory

No  plan  survives  first  contact  with  the  enemy.

Helmuth von  Moltke the  Elder

The  Start-­up  World

Start-­ups haveno time to lose!

Start-­ups haveno money to spend!

Start-­ups lackwell-­trodden paths!

Experiment

Success  as  Criterion

Fail  fast,  fail  often

Embrace  Risk

Start-­up  Approach

How can you succeedw/o solid architecture?

You can succeed,but differently!

DevOps

A  good  meal  is  not  a  set  of  isolated  boxes  with  perfect  ingredients  …

…  it  rather  means  good  chefs  take  responsibility   for  the  entire  dining  experience:   from  selecting  the  ingredients   to  hosting  their  guests.

DevOps Software  Development  Lifecycle

DevOps speeds  up  this  lifecycle  

developers customers

releasetestbuild

plan monitor

delivery  pipeline

feedback  loop

The  Learning  Advantage  of  DevOps

RequirementsGathering ReleaseDevelopment  

and  Check  In Test  and  QA

Some  Learning

Lots  of  Learning

Minimal  Learning

DevOps and  Agility

Waterfall

Analyze Design Build Test Deploy

Pseudo-­Agile

Sprint

Test DeployA D B A D BSprint Sprint

A D B

Sprint

A D B T DSprint Sprint

A D B T D A D B T D

Dev QA Ops

Dev QA Ops

Dev/QA/Ops Dev/QA/Ops Dev/QA/Ops

Agile

Isn’t that risky?

Sure,that isrisky!

But  which  Risk?

• Risk  of  wasting  developer  resources?ü Yes,  but  so  do  well-­planned  projects  too.

• Risk  of  breaking  production?ü Yes,  but  there  are  ways  to  limit  that.

• Risk  of  annoying  customers?ü Yes,  but  being  transparent  and  engaging  with  them  helps.

• Risk  of  missing  market  opportunities?ü Not  really  because  you’re  very  fast!

DevOps Requirements:

• Courage• C-­Level  Support• Cloud-­Services

Building  DevOps Teams

• Make  DevOps  everyone’s job  – no  silos!• Encourage  developers   to  participate  openly   in  the  automation  of  operations  code

• Embolden  operation’s  participation   in  testing  and  automation  of  application   code

• Team  should  take  pride in  how  fast  and  frequently  they  deploy

Building  a  DevOps  Culture

• Encourage a  fail  fast,  learn  quick  mindset• Foster innovation  and  accountability• Promote open  and  honest  sharing  of  lessons  learned

• Build  trust  across  organizational  boundaries• Expect  that  everything  will  be  work-­in-­progress

DevOps the  Amazon  Way

Increased  Agility

32

Increased  agility  has  become  the  #1reason  organizations  use  the  AWS  cloud.

Organizations  Can’t  Afford  to  Be  Slow

Old  World:Infrastructure   adapted  inWEEKS

AWS:Infrastructure   adapted  inMINUTESAdd  new  dev  environmentAdd new  prod  environmentAdd new  environment  in  JapanAdd 1,000  serversRemove  1,000  serversDeploy  1  PB  data  warehouse

Shut  down  1  PB  data  warehouse

AWS  Fosters  Experimentation

• Experiment  often• Fail  quickly  at  a  low  cost• Innovation  increases

With  on-­premisesoperations:• Experimenting  is  infrequent• Failure  is  expensive• Innovation  is  diminished

MonitorProvisionDeployTestBuildCode

Elastic  Beanstalk

OpsWorks

CloudWatch

CloudFormation

CodeDeploy

CodeCommit

CodePipeline

AWS  DevOps Aligned  Services

2011

82

159

2012

280

2013

516

2014

722

2015

Rapid  Pace  of  Innovation

History  of  Innovation

37

Amazon   S3

Amazon   SQS

Amazon   EC2

Amazon   SimpleDB

Amazon   EBS

Amazon   CloudFront

Elastic  LoadBalancingAuto   ScalingAmazon   VPCAmazon   RDS

Amazon   SNS

AWS  Identity   and   Access  Management  

Amazon   Route   53

Amazon   SESAWS  Elastic  BeanstalkAWS  CloudFormationAmazon   ElastiCacheAWS  Direct  ConnectAWS  GovCloud

AWS  Storage  Gateway

Amazon   DynamoDB

Amazon   CloudSearch

Amazon   SWF

Amazon   Glacier

Amazon   Redshift

AWS  Data  Pipeline

Amazon   Elastic  TranscoderAWS  OpsWorksAWS  CloudHSMAmazon   AppStreamAWS  CloudTrailAmazon   WorkSpacesAmazon   Kinesis

Amazon   ECS

Amazon   Lambda

AWS  Config

AWS  CodeDeploy

Amazon   RDS  for  Aurora

AWS  KMS

Amazon   Cognito

Amazon   WorkDocs

AWS  Directory  Service

Amazon   Mobile  Analytics

2006 2007 2008 2009 2010 2011 2012 2013 2014 2015

Amazon   EFSAmazon   WorkMailAmazon   Machine  Learning

DevOps Jumpstart  Enterprise  Accelerator

Build  DevOps culture

• Encourage  to  fail  fast  and  learn  quickly

• Foster  innovation  and  accountability

• Promote  open  and  honest  sharing

• Build  trust  across  organizational  boundaries

Jumpstart  provides

• Overview  DevOps at  Amazon• Introduction  to  agile  and  scrum

• Hands-­on  intro  to  configuration  management

• Hands-­on  intro  to  infrastructure  provisioning

• Full  Sprint  cycles  with  planning,  review,  and  retrospective

Your  commitments

• Executive  Sponsorship• Dedicated  full-­time  resources  to  form  a  Scrum  Team

• Workload  identified  for  cloud  migration  or  cloud  application  architecture  using  a  DevOps strategy

Thank  you!