Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Docker enables agile_devops

1,323 views

Published on

Docker is one of the hottest topics in tech today. You hear about it from developers, testers, build engineers and even your operations team. But why would an organization consider Docker? What impact will Docker have in an Agile organization?

Published in: Technology

Docker enables agile_devops

  1. 1. DOCKER ENABLES AGILE DEVOPS Keep C.A.L.M.S and Docker On Boyd Hemphill Evangelist @behemphi
  2. 2. WHO AM I Technologist
  3. 3. WHO AM I Technologist Community Builder
  4. 4. WHO AM I Technologist Community Builder Extroverted Nerd
  5. 5. IS DEVOPS AGILE REBRANDED? Controversial, Consideration, Conster…
  6. 6. WHO ARE YOU Have heard of Docker?
  7. 7. WHO ARE YOU Have heard of Docker? Using Docker in Dev/QA
  8. 8. WHO ARE YOU Have heard of Docker? Using Docker in Dev/QA Production Docker use?
  9. 9. WHAT IS DEVOPS Culture
  10. 10. WHAT IS DEVOPS Culture Automation
  11. 11. WHAT IS DEVOPS Culture Automation Lean
  12. 12. WHAT IS DEVOPS Culture Automation Lean Measure
  13. 13. WHAT IS DEVOPS Culture Automation Lean Measure Share
  14. 14. “DevOps is the way in which a technology organization embeds itself in a business to the benefit of that business.”
  15. 15. DEVOPS What is The Goal of your company?
  16. 16. DEVOPS What is The Goal of your company? Make Money
  17. 17. DEVOPS What is The Goal of your company? Make Money Value is what the market will pay, not the amount of work
  18. 18. WHAT IS AGILE RTFM (where M = manifesto)
  19. 19. WHAT IS AGILE RTFM (where M = manifesto) Dogma is not agile
  20. 20. WHAT IS AGILE RTFM (where M = manifesto) Dogma is not agile Agile _is_ agile
  21. 21. “Agile is the philosophy defined by the Agile Manifesto. It takes form in the ways organizations respond to change.”
  22. 22. FRAMEWORK FOR REASONING Philosophy
  23. 23. FRAMEWORK FOR REASONING Philosophy Model
  24. 24. FRAMEWORK FOR REASONING Philosophy Model Implementation
  25. 25. FRAMEWORK FOR REASONING Philosophy Model Implementation Tools
  26. 26. “Don’t be a Tools”
  27. 27. ECONOMICS 101 P = R - C
  28. 28. ECONOMICS 101 P = R - C C = 0 => out of business
  29. 29. ECONOMICS 101 P = R - C C = 0 => out of business R has no limit!
  30. 30. ECONOMICS 101 P = R - C C = 0 => :-( R has no limit! Does Docker impact R?
  31. 31. CONTAINERS 101 - VMS VS. OS VIRTUALIZATION A VM is a full copy of an entire computer running as software on a hypervisor
  32. 32. CONTAINERS 101 - VMS VS. OS VIRTUALIZATION A VM is a full copy of an entire computer running as software on a hypervisor A container is a slice of a kernel
  33. 33. CONTAINERS 101 - VMS VS. OS VIRTUALIZATION A VM is a full copy of an entire computer running as software on a hypervisor A container is a slice of a kernel Exec Summary: The lack of extra layers means big efficiencies
  34. 34. CONTAINERS 101 - HISTORY BSD Jails (2000)
  35. 35. CONTAINERS 101 - HISTORY BSD Jails (2000) Solaris Zones (2004)
  36. 36. CONTAINERS 101 - HISTORY BSD Jails (2000) Solaris Zones (2004) OpenVZ (2005)
  37. 37. CONTAINERS 101 - HISTORY BSD Jails (2000) Solaris Zones (2004) OpenVZ (2005) LXC (2008)
  38. 38. CONTAINERS 101 - HISTORY BSD Jails (2000) Solaris Zones (2004) OpenVZ (2005) LXC (2008) SILENCE
  39. 39. CONTAINERS 101 - HISTORY BSD Jails (2000) Solaris Zones (2004) OpenVZ (2005) LXC (2008) SILENCE Docker (2013)
  40. 40. INFORMATION ARCHITECTURE Tackle Dev Acceleration, Testing, Project Mgmt and Ops Implementations
  41. 41. INFORMATION ARCHITECTURE Tackle Dev Acceleration, Testing, Project Mgmt and Ops Implementations Look at traditional forward thinking and edgy DevOps thinking
  42. 42. INFORMATION ARCHITECTURE Tackle Dev Acceleration, Testing, Project Mgmt and Ops Implementations Look at traditional forward thinking and edgy DevOps thinking Apply the Agile Test
  43. 43. INFORMATION ARCHITECTURE Tackle Dev Acceleration, Testing, Project Mgmt and Ops Implementations Look at traditional forward thinking and edgy DevOps thinking Apply the Agile Test Highlight DevOps Thinking
  44. 44. DEVELOPER ACCELERATION Traditional - Better modeling of the production topology
  45. 45. DEVELOPER ACCELERATION Traditional - Better modeling of the production topology Forward - Disposable Development environments Docker: http://goo.gl/ TbacWI Vagrant: http://goo.gl/ K5FnCG
  46. 46. DEVELOPER ACCELERATION Traditional - Better modeling of the production topology Forward - Disposable Development environments Docker: http://goo.gl/TbacWI Vagrant: http://goo.gl/ K5FnCG Bleeding Edge - Produce container images as black boxes
  47. 47. THE AGILE TEST
  48. 48. INDIVIDUALS AND INTERACTIONS OVER PROCESSES AND TOOLS Developers can take risks such as upgrading PHP knowing they can get back to a working state in seconds instead of days. Enabling innovation means better velocity. [DevOps: Velocity = Revenue]
  49. 49. WORKING SOFTWARE OVER COMPREHENSIVE DOCUMENTATION The Dockerfile (code) that describes the run time environment is what ensures a working environment, not a huge wiki that is chronically out of date. [DevOps: Infrastructure as Code]
  50. 50. CUSTOMER COLLABORATION OVER CONTRACT NEGOTIATION A developer can change the function of a service in a container and show it to a customer (B2B) asking, "like this?” Developers can kick out new features that can be A/B tested on a SaaS offering (B2C) [DevOps - Shorten Feedback Loops]
  51. 51. RESPONDING TO CHANGE OVER FOLLOWING A PLAN Black box thinking means the role of ops changes to expressing operational measures (security, performance, scale) in terms of automated testing. Innovation increases because feedback comes sooner. [DevOps - Innovation means competitive advantage]
  52. 52. BUILD AND TEST AGILITY Traditional - Better modeling of the production environment in testing
  53. 53. BUILD AND TEST AGILITY Traditional - Better modeling of the production environment in testing Forward Thinking - Better parallelism in software build and test.
  54. 54. BUILD AND TEST AGILITY Traditional - Better modeling of the production environment in testing Forward Thinking - Better parallelism in software build and test. Bleeding Edge - Build systems produce container images as artifacts
  55. 55. THE AGILE TEST
  56. 56. INDIVIDUALS AND INTERACTIONS OVER PROCESSES AND TOOLS At the bleeding edge, collaboration across function becomes about producing tests rather than processes for inhibiting innovation. Code becomes the documentation and collaboration happens at the engineering level rather than the process control level. [DevOps: Test all the things]
  57. 57. WORKING SOFTWARE OVER COMPREHENSIVE DOCUMENTATION Better modeling of the production environment, especially in a disposable way, deploys are seamless in all environments [DevOps: Continuous Delivery]
  58. 58. CUSTOMER COLLABORATION OVER CONTRACT NEGOTIATION A/B testing is a form of collaboration, though generally an individual customer is unaware they are a test subject. [DevOps - Short Feedback Loops]
  59. 59. RESPONDING TO CHANGE OVER FOLLOWING A PLAN Responding to change is the definition of both build and quality engineering. Docker adoption has no effect.
  60. 60. PROJECT MANAGEMENT Traditional - None
  61. 61. PROJECT MANAGEMENT Traditional - None Forward Thinking - Coordination between Dev, QA and Ops is eased
  62. 62. PROJECT MANAGEMENT Traditional - None Forward Thinking - Coordination between Dev, QA and Ops is eased Bleeding Edge - Problems of The Mythical Man Month are eased by micro teams
  63. 63. THE AGILE TEST
  64. 64. INDIVIDUALS AND INTERACTIONS OVER PROCESSES AND TOOLS On the bleeding edge change becomes about how to ensure behavior of software rather than people. Software problems are easier than people problems. I believe the manifesto needs an update here to value the _quality_ of interaction. [DevOps - Reduce need for human intervention]
  65. 65. WORKING SOFTWARE OVER COMPREHENSIVE DOCUMENTATION Automated coordination between environments means less deploy friction for PM’s to manage. [DevOps: Continuous Delivery]
  66. 66. CUSTOMER COLLABORATION OVER CONTRACT NEGOTIATION Use of disposable environments could lead to PMs doing check-ins with customers that ask, "Like this?" [DevOps - Short Feedback Loops]
  67. 67. RESPONDING TO CHANGE OVER FOLLOWING A PLAN Micro teams move at their own pace. The response to change is much more rapid. There is little inter-team communication required so the quality of intra-team communication can be improved. [DevOps - Increase efficiency holistically]
  68. 68. OPERATIONS Traditional - Gnashing of teeth, stress and obstinance
  69. 69. OPERATIONS Traditional - Gnashing of teeth, stress and obstinance Forward Thinking - Working with DevOps thought leaders to identify an appropriate sandbox to do real world R&D.
  70. 70. OPERATIONS Traditional - Gnashing of teeth, stress and obstinance Forward Thinking - Working with DevOps thought leaders to identify an appropriate sandbox to do real world R&D. Bleeding Edge - Micro services teams (Netflix), Single tenant systems (Pantheon), Bleeding edge shops (offers.com)
  71. 71. THE AGILE TEST
  72. 72. INDIVIDUALS AND INTERACTIONS OVER PROCESSES AND TOOLS At the operational level, Docker is a technology. Again, I believe the manifesto needs and update to value the _quality_ of interaction.
  73. 73. WORKING SOFTWARE OVER COMPREHENSIVE DOCUMENTATION Containers are portable, so "works on my machine" is not a consideration in a Docker shop. When software gets to Ops, it works. Testing will need to focus on security and performance.
  74. 74. CUSTOMER COLLABORATION OVER CONTRACT NEGOTIATION At Pantheon, for example, this is a crucial point. Customers use the fully featured system indefinitely for free. They purchase value added services like performance, back up and the like. [DevOps - Value is in what the market will pay for.]
  75. 75. RESPONDING TO CHANGE OVER FOLLOWING A PLAN Ops, in terms of DevOps thinking, is about eliminating the need for reaction in the production environment. An argument can be made that Docker allows for automated response to change (scaling and disasters for example) [DevOps - Reduce need for human intervention]
  76. 76. SUMMARY - DEVOPS Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization
  77. 77. SUMMARY - DEVOPS Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization Automation - Tools are not there yet. Companies are showing up with the mission to address this, but it is very early days.
  78. 78. SUMMARY - DEVOPS Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization Automation - Tools are not there yet. Companies are showing up with the mission to address this, but it is very early days. Lean - DevOps thought leaders are responsible for the holistic impact of technology decisions at the business level.
  79. 79. SUMMARY - DEVOPS Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization Automation - Tools are not there yet. Companies are showing up with the mission to address this, but it is very early days. Lean - DevOps thought leaders are responsible for the holistic impact of technology decisions at the business level. Measurement - Empiricism is required if we are to meet our Measurement obligation. Blackbox thinking could revolutionize compliance.
  80. 80. SUMMARY - DEVOPS Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization Automation - Tools are not there yet. Companies are showing up with the mission to address this, but it is very early days. Lean - DevOps thought leaders are responsible for the holistic impact of technology decisions at the business level. Measurement - Empiricism is required if we are to meet our Measurement obligation. Blackbox thinking could revolutionize compliance. Sharing - DevOps thought leaders should be working with peers and collaborators in their company to determine if they can derive the proposed business benefits.
  81. 81. SUMMARY - AGILE Individuals over Process - Agile thought leaders must help Ops find ways to accept developers’ control of dependencies
  82. 82. SUMMARY - AGILE Individuals over Process - Agile thought leaders must help Ops find ways to accept developers control of dependencies Working Software over Docs - Agilistas must help the business identify safe places for change.
  83. 83. SUMMARY - AGILE Individuals over Process - Agile thought leaders must help Ops find ways to accept developers control of dependencies Working Software over Docs - Agilistas must help the business identify safe places for change. Collaboration over Contract - The Agile approach should be applied to the learning of how to use Docker in production.
  84. 84. SUMMARY - AGILE Individuals over Process - Agile thought leaders must help Ops find ways to accept developers control of dependencies Working Software over Docs - Agilistas must help the business identify safe places for change. Collaboration over Contract - The Agile approach should be applied to the learning of how to use Docker in production. Change Response over Planning - New ways to apply the notion of velocity must be developed to measure the success of a Docker adoption.
  85. 85. “Docker enables new agile practices, but is it the right technology choice for your organization?”
  86. 86. COLOPHON AUDIBLE.COM = BEST DEVOPS TOOL EVER! The Lean Startup - Reis (tech) The Goal - Goldratt (Theory of Constraints) It’s not Luck - Goldratt (Theory of Constraints) The Mythical Man Month - Brooks (Team structure) Great by Choice - Collins (Culture) The Phoenix Project - Kim (*) (tech) Continuous Delivery - Humble (*) (hardcore tech) The Lean Enterprise - Humble (*) (tech)

×