SlideShare a Scribd company logo
GENERALISTS AND SPECIALISTS:
DIVERGENT PATTERNS FOR DEVOPS
GORDON HAFF
Technology Evangelist, Red Hat
@ghaff
THE GENERALIST TEAM
IN THE BEGINNING
Source: Cisco
Source: http://www.agilebuddha.com/agile/demystifying-devops/
WIDENING
AGILE
PRINCIPLES
TO CROSS-
FUNCTIONAL
TEAM
Source: Michael Coté, flickr/CC
https://www.flickr.com/photos/cote/5559360372
“TWO PIZZA” TEAMS
● Autonomous
● Cross-functional
● Responsible for a well-defined
function/service
● Developing and running
CONWAY’S LAW
Any organization that designs a
system (defined broadly) will
produce a design whose structure
is a copy of the organization's
communication structure.
ONE OPPOSING VIEW
"I want to change my job because there is this horrible concept of
"pager duty" or "oncall". Where the developer has to be ready for
any issues that may occur. Are most software jobs like this? Is this
a norm? Where can I find software development positions without
such concepts?"
Anonymous Quora user
WE ALSO TALK
ABOUT CULTURE A LOT
● Empathy
● Trust
● Learning
● Cooperation
● Responsibility
SEPARATING CONCERNS
NO OPS? (OR IS IT EVOLVED DEVOPS?)
"We have built tooling that removes many of the
operations tasks completely from the developer,
and which makes the remaining tasks quick and
self service. "
Adrian Cockroft, Netflix, 2012
You do not, in fact, want to
communicate with a bank
teller more efficiently
Source: Flickr/cc Ning Ham
https://www.flickr.com/photos/ningham/525770546
12
THE PROCESS
Still involves people and communication
• The most effective processes have
continuous communication - think scrums and
kanban
• Allows for collaboration that can identify
failures before they happen
• Allows for feedback to continuously improve
and cultivate growth
• Provides transparency
SEPARATING CONCERNS:
WHAT DEVELOPERS NEED
FOCUS ON IMPROVED
APP ARCHITECTURES &
DEVELOPER WORKFLOWS
● Cloud-native app development
● Collaboration
● CI/CD
● Issue tracking
● Source code control
● Code review
● IDE
● xPaaS
Source: Esti Alvarez cc license
15
MICROSERVICES
16
MICROSERVICES ARE NOT SOA. REALLY!
Source: PWC
Lighter-weight communications
protocols
Improved understanding of
functional separation
More open source and
vendor-neutral philosophies
Scale-out infrastructure
standardization and automation
17
SIGNS YOU MIGHT NEED
MICROSERVICES
Source: Daniel Pratts CC/flickr https://flic.kr/p/7RE6yc
● Having trouble coordinating function teams like
DBAs and UI engineers
● Brittle apps. Minor changes cause major
breakage
● Your CICD process is bogged down by big
deployments
● Different teams keep reinventing the wheel (in
gratuitously different ways)
● Hard to experiment
18
DESIRABLE ENTERPRISE CI/CD WORKFLOW
myRepo
Project
Repo
CI
Commit Push
Pass/Fail
Local Test
Build
Repo
CD
Release
Repo
Monitor
Build Test
Review/
Appr
Deliver Deploy
3rd
Party
19
CONTINUOUS BORING
DEPLOYMENTS
● Software (trunk) is always deployable
● Everyone is checking into trunk daily (at
least), not feature branches
● If the build breaks it is fixed in 10 minutes (all
hands on deck)
● Deployment is a low-risk push button affair
● Blue/Green and Canary deployments
SEPARATING CONCERNS:
WHAT OPS NEEDS
FOCUS ON PROVIDING CORE SERVICES
AND GETTING OUT OF THE WAY
● Deploy a modern scalable container platform
● Enable automated developer workflows
● Mitigate risk and automate security
COMPREHENSIVE CLOUD-NATIVE INFRASTRUCTURE
OPERATED AT SCALE ACROSS HYBRID CLOUDS
● Different aspects of scale:
○ Large scale workloads
○ Diverse workloads (batch and services)
○ Complex resource management (QoS,
latency sensitivity, etc.)
● Focus on lightweight containerized instances
● Orchestration and resource management
24
THE RIGHT WORKFLOW
Repeatably automate for consistency
● Goal is repeatable automation
● Configuration as code
● Monitoring and alerting strategy
● Initially pipelines may be very
different for traditional vs.
cloud-native
● It’s a journey that evolves
25
LOGGING WITH EFK STACK
● ElasticSearch, Fluentd, Kibana
● Based on log aggregation
● Event system - all events container,
system, kubernetes, captured by
EFK and issues or errors
● Good for ad hoc analytics
● Good for post mortem forensics
because of extensive log information
26
MONITOR AND MEASURE AGAINST METRICS
Metrics tools tend to make more use of APIs than logs.
You need to figure out your organizational needs.
Hawkular is ideal for large scale
central IT teams with lots of apps
Prometheus is ideal for WebScale
DevSecOps
MANA
Reuse
AutomationMicroservices Immutability
Pervasive access
Speed
Rapid tech churn
Flexible deploys
Containers
Software-defined
MANAGED RISK
Dev Ops
INTEGRATE SECURITY
"Our goal as information security architects must be to
automatically incorporate security controls without manual
configuration throughout this cycle in a way that is as transparent
as possible to DevOps teams and doesn't impede DevOps agility,
but fulfills our legal and regulatory compliance requirements as
well as manages risk. "
DevSecOps: How to Seamlessly Integrate Security Into DevOps
Gartner. DevSecOps: How to Seamlessly Integrate Security Into DevOps. September 2016. G00315283
MAKING CONTAINERS SECURE AND TRUSTED
ISOLATION
OF HOSTS
ARE SOURCES
TRUSTED?
WHAT’S INSIDE
CONTAINERS
TRUST IS
TEMPORAL
Host OS + SELinux
maintained by trusted
kernel engineers and
frequently updated.
A validated supply
chain helps ensure use
of tested and patched
software.
Red Hat + Black Duck =
secure, trusted model
for validating
container contents.
New vulnerabilities are
identified daily and
containers become
stale over time.
TRACK AND
VALIDATE
THIRD-PARTY
TOOLS
AND
COMPONENTS
GETTING STARTED
QUESTIONS TO ASK
● What’s the business problem?
● Where am I today?
● How big are my teams?
● What skills do I have (or can hire)?
● On-premise and/or public clouds?
THANK YOU
plus.google.com/+RedHat
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHatNews

