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.

DevOps in a Cloud Native World

1,752 views

Published on

You just got “done” with the transformation of your organization (or parts of it) to leverage more DevOps practices, and now the next hot thing is taking over the industry: containers, Cloud Native, SRE, GitOps, Kubernetes, etc. What’s a DevOps Manager to do? Throw away the last few years and rebrand the team as Cloud Native SREs?

Technological advancement not only provides advancement in “what” a modern technology architecture looks like, it can also provide advancement in the processes and the day to day of an organization’s technology teams. We’ve seen this before in the move from mainframe to client-server, and client-server to Cloud.

In this presentation I’ll talk about the relationship of DevOps to Cloud Native technologies, and help make sense of all the jargon - containers, microservices, orchestration (and Kubernetes), SRE, GitOps, etc. I’ll also talk about how some processes & practices in the world of DevOps change when leveraging these technologies. Attendees will leave with a base understanding of what a DevOps operating model looks like when leveraging modern Cloud Native technologies.

Published in: Technology

DevOps in a Cloud Native World

  1. 1. @mfdii Michael Ducy, Sysdig Director of Community & Evangelism DevOps and Cloud Native
  2. 2. @mfdii Clarifying DevOps What is Cloud Native The Intersection of DevOps and Cloud Native Roles in the Cloud Native World Agenda
  3. 3. @mfdii Origins of DevOps 2008 - Andrew Clay Shafer proposes “Agile Infrastructure” Birds of a Feather at the Agile Conference held in Toronto. One person shows up, Patrick Debois.
  4. 4. @mfdii Origins of DevOps 2009 - John Allspaw and Paul Hammond give a talk at Velocity titled "10+ Deploys Per Day: Dev and Ops Cooperation at Flickr" - https://www.youtube.com/watch?v=LdOe18KhtT4 2009 - The first DevOpsDays is held in Gent, Belgium, hosted by Patrick Debois and many others.
  5. 5. @mfdii Origins of DevOps 2010 - John Willis and Damon Edwards coin CAMS. Later this evolves into CALMS: - Culture - Automation - Lean - Measurement - Sharing
  6. 6. @mfdii Culture - People over process. - Freedom to fail - And learn from failure - Ideas from anyone, not just certain individuals
  7. 7. @mfdii Automation Automation of your entire software delivery lifecycle. Often where automation principles apply: - Infrastructure as Code - Continuous Integration - Continuous Delivery
  8. 8. @mfdii Lean - Manufacturing process - Toyota Production System - Focuses on removing waste from processes
  9. 9. @mfdii Measurement Measure: - Performance Metrics - Process Metrics - People Metrics Great example is DORA: - DevOps Research Associates authors of “The State of DevOps Report” - https://puppet.com/resources/whitepaper/state-of-devops-report
  10. 10. @mfdii Sharing - Intra-organization - Inter-organization - Sharing best practices and learnings to improve the overall industry
  11. 11. @mfdii Defining DevOps “DevOps is a cultural and professional movement, focused on how we build and operate high velocity organizations, born from the experiences of its practitioners.” - Adam Jacob, CTO, Chef
  12. 12. @mfdii What is Cloud Native? Cloud native computing uses an open source software stack to be: 1. Containerized. Each part (applications, processes, etc) is packaged in its own container. This facilitates reproducibility, transparency, and resource isolation. 2. Dynamically orchestrated. Containers are actively scheduled and managed to optimize resource utilization. 3. Microservices oriented. Applications are segmented into microservices. This significantly increases the overall agility and maintainability of applications. https://www.cncf.io/about/faq/
  13. 13. @mfdii What is Cloud Native? “...Cloud Native is structuring teams, culture and technology to utilize automation and architectures to manage complexity and unlock velocity.” - Joe Beda, Heptio https://blog.heptio.com/cloud-native-part-1-definition-716ed30e9193
  14. 14. @mfdii What is Cloud Native? “Cloud native is an approach to building and running applications that fully exploit the advantages of the cloud computing model.” https://pivotal.io/cloud-native
  15. 15. @mfdii What is Cloud Native? https://pivotal.io/cloud-native
  16. 16. @mfdii Confused?
  17. 17. @mfdii What is Cloud Native? Cloud native is an approach to building and running applications that fully exploit the advantages of the cloud computing model. In particular, Cloud Native takes advantage of technological advances to build and deploy applications that are: 1. Containerized. Each part (applications, processes, etc) is packaged in its own container. This facilitates reproducibility, transparency, and resource isolation. 2. Dynamically orchestrated. Containers are actively scheduled and managed to optimize resource utilization. 3. Microservices oriented. Applications are segmented into microservices. This significantly increases the overall agility and maintainability of applications.
  18. 18. @mfdii DevOps + Cloud Native
  19. 19. @mfdii DevOps + Cloud Native DevOps - A Cultural and Professional movement focused on: Culture, Automation, Lean, Measurement, & Sharing Cloud Native - A technological paradigm focused on a repeatable pattern of building applications in the cloud leveraging Containers, Automation, and Microservices.
  20. 20. @mfdii DevOps + Cloud Native DevOps C A L M S Cloud Native Blameless, Inclusion & Diversity, Self-Care, Fail Fast Open Source, Public Post-mortems, Public Presentations
  21. 21. @mfdii Cloud Native Improves DevOps Automation Measurement Lean
  22. 22. @mfdii Cloud Native Improves DevOps Automation - Automation as a first principle - Automation principles built into the Platform - Tenets of scaling built into the Platform
  23. 23. @mfdii Cloud Native Improves DevOps Automation - Makes Infrastructure as Code easier - Immutability of Containers - Further abstracted from the Infrastructure - Less brittle than traditional Config Management - GitOps for example
  24. 24. @mfdii Cloud Native Improves DevOps Automation - Orchestration incorporated from the start - Kubernetes - Abstracts operations principles - Abstracts scaling concerns - Robust resource constraints
  25. 25. @mfdii Cloud Native Improves DevOps Automation - Automatic circuit breakers - Service Mesh - Proxy for service requests, service discovery, TLS termination, service metrics, etc - Can detect abnormal conditions and respond
  26. 26. @mfdii Cloud Native Improves DevOps Measurement - Common instrumentation point for Developers - Prometheus - Allows developers to easily instrument their code - Instrumentation == Visibility
  27. 27. @mfdii Cloud Native Improves DevOps Measurement - Distributed Tracing - Jaeger, OpenTracing - Correlation of events through the distributed stack - Higher visibility into: - Bottlenecks - Sources of Failure - Potential points to optimize
  28. 28. @mfdii Cloud Native Improves DevOps Measurement - Service Mesh provides common instrumentation point for service performance - Success, Retries, Error Rates, etc
  29. 29. @mfdii Cloud Native Improves DevOps Lean - Side effect of Cloud Native - Processes are improved to increase velocity and agility - Points of friction are removed - Best practices are automated into the Platform
  30. 30. @mfdii Back to “10 Deploys a Day…” Technical 1. Automated infrastructure 2. Shared version control 3. One step build and deploy a. Small frequent changes 4. Feature flags 5. Shared metrics 6. IRC and IM Robots (ChatOps) Cultural 1. Respect 2. Trust 3. Healthy attitude towards failure 4. Avoiding blame https://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr/76
  31. 31. @mfdii Back to “10 Deploys a Day…” Technical 1. Automated infrastructure 2. Shared version control 3. One step build and deploy a. Small frequent changes 4. Feature flags 5. Shared metrics 6. IRC and IM Robots (ChatOps) Cultural 1. Respect 2. Trust 3. Healthy attitude towards failure 4. Avoiding blame https://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr/76
  32. 32. @mfdii What about my DevOps Team? - “DevOps Team” is a misnomer. - Do you mean, “My cultural and professional movement Team?” - What does the “DevOps Team” do for the Culture, Lean, Measurement, and Sharing aspects of DevOps?
  33. 33. @mfdii What about my DevOps Team? - Or, do you mean “my automation team”? - DevOps Team == Developer Services Team - Continuous Delivery pipeline infrastructure - Automation framework infrastructure (Chef, Puppet, Anisble, etc) - Artifact repositories
  34. 34. @mfdii What about SREs? - Site Reliability Engineering (SRE) - “...a discipline that incorporates aspects of software engineering and applies that to IT operations problems.” -Wikipedia - SRE Implements DevOps - What's the Difference Between DevOps and SRE? - Liz Fong-Jones (@lizthegrey) and Seth Vargo (@sethvargo) - https://www.youtube.com/watch?v=uTEL8Ff1Zvk
  35. 35. @mfdii What about my DevOps Transformation? - In the end: - DevOps is the entire organization’s job, not one team - Cloud Native is a culmination of technological advancements - Cloud Native provides real benefits of agility and velocity
  36. 36. @mfdii Thank You - What’s the Difference Between DevOps and SRE - https://www.youtube.com/watch?v=uTEL8Ff1Zvk - 10 Deploys Per Day: Dev and Ops Cooperation at Flickr - https://www.youtube.com/watch?v=LdOe18KhtT4 - What DevOps Means to Me - https://blog.chef.io/2010/07/16/what-devops-means-to-me/ - What's the Difference Between DevOps and SRE? - Liz Fong-Jones (@lizthegrey) and Seth Vargo (@sethvargo) - https://www.youtube.com/watch?v=uTEL8Ff1Zvk

×