Building a DevOps Team that isn't Evil

4,265 views

Published on

Published in: Technology
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,265
On SlideShare
0
From Embeds
0
Number of Embeds
227
Actions
Shares
0
Downloads
85
Comments
0
Likes
4
Embeds 0
No embeds

No notes for slide

Building a DevOps Team that isn't Evil

  1. 1. Webinar starts at 1:00 ETYou  shouldn’t  be  hearing  anything  yet  
  2. 2. Starting in less than 15 minYou  shouldn’t  be  hearing  anything  yet  
  3. 3. Starting in less than 10 minYou  shouldn’t  be  hearing  anything  yet   (I’m  ge6ng  excited,  are  you?)  
  4. 4. Building a DevOps Team (That  isn’t  Evil)  
  5. 5. Presenting TodayEric  Minick  Technical  Evangelist   §  Background  as  a  etm@urbancode.com   developer,  tester  and   tools  guy   §  Last  9  years:  Helping   customers  implement   build,  deploy,  release   automaPon            @EricMinick  UrbanCode  Inc.  ©2013  
  6. 6. The Plan§  Why  DevOps  (very  briefly)  §  Why  would  the  teams  be  seen  as  evil?  §  A  template  for  non-­‐evil  DevOps  teams  §  AddiPonal  Resources,  Q&A  UrbanCode  Inc.  ©2013  
  7. 7. The Dev /Ops Problem BA  /  EA   App  Dev   Test                 Ops  •  A  big  wall  hurts  communicaPon  &  trust  •  Knowledge  mostly  flows  one  way   •  Feedback  is  limited  •  Processes  and  tools  vary  wildly  via  silos  UrbanCode  Inc.  ©2013   Image  credit:  h`p://www.flickr.com/photos/68518558@N00/426688160/sizes/z/in/photostream/    
  8. 8. Idealized solution: blow up the silos DevOps   Dev   Test   Ops  UrbanCode  Inc.  ©2013   Image  credit:  h`p://www.geograph.org.uk/profile/19979  
  9. 9. Idealized ‘DevOps Team’ Agile Reqs. Faster / Safer Biz Dev Ops Idea! Codes / Release / Tests Monitor Feedback Loops Everywhere Business,  Dev  and  Ops  work  as  one  to  deliver  awesomeness*!  UrbanCode  Inc.  ©2013   *  Awesomeness  (n):  Rapid  flow  of  business  value  to  the  customer  
  10. 10. But “DevOps team” is a hated termUrbanCode  Inc.  ©2013  
  11. 11. But “DevOps team” is a hated term The  Devops  movement  addresses  the  dysfuncPon  that   results  from  organizaPons  composed  of  funcPonal  silos.   Thus,  crea+ng  another  func+onal  silo  that  sits  between   dev  and  ops  is  clearly  a  poor  (and  ironic)  way  to  try  and   solve  these  problems*  UrbanCode  Inc.  ©2013   *  h`p://conPnuousdelivery.com/2012/10/theres-­‐no-­‐such-­‐thing-­‐as-­‐a-­‐devops-­‐team/  
  12. 12. But “DevOps team” is a hated term The  Devops  movement  addresses  the  dysfuncPon  that   results  from  organizaPons  composed  of  funcPonal  silos.   Thus,  crea+ng  another  func+onal  silo  that  sits  between   dev  and  ops  is  clearly  a  poor  (and  ironic)  way  to  try  and   solve  these  problems*  UrbanCode  Inc.  ©2013  
  13. 13. No more silos Bad   Dev   DevOps   Ops  UrbanCode  Inc.  ©2013  
  14. 14. Non-Evil (Enterprise) DevOps Teams are Hard§  Silos  are  tough  to  bust   ­  Just  what  do  you  expect  from  the  VPs  of  Dev  and  Ops?  §  No,  we’re  not  le6ng  Devs  break  producPon  §  Limited  #  of  people  in  enterprises  who  “get”  DevOps   ­  When  trying  something  new,  involve  people  who  care  §  Want  to  start  small  and  learn  something  to  apply  big    UrbanCode  Inc.  ©2013  
  15. 15. Basic Strategy DevOps   Team   Dev   Ops   Facilitate  be`er  Dev  /  Ops  CollaboraPon   Fight  silo’d  thinking  UrbanCode  Inc.  ©2013  
  16. 16. Step 1: Assemble your team§  Goal:  Improve  delivery   ­  Reduce  duplicaPon  of  effort,     Improve  consistency,  embrace  change  §  Members   ­  Developers   ­  Testers   ­  Change  Management   ­  Release  Managers   ­  Release  Engineers   ­  Infrastructure  /  Cloud  People  §  Advisors   ­  SkepPcs  and  the  “Grumpy  Team”  (security,  audit,  etc)  §  Team  may  be  full-­‐+me  or  virtual  /  matrix  UrbanCode  Inc.  ©2013   h`p://www.fotopedia.com/items/flickr-­‐2133752097  
  17. 17. Step 2: Identify pilot project* teams§  Willing  §  Capable  §  High  rates  of  change  §  Moderate  complexity  §  Highly  visible        *  3a:  Start  referring  to  them  as  ‘ApplicaPon’  or  ‘Product’  teams  rather  than  ‘Project’.  Project  teams  that  disband  auer  delivery  are  counter-­‐DevOps.    UrbanCode  Inc.  ©2013  
  18. 18. Step 3: Audit the delivery pipeline§  Look  for  things  that  cause  errors  and  slowdowns  §  Inconsistent   ­  Environments,  tools,  communicaPon  §  Slow  or  expensive   ­  Handoffs   ­  Se6ng  up  /  deploying  to  test  environments  §  If  you  aren’t  constantly  tesPng  the  latest  in   environments  that  are  similar  to  producPon,  there   will  be  stuff  to  fix.    UrbanCode  Inc.  ©2013  
  19. 19. Step 4: Updated SDLC & toolchain design Test 1 Source IaaS Repos Env. Def Provisioning Provisioning Test ... MVP   Controller Images Server Test n Configuration Minimum  Viable  Process   Package Deployment Prod Repo Chain VersionMeta-data Environment Environment Config Inventory CMDB Test 1 Build Registered Continuous with Package Repo Builds Test ... Deployment Source Integration & Build Package System Repos Mgmt. Repo Build Triggers Test n Version Rollback Meta-data Event Correlation Prod Functional Performance Tests Tests Monitoring UrbanCode  Inc.  ©2013   UC  Webinar:  “Building  a  DevOps  Toolchain”  
  20. 20. Step 5: Begin executing with pilot teams    UrbanCode  Inc.  ©2013  
  21. 21. Step 6: Post-mortems / retrospectives  No  ba&le  plan  ever  survives  contact  with  the  enemy.    -­‐  Moltke  the  Elder    §  Meet  and  update  regularly   ­  With  every  major  producPon  release   ­  Host  Dev  /  Ops  post-­‐mortems  for  outages.  The  teams  own   the  event  and  outcomes.  You  facilitate  and  learn.  UrbanCode  Inc.  ©2013  
  22. 22. Step 7: Roll out to more teams§  Give  up  ownership  of  everything   ­  Build  and  release  -­‐>  applicaPon  teams   ­  Tooling  -­‐>  Infrastructure  and/or  Development  Support   (if  no  appropriate  group  exists,  lobby  for  one)    §  Evangelize  successes,  recruiPng  more  teams   ­  Expand  scope  beyond  web  apps  &  mobile  as  appropriate  UrbanCode  Inc.  ©2013  
  23. 23. 7 steps to a Good DevOps Team1.  Assemble  a  team  with  diverse  skills  &  backgrounds  2.  IdenPfy  pilot  teams  to  work  with  3.  Audit  the  exisPng  value  delivery  chain  4.  Create  a  plan  of  a`ack  including  process  and  tools  5.  Try  it  6.  Learn  and  replan  7.  OperaPonalize  (give  up  ownership  and  scale)  UrbanCode  Inc.  ©2013  
  24. 24. Dealing with defenders of the wall§  IdenPfy  them  early  §  Co-­‐opt  them  with  advisors   ­  They  are  either  members  of  the   “grumpy  team”  or  cite  those  people.  §  Avoid  them  when  picking  pilot   teams  §  Build  a  business  case  with  your   value  delivery  chain  audit.  It   starts  and  ends  with  the   business.  UrbanCode  Inc.  ©2013  
  25. 25. Summary§  DevOps  is  firmly  anP-­‐silo  §  Do  Not   ­  create  a  DevOps  silo   ­  rename  the  ops  silo  “DevOps”  §  Do     ­  create  a  team  to  facilitate  DevOps  adopPon   ­  work  to  tear  down  walls  and  blur  silos  UrbanCode  Inc.  ©2013  
  26. 26. References h`p://urbancode.com/resources  §  Deployment  AutomaPon  Basics  §  Lean  Build  &  Deployment  AutomaPon  §  ITIL  Release  Management  and  AutomaPon  Blogs.urbancode.com    Twi`er.com/UrbanCode  UrbanCode  Inc.  ©2013  
  27. 27. Speaking of DevOps toolchains…  Urbancode  is  a  vendor  of  these  types  of  tools:  §  uBuild     ­  Build  automaPon  on  an  enterprise  scale  §  uDeploy   ­  ApplicaPon  Release  AutomaPon  §  uRelease   ­  Release  management  and  release  weekend  execuPon  §  TerraForm   ­  Open  source  environment  provisioning  tool  UrbanCode  Inc.  ©2013  
  28. 28. Q&A eric@urbancode.com   Slideshare.net/Urbancode   @EricMinick   Linked-­‐in  group:  “AutomaPng  Deployment  and  Release”    

×