More Related Content

More from Gordon Haff

Optimizing the Ops in DevOps
Optimizing the Ops in DevOpsOptimizing the Ops in DevOps
Optimizing the Ops in DevOps
Gordon Haff
 

More from Gordon Haff (20)

Cloud-Native: A New Ecosystem for Putting Containers into Production
Cloud-Native:  A New Ecosystem for Putting Containers into ProductionCloud-Native:  A New Ecosystem for Putting Containers into Production
Cloud-Native: A New Ecosystem for Putting Containers into Production
 
Containers: Don't Skeu Them Up
Containers: Don't Skeu Them UpContainers: Don't Skeu Them Up
Containers: Don't Skeu Them Up
 
Cloud-Native: A New Ecosystem for Putting Containers into Production
Cloud-Native: A New Ecosystem for Putting Containers into ProductionCloud-Native: A New Ecosystem for Putting Containers into Production
Cloud-Native: A New Ecosystem for Putting Containers into Production
 
DevSecOps: The Open Source Way for CloudExpo 2018
DevSecOps: The Open Source Way for CloudExpo 2018DevSecOps: The Open Source Way for CloudExpo 2018
DevSecOps: The Open Source Way for CloudExpo 2018
 
AI: The Good, the Bad, and the Practical for CloudExpo 2018
AI: The Good, the Bad, and the Practical for CloudExpo 2018AI: The Good, the Bad, and the Practical for CloudExpo 2018
AI: The Good, the Bad, and the Practical for CloudExpo 2018
 
