Successfully reported this slideshow.

Container Days NYC Keynote

1

Share

Upcoming SlideShare
Ten Book, Five Minutes
Ten Book, Five Minutes
Loading in …3
×
1 of 136
1 of 136

Container Days NYC Keynote

1

Share

Download to read offline

Why Docker? Is it cool? Is it the newest thing? Does it solve _my_ problem? In reality, as DevOps thought leaders and professionals the question is really, "How can the cost of a Docker adoption -- in terms of risk and opportunity cost -- benefit my company?"

Why Docker? Is it cool? Is it the newest thing? Does it solve _my_ problem? In reality, as DevOps thought leaders and professionals the question is really, "How can the cost of a Docker adoption -- in terms of risk and opportunity cost -- benefit my company?"

More Related Content

Related Books

Free with a 14 day trial from Scribd

See all

Related Audiobooks

Free with a 14 day trial from Scribd

See all

Container Days NYC Keynote

  1. 1. @behemphi @stackengin e D O C K E R E N A B L E S D E V O P S K E E P C . A . L . M . S . A N D D O C K E R O N … B O Y D E . H E M P H I L L @ B E H E M P H I
  2. 2. @behemphi @stackengin goo.gl/jRXAsN W H O A M I ? • Technologist
  3. 3. @behemphi @stackengin goo.gl/jRXAsN W H O A M I ? • Technologist • Community Builder
  4. 4. @behemphi @stackengin goo.gl/jRXAsN W H O A M I ? • Technologist • Community Builder • Extroverted Nerd
  5. 5. @behemphi @stackengin goo.gl/jRXAsN W H O A M I ? • Technologist • Community Builder • Extroverted Nerd • Evangelist
  6. 6. @behemphi @stackengin goo.gl/jRXAsN - T H E O R G A N I Z E R S “Do one thing each month to make _your_ tech community better.”
  7. 7. @behemphi @stackengin goo.gl/jRXAsN T H I S T H I N G O F W H I C H Y O U S P E A K ? • Docker Docker Docker
  8. 8. @behemphi @stackengin goo.gl/jRXAsN T H I S T H I N G O F W H I C H Y O U S P E A K ? • Docker Docker Docker • Orchestration, Service Discovery, Community
  9. 9. @behemphi @stackengin goo.gl/jRXAsN T H I S T H I N G O F W H I C H Y O U S P E A K ? • Docker Docker Docker • Orchestration, Service Discovery, Community • Like what you hear? Come join the conversation: http://goo.gl/YyyJOx
  10. 10. @behemphi @stackengin goo.gl/jRXAsN - B O B Q U I L L I N - C E O “Buy copious amounts of StackEngine goodness.”
  11. 11. @behemphi @stackengin goo.gl/jRXAsN W H O A R E Y O U ? • Have heard of Docker
  12. 12. @behemphi @stackengin goo.gl/jRXAsN W H O A R E Y O U ? • Have heard of Docker? • Have experimented with Docker on the job?
  13. 13. @behemphi @stackengin goo.gl/jRXAsN W H O A R E Y O U ? • Have heard of Docker? • Have experimented with Docker on the job? • Are using Docker in a production environment?
  14. 14. @behemphi @stackengin goo.gl/jRXAsN - S E C U R I T Y H O B B I T S “Unicorns nothing, Balrogs is more like it!”
  15. 15. @behemphi @stackengin S O … W H A T I S D E V O P S ?
  16. 16. @behemphi @stackengin e I S D E V O P S A C U L T U R E ?
  17. 17. @behemphi @stackengin e I S D E V O P S A U T O M A T I O N ?
  18. 18. @behemphi @stackengin e I S D E V O P S L E A N ?
  19. 19. @behemphi @stackengin e I S D E V O P S M E A S U R E M E N T ?
  20. 20. @behemphi @stackengin e I S D E V O P S S H A R I N G ?
  21. 21. @behemphi @stackengin “DevOps is the way in which a technology organization embeds itself in a business to the benefit of that business.”
  22. 22. @behemphi @stackengin goo.gl/jRXAsN C O M M O N G R O U N D • Philosophy
  23. 23. @behemphi @stackengin goo.gl/jRXAsN C O M M O N G R O U N D • Philosophy • Model
  24. 24. @behemphi @stackengin goo.gl/jRXAsN C O M M O N G R O U N D • Philosophy • Model • Implementation
  25. 25. @behemphi @stackengin goo.gl/jRXAsN C O M M O N G R O U N D • Philosophy • Model • Implementation • Tooling
  26. 26. @behemphi @stackengin E C O N O M I C O B S E R V A T I O N
  27. 27. @behemphi @stackengin E C O N O M I C O B S E R V A T I O N • P = R - C
  28. 28. @behemphi @stackengin E C O N O M I C O B S E R V A T I O N • P = R - C • If C = 0, you are out of business.
  29. 29. @behemphi @stackengin E C O N O M I C O B S E R V A T I O N • P = R - C • If C = 0, you are out of business. • R has no ceiling!
  30. 30. @behemphi @stackengin – J O H N N Y A P P L E S E E D “Focus on system throughput as a way to maximize revenue.”
  31. 31. @behemphi @stackengin L A N G U A G E M A T T E R S • We do ourselves a disservice by naming technology with tools
  32. 32. @behemphi @stackengin L A N G U A G E M A T T E R S • We do ourselves a disservice by naming technology with tools • Talk about solving a configuration management issue (model)
  33. 33. @behemphi @stackengin L A N G U A G E M A T T E R S • We do ourselves a disservice by naming technology with tools • Talk about solving a configuration management issue (model) • Don’t talk about writing Chef code (tool)
  34. 34. @behemphi @stackengin L A N G U A G E M A T T E R S • We do ourselves a disservice by naming technology with tools • Talk about solving a configuration management issue (model) • Don’t talk about writing Chef code (tool) • Understanding the nature of the problem leads to the best choice of tool
  35. 35. @behemphi @stackengin “Docker enables the use of Linux containers by mere mortals. Linux containers enable more rapid DevOps model adoption.”
  36. 36. @behemphi @stackengin C O N T A I N E R S 1 0 1 - V M S V S . O S V I R T U A L I Z A T I O N • A VM is a full copy of an entire computer running as software on a hypervisor
  37. 37. @behemphi @stackengin C O N T A I N E R S 1 0 1 - V M S V S . O S V I R T U A L I Z A T I O N • A VM is a full copy of an entire computer running as software on a hypervisor • A container is a slice of the kernel
  38. 38. @behemphi @stackengin C O N T A I N E R S 1 0 1 - V M S V S . O S V I R T U A L I Z A T I O N • 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
  39. 39. @behemphi @stackengin C O N T A I N E R S 1 0 1 - H I S T O R Y • BSD Jails (2000)
  40. 40. @behemphi @stackengin C O N T A I N E R S 1 0 1 - H I S T O R Y • BSD Jails (2000) • Solaris Zones (2004)
  41. 41. @behemphi @stackengin C O N T A I N E R S 1 0 1 - H I S T O R Y • BSD Jails (2000) • Solaris Zones (2004) • OpenVZ (2005)
  42. 42. @behemphi @stackengin C O N T A I N E R S 1 0 1 - H I S T O R Y • BSD Jails (2000) • Solaris Zones (2004) • OpenVZ (2005) • LXC (2008)
  43. 43. @behemphi @stackengin C O N T A I N E R S 1 0 1 - H I S T O R Y • BSD Jails (2000) • Solaris Zones (2004) • OpenVZ (2005) • LXC (2008) • SILENCE
  44. 44. @behemphi @stackengin C O N T A I N E R S 1 0 1 - H I S T O R Y • BSD Jails (2000) • Solaris Zones (2004) • OpenVZ (2005) • LXC (2008) • SILENCE • Docker (2013)
  45. 45. @behemphi @stackengin “Docker isn’t winning because its a better container. It’s winning because it makes packaging applications in a container easy.”
  46. 46. @behemphi @stackengin e C U L T U R E
  47. 47. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S
  48. 48. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S - D E F I N I T I O N • Microservices Architecture is where each process has a single purpose.
  49. 49. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S - D E F I N I T I O N • Microservices Architecture is where each process has a single purpose. • This is SOA recycled - what’s old is new.
  50. 50. @behemphi @stackengin B E N E F I T S
  51. 51. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S - B E N E F I T S • “Code to Interface” moves to infrastructure
  52. 52. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S - B E N E F I T S • “Code to Interface” moves to infrastructure • Micro team’s service moves at its own pace
  53. 53. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S - B E N E F I T S • “Code to Interface” moves to infrastructure • Micro team’s service moves at its own pace • Coordination between people eased (Mythical Man Month)
  54. 54. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S - B E N E F I T S • “Code to Interface” moves to infrastructure • Micro team’s service moves at its own pace • Coordination between people eased (Mythical Man Month) • Feature velocity increases
  55. 55. @behemphi @stackengin B U S I N E S S P E R S P E C T I V E
  56. 56. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S - B U S I N E S S • Extraordinary increase in Dev Team velocity means true competitive advantage
  57. 57. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S - B U S I N E S S • Extraordinary increase in Dev Team velocity means true competitive advantage • Difficulty of adoption means advantage is lasting
  58. 58. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S - B U S I N E S S • Extraordinary increase in Dev Team velocity means true competitive advantage • Difficulty of adoption means advantage is lasting • Dip a toe in low risk and greenfield apps
  59. 59. @behemphi @stackengin M I C R O S E R V I C E S M E A N M I C R O T E A M S - B U S I N E S S • Extraordinary increase in Dev Team velocity means true competitive advantage • Difficulty of adoption means advantage is lasting • Dip a toe in low risk and greenfield apps • Use the “Strangler Pattern”
  60. 60. @behemphi @stackengin “Since the service boundary is now a concrete infrastructure object, SOA becomes much easier to reason about.”
  61. 61. @behemphi @stackengin e A U T O M A T I O N
  62. 62. @behemphi @stackengin B U I L D A N D T E S T G R I D S
  63. 63. @behemphi @stackengin B U I L D A N D T E S T G R I D S - D E F I N I T I O N • Consider the set of all app versions and environments
  64. 64. @behemphi @stackengin B U I L D A N D T E S T G R I D S - D E F I N I T I O N • Consider the set of all app versions and environments • Example: Ruby versions across Ubuntu 12.04, 14.04 and Centos 6.5, 7.3 and Windows.
  65. 65. @behemphi @stackengin B U I L D A N D T E S T G R I D S - D E F I N I T I O N • Consider the set of all app versions and environments • Example: Ruby versions across Ubuntu 12.04, 14.04 and Centos 6.5, 7.3 and Windows. • Very important to installed software and legacy application management.
  66. 66. @behemphi @stackengin B E N E F I T S
  67. 67. @behemphi @stackengin B U I L D A N D T E S T G R I D S - B E N E F I T S • Containers start in less than one second - faster builds
  68. 68. @behemphi @stackengin B U I L D A N D T E S T G R I D S - B E N E F I T S • Containers start in less than one second - faster builds • Can test more permutations of the system
  69. 69. @behemphi @stackengin B U I L D A N D T E S T G R I D S - B E N E F I T S • Containers start in less than one second - faster builds • Can test more permutations of the system • Increase build parallelism
  70. 70. @behemphi @stackengin B U I L D A N D T E S T G R I D S - B E N E F I T S • Containers start in less than one second - faster builds • Can test more permutations of the system • Increase build parallelism • Increases feature velocity and innovation
  71. 71. @behemphi @stackengin B U S I N E S S P E R S P E C T I V E
  72. 72. @behemphi @stackengin B U I L D A N D T E S T G R I D S - B U S I N E S S • Grid density lowers cost
  73. 73. @behemphi @stackengin B U I L D A N D T E S T G R I D S - B U S I N E S S • Grid density lowers cost • Increased innovation due to build time decrease
  74. 74. @behemphi @stackengin B U I L D A N D T E S T G R I D S - B U S I N E S S • Grid density lowers cost • Increased innovation due to build time decrease • Increased feature velocity (unicorn example)
  75. 75. @behemphi @stackengin B U I L D A N D T E S T G R I D S - B U S I N E S S • Grid density lowers cost • Increased innovation due to build time decrease • Increased feature velocity (unicorn example) • Decrease QA Bottleneck
  76. 76. @behemphi @stackengin “According to StackEngines State of Containers survey in Jan 2015, this is the most common adoption vector.”
  77. 77. @behemphi @stackengin C O N F I G U R A T I O N M A N A G E M E N T S I M P L I F I C A T I O N
  78. 78. @behemphi @stackengin C O N F I G U R A T I O N M A N A G E M E N T S I M P L I F I C A T I O N - D E F I N I T I O N • Automate the state of a single machine
  79. 79. @behemphi @stackengin C O N F I G U R A T I O N M A N A G E M E N T S I M P L I F I C A T I O N - D E F I N I T I O N • Automate the state of a single machine • This is not orchestration
  80. 80. @behemphi @stackengin B E N E F I T S
  81. 81. @behemphi @stackengin C O N F I G U R A T I O N M A N A G E M E N T S I M P L I F I C A T I O N - B E N E F I T S • Learning curve of typical CM tool is extremely steep
  82. 82. @behemphi @stackengin C O N F I G U R A T I O N M A N A G E M E N T S I M P L I F I C A T I O N - B E N E F I T S • Learning curve of typical CM tool is extremely steep • Docker obviates need for most host config (bakery)
  83. 83. @behemphi @stackengin C O N F I G U R A T I O N M A N A G E M E N T S I M P L I F I C A T I O N - B E N E F I T S • Learning curve of typical CM tool is extremely steep • Docker obviates need for most host config (bakery) • Containers are configured via a simple bash-like file.
  84. 84. @behemphi @stackengin B U S I N E S S P E R S P E C T I V E
  85. 85. @behemphi @stackengin C O N F I G U R A T I O N M A N A G E M E N T S I M P L I F I C A T I O N - B U S I N E S S • Removal of complexity lowers release and administrative risk
  86. 86. @behemphi @stackengin C O N F I G U R A T I O N M A N A G E M E N T S I M P L I F I C A T I O N - B U S I N E S S • Removal of complexity lowers release and administrative risk • Scaling issues of many CM tools are moot.
  87. 87. @behemphi @stackengin “The problem of application state becomes a more holistic concern about orchestration instead of configuration management.”
  88. 88. @behemphi @stackengin e M E A S U R E M E N T
  89. 89. @behemphi @stackengin P R O C E S S D E N S I T Y
  90. 90. @behemphi @stackengin P R O C E S S D E N S I T Y - D E F I N I T I O N • Density increases when the amount of idle compute on a host tends to zero
  91. 91. @behemphi @stackengin B E N E F I T S
  92. 92. @behemphi @stackengin P R O C E S S D E N S I T Y - B E N E F I T S • Reduce host consumption reduces cost
  93. 93. @behemphi @stackengin P R O C E S S D E N S I T Y - B E N E F I T S • Reduce host consumption reduces cost • Reduces power footprint in large physical setting
  94. 94. @behemphi @stackengin B U S I N E S S P E R S P E C T I V E
  95. 95. @behemphi @stackengin P R O C E S S D E N S I T Y - B U S I N E S S • Reduced hosts mean reduced cost (CapEx and OpEx)
  96. 96. @behemphi @stackengin P R O C E S S D E N S I T Y - B U S I N E S S • Reduced hosts mean reduced cost (CapEx and OpEx) • Does not address revenue growth
  97. 97. @behemphi @stackengin P R O C E S S D E N S I T Y - B U S I N E S S • Reduced hosts mean reduced cost (CapEx and OpEx) • Does not address revenue growth • Probably not a compelling reason, but easy to understand
  98. 98. @behemphi @stackengin – S T A C K E N G I N E “Ants, not Cattle.”
  99. 99. @behemphi @stackengin e S H A R I N G
  100. 100. @behemphi @stackengin D I S P O S A B L E D E V E L O P M E N T E N V I R O N M E N T S
  101. 101. @behemphi @stackengin D I S P O S A B L E D E V E L O P M E N T E N V I R O N M E N T S - D E F I N I T I O N • A fully functional development environment that can be brought up in minutes or seconds
  102. 102. @behemphi @stackengin B E N E F I T S
  103. 103. @behemphi @stackengin D I S P O S A B L E D E V E L O P M E N T E N V I R O N M E N T S - B E N E F I T S • New team members are productive their first day
  104. 104. @behemphi @stackengin D I S P O S A B L E D E V E L O P M E N T E N V I R O N M E N T S - B E N E F I T S • New team members are productive their first day • Innovation - try new things quickly
  105. 105. @behemphi @stackengin D I S P O S A B L E D E V E L O P M E N T E N V I R O N M E N T S - B E N E F I T S • New team members are productive their first day • Innovation - try new things quickly • Developers share improvements easily via familiar tools
  106. 106. @behemphi @stackengin B U S I N E S S P E R S P E C T I V E
  107. 107. @behemphi @stackengin D I S P O S A B L E D E V E L O P M E N T E N V I R O N M E N T S - B U S I N E S S • Increases feature velocity
  108. 108. @behemphi @stackengin D I S P O S A B L E D E V E L O P M E N T E N V I R O N M E N T S - B U S I N E S S • Increases feature velocity • Increases innovation
  109. 109. @behemphi @stackengin D I S P O S A B L E D E V E L O P M E N T E N V I R O N M E N T S - B U S I N E S S • Increases feature velocity • Increases innovation • Local optima, but environment standardization helps in other areas.
  110. 110. @behemphi @stackengin “Disposable development environments are likely the single biggest improvement you can make in your SDLC.”
  111. 111. @behemphi @stackengin e F O O D F O R T H O U G H T
  112. 112. @behemphi @stackengin F O O D F O R T H O U G H T • Immutable infrastructure
  113. 113. @behemphi @stackengin F O O D F O R T H O U G H T • Immutable infrastructure • A/B Deployments
  114. 114. @behemphi @stackengin F O O D F O R T H O U G H T • Immutable infrastructure • A/B Deployments • A/B Testing for Marketing
  115. 115. @behemphi @stackengin e C L O S I N G T H O U G H T S H O W D O I D E T E R M I N E I F D O C K E R I S W O R T H I N V E S T I G A T I N G ?
  116. 116. @behemphi @stackengin B U S I N E S S
  117. 117. @behemphi @stackengin B U S I N E S S • Developer adoption of Docker is only valuable as a first step. There is not enough benefit from it alone to justify the effort, it must inform system architecture and production operations over time.
  118. 118. @behemphi @stackengin B U S I N E S S • Developer adoption of Docker is only valuable as a first step. There is not enough benefit from it alone to justify the effort, it must inform system architecture and production operations over time. • Docker’s system architecture ramifications have the potential to provide a significant and lasting competitive advantage
  119. 119. @behemphi @stackengin B U S I N E S S • Developer adoption of Docker is only valuable as a first step. There is not enough benefit from it alone to justify the effort, it must inform system architecture and production operations over time. • Docker’s system architecture ramifications have the potential to provide a significant and lasting competitive advantage • Unlike most ops driven improvements derived from applying DevOps thinking, this must be developer and QA driven since the greatest benefit is derived from system architecture
  120. 120. @behemphi @stackengin B U S I N E S S • Developer adoption of Docker is only valuable as a first step. There is not enough benefit from it alone to justify the effort, it must inform system architecture and production operations over time. • Docker’s system architecture ramifications have the potential to provide a significant and lasting competitive advantage • Unlike most ops driven improvements derived from applying DevOps thinking, this must be developer and QA driven since the greatest benefit is derived from system architecture • Horses are starting to become unicorns. Evolve or die.
  121. 121. @behemphi @stackengin D E V O P S
  122. 122. @behemphi @stackengin D E V O P S • Culture - DevOps thought leaders must determine how a Docker adoption path looks in their organization
  123. 123. @behemphi @stackengin D E V O P S • 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.
  124. 124. @behemphi @stackengin D E V O P S • 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.
  125. 125. @behemphi @stackengin D E V O P S • 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.
  126. 126. @behemphi @stackengin D E V O P S • 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.
  127. 127. @behemphi @stackengin “Should you be considering Containers as a means to provide your business with an advantage?”
  128. 128. @behemphi @stackengin B E S T E V E R D E V O P S T O O L : A U D I B L E . C O M • The Lean Startup - Reis (tech) • The Goal - Goldratt (Theory of Constraints) • It’s not Luck - Goldratt (Theory of Constraints) • Good to Great - Collins (Culture) • The No Asshole Rule - Sutton (Culture) • The Phoenix Project - Kim (*) (tech) • Continuous Deliver - Humble (*) (hardcore tech) • The Lean Enterprise - Humble (*) (tech)

×