DevSecOps: The Open Source Way
DevSecOps: The Open Source WayDevSecOps: The Open Source Way
DevSecOps: The Open Source Way
 
Ten layers of container security for CloudCamp Nov 2017
Ten layers of container security  for CloudCamp Nov 2017Ten layers of container security  for CloudCamp Nov 2017
Ten layers of container security for CloudCamp Nov 2017
 
That's not a metric! Data for cloud-native success
That's not a metric! Data for cloud-native successThat's not a metric! Data for cloud-native success
That's not a metric! Data for cloud-native success
 
The Interesting IoT: Digitizing Operations
The Interesting IoT: Digitizing OperationsThe Interesting IoT: Digitizing Operations
The Interesting IoT: Digitizing Operations
 
A short history of packaging (Monkigras 2017)
A short history of packaging (Monkigras 2017)A short history of packaging (Monkigras 2017)
A short history of packaging (Monkigras 2017)
 
Optimizing the Ops in DevOps
Optimizing the Ops in DevOpsOptimizing the Ops in DevOps
Optimizing the Ops in DevOps
 
Containers: Don't Skeu Them Up. Use Microservices Instead.
Containers: Don't Skeu Them Up. Use Microservices Instead.Containers: Don't Skeu Them Up. Use Microservices Instead.
Containers: Don't Skeu Them Up. Use Microservices Instead.
 
Fail Fast, Fail Often
Fail Fast, Fail OftenFail Fast, Fail Often
Fail Fast, Fail Often
 
The New Platform: You Ain't Seen Nothing Yet
The New Platform: You Ain't Seen Nothing YetThe New Platform: You Ain't Seen Nothing Yet
The New Platform: You Ain't Seen Nothing Yet
 
The New Open Distributed Application Architecture
The New Open Distributed Application ArchitectureThe New Open Distributed Application Architecture
The New Open Distributed Application Architecture
 
DevOps: Lessons from Manufacturing and Open Source
DevOps: Lessons from Manufacturing and Open SourceDevOps: Lessons from Manufacturing and Open Source
DevOps: Lessons from Manufacturing and Open Source
 
The New Distributed Application Infrastructure
The New Distributed Application InfrastructureThe New Distributed Application Infrastructure
The New Distributed Application Infrastructure
 
Manufacturing Plus Open Source Equals DevOps
Manufacturing Plus Open Source Equals DevOpsManufacturing Plus Open Source Equals DevOps
Manufacturing Plus Open Source Equals DevOps
 
Containers: Don't Skeu Them Up (LinuxCon Dublin)
Containers: Don't Skeu Them Up (LinuxCon Dublin)Containers: Don't Skeu Them Up (LinuxCon Dublin)
Containers: Don't Skeu Them Up (LinuxCon Dublin)
 
How open source is driving DevOps innovation: CloudOpen NA 2015
How open source is driving DevOps innovation: CloudOpen NA 2015How open source is driving DevOps innovation: CloudOpen NA 2015
How open source is driving DevOps innovation: CloudOpen NA 2015
 

Recently uploaded

Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
mbmh111980
 

Recently uploaded (20)

Using IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New ZealandUsing IESVE for Room Loads Analysis - Australia & New Zealand
Using IESVE for Room Loads Analysis - Australia & New Zealand
 
INGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by DesignINGKA DIGITAL: Linked Metadata by Design
INGKA DIGITAL: Linked Metadata by Design
 
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdfMastering Windows 7 A Comprehensive Guide for Power Users .pdf
Mastering Windows 7 A Comprehensive Guide for Power Users .pdf
 
Into the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdfInto the Box 2024 - Keynote Day 2 Slides.pdf
Into the Box 2024 - Keynote Day 2 Slides.pdf
 
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
A Python-based approach to data loading in TM1 - Using Airflow as an ETL for TM1
 
Benefits of Employee Monitoring Software
Benefits of  Employee Monitoring SoftwareBenefits of  Employee Monitoring Software
Benefits of Employee Monitoring Software
 
Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024Top Mobile App Development Companies 2024
Top Mobile App Development Companies 2024
 
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAGAI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
AI/ML Infra Meetup | Reducing Prefill for LLM Serving in RAG
 
Studiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting softwareStudiovity film pre-production and screenwriting software
Studiovity film pre-production and screenwriting software
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
KLARNA -  Language Models and Knowledge Graphs: A Systems ApproachKLARNA -  Language Models and Knowledge Graphs: A Systems Approach
KLARNA - Language Models and Knowledge Graphs: A Systems Approach
 
top nidhi software solution freedownload
top nidhi software solution freedownloadtop nidhi software solution freedownload
top nidhi software solution freedownload
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024Secure Software Ecosystem Teqnation 2024
Secure Software Ecosystem Teqnation 2024
 
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdfImplementing KPIs and Right Metrics for Agile Delivery Teams.pdf
Implementing KPIs and Right Metrics for Agile Delivery Teams.pdf
 
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
Paketo Buildpacks : la meilleure façon de construire des images OCI? DevopsDa...
 
Advanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should KnowAdvanced Flow Concepts Every Developer Should Know
Advanced Flow Concepts Every Developer Should Know
 
Agnieszka Andrzejewska - BIM School Course in Kraków
Agnieszka Andrzejewska - BIM School Course in KrakówAgnieszka Andrzejewska - BIM School Course in Kraków
Agnieszka Andrzejewska - BIM School Course in Kraków
 
How To Build a Successful SaaS Design.pdf
How To Build a Successful SaaS Design.pdfHow To Build a Successful SaaS Design.pdf
How To Build a Successful SaaS Design.pdf
 
Designing for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web ServicesDesigning for Privacy in Amazon Web Services
Designing for Privacy in Amazon Web Services
 

Generalists and Specialists: Divergent Patterns for DevOps

  • 1. GENERALISTS AND SPECIALISTS: DIVERGENT PATTERNS FOR DEVOPS GORDON HAFF Technology Evangelist, Red Hat @ghaff
  • 5. Source: Michael Coté, flickr/CC https://www.flickr.com/photos/cote/5559360372 “TWO PIZZA” TEAMS ● Autonomous ● Cross-functional ● Responsible for a well-defined function/service ● Developing and running
  • 6. CONWAY’S LAW Any organization that designs a system (defined broadly) will produce a design whose structure is a copy of the organization's communication structure.
  • 7. ONE OPPOSING VIEW "I want to change my job because there is this horrible concept of "pager duty" or "oncall". Where the developer has to be ready for any issues that may occur. Are most software jobs like this? Is this a norm? Where can I find software development positions without such concepts?" Anonymous Quora user
  • 8. WE ALSO TALK ABOUT CULTURE A LOT ● Empathy ● Trust ● Learning ● Cooperation ● Responsibility
  • 10. NO OPS? (OR IS IT EVOLVED DEVOPS?) "We have built tooling that removes many of the operations tasks completely from the developer, and which makes the remaining tasks quick and self service. " Adrian Cockroft, Netflix, 2012
  • 11. You do not, in fact, want to communicate with a bank teller more efficiently Source: Flickr/cc Ning Ham https://www.flickr.com/photos/ningham/525770546
  • 12. 12 THE PROCESS Still involves people and communication • The most effective processes have continuous communication - think scrums and kanban • Allows for collaboration that can identify failures before they happen • Allows for feedback to continuously improve and cultivate growth • Provides transparency
  • 14. FOCUS ON IMPROVED APP ARCHITECTURES & DEVELOPER WORKFLOWS ● Cloud-native app development ● Collaboration ● CI/CD ● Issue tracking ● Source code control ● Code review ● IDE ● xPaaS Source: Esti Alvarez cc license
  • 16. 16 MICROSERVICES ARE NOT SOA. REALLY! Source: PWC Lighter-weight communications protocols Improved understanding of functional separation More open source and vendor-neutral philosophies Scale-out infrastructure standardization and automation
  • 17. 17 SIGNS YOU MIGHT NEED MICROSERVICES Source: Daniel Pratts CC/flickr https://flic.kr/p/7RE6yc ● Having trouble coordinating function teams like DBAs and UI engineers ● Brittle apps. Minor changes cause major breakage ● Your CICD process is bogged down by big deployments ● Different teams keep reinventing the wheel (in gratuitously different ways) ● Hard to experiment
  • 18. 18 DESIRABLE ENTERPRISE CI/CD WORKFLOW myRepo Project Repo CI Commit Push Pass/Fail Local Test Build Repo CD Release Repo Monitor Build Test Review/ Appr Deliver Deploy 3rd Party
  • 19. 19 CONTINUOUS BORING DEPLOYMENTS ● Software (trunk) is always deployable ● Everyone is checking into trunk daily (at least), not feature branches ● If the build breaks it is fixed in 10 minutes (all hands on deck) ● Deployment is a low-risk push button affair ● Blue/Green and Canary deployments
  • 21. FOCUS ON PROVIDING CORE SERVICES AND GETTING OUT OF THE WAY ● Deploy a modern scalable container platform ● Enable automated developer workflows ● Mitigate risk and automate security
  • 23. OPERATED AT SCALE ACROSS HYBRID CLOUDS ● Different aspects of scale: ○ Large scale workloads ○ Diverse workloads (batch and services) ○ Complex resource management (QoS, latency sensitivity, etc.) ● Focus on lightweight containerized instances ● Orchestration and resource management
  • 24. 24 THE RIGHT WORKFLOW Repeatably automate for consistency ● Goal is repeatable automation ● Configuration as code ● Monitoring and alerting strategy ● Initially pipelines may be very different for traditional vs. cloud-native ● It’s a journey that evolves
  • 25. 25 LOGGING WITH EFK STACK ● ElasticSearch, Fluentd, Kibana ● Based on log aggregation ● Event system - all events container, system, kubernetes, captured by EFK and issues or errors ● Good for ad hoc analytics ● Good for post mortem forensics because of extensive log information
  • 26. 26 MONITOR AND MEASURE AGAINST METRICS Metrics tools tend to make more use of APIs than logs. You need to figure out your organizational needs. Hawkular is ideal for large scale central IT teams with lots of apps Prometheus is ideal for WebScale DevSecOps
  • 27. MANA Reuse AutomationMicroservices Immutability Pervasive access Speed Rapid tech churn Flexible deploys Containers Software-defined MANAGED RISK Dev Ops
  • 28. INTEGRATE SECURITY "Our goal as information security architects must be to automatically incorporate security controls without manual configuration throughout this cycle in a way that is as transparent as possible to DevOps teams and doesn't impede DevOps agility, but fulfills our legal and regulatory compliance requirements as well as manages risk. " DevSecOps: How to Seamlessly Integrate Security Into DevOps Gartner. DevSecOps: How to Seamlessly Integrate Security Into DevOps. September 2016. G00315283
  • 29. MAKING CONTAINERS SECURE AND TRUSTED ISOLATION OF HOSTS ARE SOURCES TRUSTED? WHAT’S INSIDE CONTAINERS TRUST IS TEMPORAL Host OS + SELinux maintained by trusted kernel engineers and frequently updated. A validated supply chain helps ensure use of tested and patched software. Red Hat + Black Duck = secure, trusted model for validating container contents. New vulnerabilities are identified daily and containers become stale over time.
  • 32. QUESTIONS TO ASK ● What’s the business problem? ● Where am I today? ● How big are my teams? ● What skills do I have (or can hire)? ● On-premise and/or public clouds?