Submit Search
Upload
DevOpsing Greenfield - AgileDC2018 - Mills - v1.4 2018.10.15
•
0 likes
•
218 views
R
Rich Mills
Follow
Applying DevOps to a new greed-field project
Read less
Read more
Technology
Report
Share
Report
Share
1 of 40
Recommended
Agile DevOps Transformation At HUD (AgileDC 2017)
Agile DevOps Transformation At HUD (AgileDC 2017)
Marco Corona
DevOps introduction
DevOps introduction
Christian F. Nissen
CI/CD Best Practices for Your DevOps Journey
CI/CD Best Practices for Your DevOps Journey
DevOps.com
Building DevOps culture from bottom up
Building DevOps culture from bottom up
SQUADEX
The Road to DevOps V3
The Road to DevOps V3
Ahmed Misbah
New DevOps for the DBA
New DevOps for the DBA
Kellyn Pot'Vin-Gorman
DevOps and the Importance of Single Source Code Repos
DevOps and the Importance of Single Source Code Repos
Perforce
DevOps Workshop, DevOps for DoD Professionals
DevOps Workshop, DevOps for DoD Professionals
Tonex
Recommended
Agile DevOps Transformation At HUD (AgileDC 2017)
Agile DevOps Transformation At HUD (AgileDC 2017)
Marco Corona
DevOps introduction
DevOps introduction
Christian F. Nissen
CI/CD Best Practices for Your DevOps Journey
CI/CD Best Practices for Your DevOps Journey
DevOps.com
Building DevOps culture from bottom up
Building DevOps culture from bottom up
SQUADEX
The Road to DevOps V3
The Road to DevOps V3
Ahmed Misbah
New DevOps for the DBA
New DevOps for the DBA
Kellyn Pot'Vin-Gorman
DevOps and the Importance of Single Source Code Repos
DevOps and the Importance of Single Source Code Repos
Perforce
DevOps Workshop, DevOps for DoD Professionals
DevOps Workshop, DevOps for DoD Professionals
Tonex
Application Deployment at UC Riverside
Application Deployment at UC Riverside
Michael Kennedy
ScrumOps - Featuring Dave West & Jayne Groll
ScrumOps - Featuring Dave West & Jayne Groll
Taylor Puleri
Why to docker
Why to docker
Karthik Gaekwad
Devops Intro - Devops for Unicorns & DevOps for Horses
Devops Intro - Devops for Unicorns & DevOps for Horses
BoonNam Goh
MERGE 2016 Opening Remarks
MERGE 2016 Opening Remarks
Perforce
Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?
Chandler Anderson
Introduction to DevOps - Rackspace tech night
Introduction to DevOps - Rackspace tech night
Marc Cluet
Devops
Devops
lakmal123
DevOps: A Culture Transformation, More than Technology
DevOps: A Culture Transformation, More than Technology
CA Technologies
Patterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps Transformation
Chef
DevOps 101
DevOps 101
Ernest Mueller
CI/CD (DevOps) 101
CI/CD (DevOps) 101
Hazzim Anaya
SUCCEEDING WITH DEVOPS DEVOPS
SUCCEEDING WITH DEVOPS DEVOPS
DevOps Agile Skills Association-DASA
Devops ppt
Devops ppt
Sulekha IT Training
Application Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery World
James Wickett
Devops skills you got what it takes ?
Devops skills you got what it takes ?
Initcron Systems Private Limited
DevOps introduction
DevOps introduction
Mettje Heegstra
Enterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up Budget
DevOps.com
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the Enterprise
CollabNet
5 Keys to Building a Successful DevOps Culture
5 Keys to Building a Successful DevOps Culture
Mandi Walls
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
Edureka!
SD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
SD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
Brian Dawson
More Related Content
What's hot
Application Deployment at UC Riverside
Application Deployment at UC Riverside
Michael Kennedy
ScrumOps - Featuring Dave West & Jayne Groll
ScrumOps - Featuring Dave West & Jayne Groll
Taylor Puleri
Why to docker
Why to docker
Karthik Gaekwad
Devops Intro - Devops for Unicorns & DevOps for Horses
Devops Intro - Devops for Unicorns & DevOps for Horses
BoonNam Goh
MERGE 2016 Opening Remarks
MERGE 2016 Opening Remarks
Perforce
Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?
Chandler Anderson
Introduction to DevOps - Rackspace tech night
Introduction to DevOps - Rackspace tech night
Marc Cluet
Devops
Devops
lakmal123
DevOps: A Culture Transformation, More than Technology
DevOps: A Culture Transformation, More than Technology
CA Technologies
Patterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps Transformation
Chef
DevOps 101
DevOps 101
Ernest Mueller
CI/CD (DevOps) 101
CI/CD (DevOps) 101
Hazzim Anaya
SUCCEEDING WITH DEVOPS DEVOPS
SUCCEEDING WITH DEVOPS DEVOPS
DevOps Agile Skills Association-DASA
Devops ppt
Devops ppt
Sulekha IT Training
Application Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery World
James Wickett
Devops skills you got what it takes ?
Devops skills you got what it takes ?
Initcron Systems Private Limited
DevOps introduction
DevOps introduction
Mettje Heegstra
Enterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up Budget
DevOps.com
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the Enterprise
CollabNet
5 Keys to Building a Successful DevOps Culture
5 Keys to Building a Successful DevOps Culture
Mandi Walls
What's hot
(20)
Application Deployment at UC Riverside
Application Deployment at UC Riverside
ScrumOps - Featuring Dave West & Jayne Groll
ScrumOps - Featuring Dave West & Jayne Groll
Why to docker
Why to docker
Devops Intro - Devops for Unicorns & DevOps for Horses
Devops Intro - Devops for Unicorns & DevOps for Horses
MERGE 2016 Opening Remarks
MERGE 2016 Opening Remarks
Salesforce DevOps: Where Do You Start?
Salesforce DevOps: Where Do You Start?
Introduction to DevOps - Rackspace tech night
Introduction to DevOps - Rackspace tech night
Devops
Devops
DevOps: A Culture Transformation, More than Technology
DevOps: A Culture Transformation, More than Technology
Patterns and Practices of a Successful DevOps Transformation
Patterns and Practices of a Successful DevOps Transformation
DevOps 101
DevOps 101
CI/CD (DevOps) 101
CI/CD (DevOps) 101
SUCCEEDING WITH DEVOPS DEVOPS
SUCCEEDING WITH DEVOPS DEVOPS
Devops ppt
Devops ppt
Application Security Epistemology in a Continuous Delivery World
Application Security Epistemology in a Continuous Delivery World
Devops skills you got what it takes ?
Devops skills you got what it takes ?
DevOps introduction
DevOps introduction
Enterprise-Grade DevOps Solutions for a Start Up Budget
Enterprise-Grade DevOps Solutions for a Start Up Budget
Achieving DevOps using Open Source Tools in the Enterprise
Achieving DevOps using Open Source Tools in the Enterprise
5 Keys to Building a Successful DevOps Culture
5 Keys to Building a Successful DevOps Culture
Similar to DevOpsing Greenfield - AgileDC2018 - Mills - v1.4 2018.10.15
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
Edureka!
SD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
SD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
Brian Dawson
How to choose Enterprise tools to build out your Continuous Delivery toolscape
How to choose Enterprise tools to build out your Continuous Delivery toolscape
XebiaLabs
Experiences Bringing CD to a DoD Project
Experiences Bringing CD to a DoD Project
Gene Gotimer
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
Amazon Web Services
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
Weaveworks
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
dennisn129
What is DevOps?
What is DevOps?
jeckels
Measure and Accelerate Your Software Delivery
Measure and Accelerate Your Software Delivery
Anand Chauhan
Mastering DevOps With Oracle
Mastering DevOps With Oracle
Kelly Goetsch
Easing Cloud Migrations with Software Pipelines as a Service - Christopher J...
Easing Cloud Migrations with Software Pipelines as a Service - Christopher J...
AWS Chicago
DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018
DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018
AgileNetwork
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
Gene Kim
A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...
CollabNet
Comprehensive Guide to Hire DevOps Engineer.pdf
Comprehensive Guide to Hire DevOps Engineer.pdf
EcosmobTechnologies1
Software architecture in a DevOps world
Software architecture in a DevOps world
Bert Jan Schrijver
Choosing Automation for DevOps & Continuous Delivery in the Enterprise
Choosing Automation for DevOps & Continuous Delivery in the Enterprise
XebiaLabs
Untangling DevOps - A high-level overview and how we got here
Untangling DevOps - A high-level overview and how we got here
Barton George
Enabling Agility Through DevOps
Enabling Agility Through DevOps
Leland Newsom CSP-SM, SPC5, SDP
Linking Upstream and Downstream Agile
Linking Upstream and Downstream Agile
CollabNet
Similar to DevOpsing Greenfield - AgileDC2018 - Mills - v1.4 2018.10.15
(20)
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
What is DevOps | DevOps Introduction | DevOps Training | DevOps Tutorial | Ed...
SD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
SD DevOps Meet-up - Exploring Quadrants of DevOps Maturity
How to choose Enterprise tools to build out your Continuous Delivery toolscape
How to choose Enterprise tools to build out your Continuous Delivery toolscape
Experiences Bringing CD to a DoD Project
Experiences Bringing CD to a DoD Project
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
(SPOT205) 5 Lessons for Managing Massive IT Transformation Projects
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
Cloud Native Transformation (Alexis Richardson) - Continuous Lifecycle 2018 ...
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
What is DevOps?
What is DevOps?
Measure and Accelerate Your Software Delivery
Measure and Accelerate Your Software Delivery
Mastering DevOps With Oracle
Mastering DevOps With Oracle
Easing Cloud Migrations with Software Pipelines as a Service - Christopher J...
Easing Cloud Migrations with Software Pipelines as a Service - Christopher J...
DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018
DevOps - IaC | Talk | AGILE GURUGRAM 2018 | 23 - 24 March, 2018
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
DOES16 London - Jonathan Fletcher - Re-imagining Hiscox IT: A DevOps Story
A Reference Architecture to Enable Visibility and Traceability across the Ent...
A Reference Architecture to Enable Visibility and Traceability across the Ent...
Comprehensive Guide to Hire DevOps Engineer.pdf
Comprehensive Guide to Hire DevOps Engineer.pdf
Software architecture in a DevOps world
Software architecture in a DevOps world
Choosing Automation for DevOps & Continuous Delivery in the Enterprise
Choosing Automation for DevOps & Continuous Delivery in the Enterprise
Untangling DevOps - A high-level overview and how we got here
Untangling DevOps - A high-level overview and how we got here
Enabling Agility Through DevOps
Enabling Agility Through DevOps
Linking Upstream and Downstream Agile
Linking Upstream and Downstream Agile
Recently uploaded
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Manik S Magar
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Zilliz
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
2toLead Limited
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Alex Barbosa Coqueiro
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
BookNet Canada
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
Dubai Multi Commodity Centre
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
null - The Open Security Community
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
Slibray Presentation
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Fwdays
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
Miki Katsuragi
How to write a Business Continuity Plan
How to write a Business Continuity Plan
Databarracks
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
Lonnie McRorey
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
Fwdays
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
Fwdays
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
Sergiu Bodiu
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Precisely
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
Pixlogix Infotech
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
charlottematthew16
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
Dilum Bandara
Recently uploaded
(20)
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
How to write a Business Continuity Plan
How to write a Business Continuity Plan
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
DevOpsing Greenfield - AgileDC2018 - Mills - v1.4 2018.10.15
1.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 1 DevOpsing Your Greenfield: Cultivating New Growth Richard Mills DevOps Solution Lead, Coveros Inc. rich.mills@coveros.com @armillz
2.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 2 Who is this guy? • Me: Mad-Software-Developer turned Mad-Software-Engineer turned DevOps-Solution-Lead. Pragmatist. Particular focus on tools and automation. CI, CD, DevOps … what’s next? • PS: Thanks for inventing the term “DevOps” to describe what I like to do. • Pays my bills: Coveros helps organizations accelerate the delivery of secure, reliable software using agile methods. • Agile transformations, development, and testing • DevOps implementations • Training courses in Agile, DevOps, Application Security • Keeps me intrigued: SecureCI • Open-source DevOps product • Integrated CI stack with security flavor
3.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 3 Why is he here? • Open your mind about most important aspects of "new" DevOps • Share some of my experiences (and failures) • Give you a reference to walk away with • NOT: Explain fundamentals of DevOps (or Agile) • NOT: Sell you on DevOps (or Agile)
4.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 4 Somewhere in our DevOps dreams... I want to do some DevOps and Agile on our important new project! Great. How about this? Let’s BE Agile and adopt a DevOps approach to structuring our teams, designing our architecture, and leveraging automation to rapidly deliver value to our customers? Right. That’s what I said. Sigh
5.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 5 Typical DevOps Transformation • Frequently a fire-fighting effort • Find the most important thing, improve it • You have something concrete to start with, so you just start fixing it.
6.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 6 Greenfield DevOps • Wide open options • No obvious path • Nothing to grab onto yet, so nothing to "fix" and no clear direction to follow It can seem like an overwhelming boulder, at times.
7.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 7 You have ONE job • Don't blow it • You have a clean slate • Don’t create your own dumpster fire We want fire proofing, not fire starting.
8.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 8 General Agenda • DevOps baseline – picking the seeds • Greenfield approach – planting the seeds • Important aspects for cultivating growth • Organization structure and mission • Infrastructure and tools • Pipeline design with delivery and branching model • Integrating with your architecture • Testing and quality analysis Each of these could be multi-hour topics.
9.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 9 DevOps – picking the seeds
10.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 10 The Many Things of DevOps Notice that not many of these are PURELY the responsibility of one person or even team
11.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 12 Ok, But What Do We Actually Mean by DevOps? • DevOps is the natural evolution of Agile: how to get working software into the hands of the people who need it rapidly and reliably • Who? Developers, Product Owners, ultimately users • When? Now! • Seriously … within weeks we can measure delivery with "minutes" • How? Team structure, processes, automation, tools • Extension of Agile • Focus on value delivery • Common sense • Enable developers to be creative and do great work • Work with developers to integrate system architecture with deployment architecture • Absolutely makes things easier and work better • Examples: metrics, testing, health, scaling
12.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 16 Greenfield approach – planting the seeds
13.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 17 So ... Where do we actually start? It’s actually pretty easy: 1. Create a team 2. Set up some infrastructure and tools 3. Build a pipeline 4. Establish quality gates 5. Iterate Ok, It’s a little harder than that...
14.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 18 Most Important: Iterate! • Don't solve everything at once (breadth first) • Don't even solve one thing all the way (depth first) • Get the most important things functional, then improve over time • Start left, build toward the right. Most important first. • Don't paint yourself into a corner, but don't over-engineer • Wait until you know what you need for things that are easy to rework • Caveat: beware things that are immensely hard to re-work. • Start with the simplest thing that could work Remember: DevOps is about delivering value, not just making things cool.
15.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 20 Team structure and mission
16.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 21 Avoid DevOps Team Anti-Patterns •Separate silos •Dev, Ops, DevOps silos •No Ops http://web.devopstopologies.com/
17.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 22 Successful DevOps Organizational Structures Build the right relationships between the people with shared success goals. • Ideal: Cross functional teams with Dev, Ops & QA • Shared goals and values • Collaborative • Unified processes and tooling • Maybe: DevOps as a service • Smaller teams/orgs • Transitional situations • Sometimes: Embedded Ops • Suitable for single web-based product
18.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 23 Horizontal DevOps Guild • Group of DevOps professionals working together to solve cross-team DevOps problems • Guild members in-team are focused on team-specific problems • Dedicated guild members support cross-team needs • Guild establishes cross-team standards and shared success • Important: share knowledge across team members Cross-team function (vs. cross-functional team)
19.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 24 Example DevOps Guild and Team Structure Our team organization on a 50-ish person development project Horizontal Guilds DevOps Engr CORE DevOps Lead Platform Engr CORE Platform Lead Platform Engr Security Security Security Performance Performance Agile Vertical Team Scrum master DevOps Engr Biz Analyst Agile Tester Front End Full Stack Agile Vertical Team Scrum master DevOps Engr Biz Analyst Agile Tester Front End Full Stack Agile Vertical Team Scrum master DevOps Engr Biz Analyst Agile Tester Front End Full Stack Agile Vertical Team Scrum master DevOps Engr Biz Analyst Agile Tester Front End Full Stack
20.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 25 Finding the Right DevOps Members • A good DevOps person ... • ... Is a Developer • ... Is a Tester • ... Knows about system administration • ... Has strong attention to detail • ... Has high standards for quality • ... Knows how to solve problems • ... Good at making things work • Has experience and skills with build tools (maven, gradle, npm), test tools (junit, testNG, Selenium), database programming (sql, no-sql), CI build servers (Jenkins, Travis), operating systems (Linux, Windows), software installation/configuration (nginx, tomcat, databases), CM automation tools (chef, puppet, ansible), scripting (python, groovy, ruby), cloud systems (AWS, Google, Azure), virtualization and containerization (virtualbox, vmware, docker), and many, many other buzzwords (REST, HTTP, SSL, API, UI, e2e)
21.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 28 Infrastructure and Tools
22.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 29 Application Lifecycle Mgmt. SCM/VCS Testing Deployment Cloud/IaaS/PaaS Communication & ChatOps Knowledge Sharing Configuration Mgmt. Artifact Management Orchestration & Scheduling Monitoring & Logging Database Management Build Continuous Integration Analysis Tools, tools, and more tools
23.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 30 Application Lifecycle Mgmt. SCM/VCS Testing Deployment Cloud/IaaS/PaaS Communication & ChatOps Knowledge Sharing Configuration Mgmt. Artifact Management Orchestration & Scheduling Monitoring & Logging Database Management Build Continuous Integration Analysis Let’s start with LESS tools
24.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 31 Infrastructure Platforms • Infrastructure: Operating Platform • Server platform - physical, VM, container • OS configuration • Middleware installation and configuration (java, nginx, tomcat, database, message queue, etc.) • DevOps Infrastructure: DevOps Platform • Build server (Jenkins) • Quality analysis server (SonarQube) • Artifact server (Nexus) • Source control server (Git) • Test server(s)? (Selenium) • Target environment for CI/CD builds (see: Operating Platform) • Developer Infrastructure: local development
25.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 34 DevOps Platform • DevOps Platform - the set of tools and environments you use • Start with your operating platform, build from there • Jenkins - build and pipeline orchestration tool • SonarQube - quality analysis dashboard • OpenShift & Docker - deployment and configuration • Pick some assessment tools: • JUnit, Jest • OWASP Dependency Check • Selenium • Again, start manually then move to automation
26.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 35 Example Platform Architecture • Ideally, your “operating platform” and “DevOps platform” share a lot of underlying infrastructure AWS Instance Open Shift Cluster Pod AWS Instance AWS Instance Pod Pod Pod Pod Micro-Service App Code PodPod DevOps Tools Pod AWS Instance Shared Service AWS RDS Shared DB
27.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 36 Align the Developers • Developer Environments - align with operational platform • Should be able to fetch code build with very little effort; well documented, highly automated • Local deploy/test cycle should be similar to operational (e.g., VM, docker, Operating system, etc.) • Caveat: support rapid change/build/test cycles supported by modern IDEs
28.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 39 Constructing the Delivery Pipeline
29.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 41 Pipeline and Tools Use automation and tools to continuously assess quality, performance, and security in rapid feedback loops Continuous MonitoringContinuous Integration BuildCode Continuous Delivery commit DEV TEST PROD Compile Test Package Publish Unit Test Integration Test Code coverage Code Scanning Static Analysis Bugs Vulnerabilities Technical Debt Package Dependency checking Vulnerable components Deploy Test Provision Install Configure Vulnerability Scanning Deployment verification Smoke test Manual Testing - Exploratory - UAT Functional Testing - Behavioral - API - Web UI Non-Functional Testing - Load/Performance - Web Security Platform Vulnerabilities Test Results Defects Change Requests Test Promote Operate Monitor
30.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 43 Branching Strategy • Strive for "main line" development • Use short, small feature branches for isolated changes • Consider Github Flow (very simple), Git Flow (complex) • Avoid "parallel release development" at all costs • What problems does branching cause vs. solve? • Align with your delivery pipeline
31.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 45 Integrating with Software Architecture • Not all software lends itself to easy build, test, and deployment • Work directly with software architecture and development teams • Software must support • Rapid build • Automated test (controllability, observability) • Data initialization • Installation/configuration • Monitoring/metrics • Standards and "Definition of Done" should reflect this • Development stories aren’t complete until all these things work
32.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 47 Testing and quality analysis
33.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 48 Your efforts in DevOps will fail without proper automated testing and assessment that is fully integrated into the pipeline.
34.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 49 Goals for Testing in DevOps • Keep software in continuous working state • Establish confidence in change • Force teams to build quality in (and agree it’s important) • Avoid creating too much technical debt too early Important: everywhere I say “Quality” I mean “Quality, Security, Performance, and all the other –ilities” you can think of for your software.
35.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 51 Quality Gates are Critical Quality gates ensure that bad code cannot make it through the pipeline • Static analysis - set gates early; avoid tech debt • Standards: style, bugs, vulnerabilities (standards not as important as following them) • 3rd party dependency analysis - vulnerabilities, licensing • Testing phases • Pre-deployment testing - unit, component, mocking • Post-deployment functional testing - services, integration, databases, etc. • Non-functional testing - security, performance, reliability, availability • Code Review • Tie to branching process (Github pull requests) • Small feature branches help this Start left, move right (quickly)
36.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 53 Getting Started with DevOps Testing Create ONE of each test and make sure it gets executed by the DevOps pipeline continuously • Cover each test level • Unit • UI • API • Security • Once the test framework is in place, it removes the barrier and enables test writing • Pitfall: initially, your test results will be all over the place. You will realize the need for a “quality dashboard”
37.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 55 Greenfield DevOps: Grow!
38.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 56 Start Small, Make It Work • Launch basic DevOps tools (Jenkins, Sonar, Nexus, Git) • Setup basic CI builds • Developers use same gradle/npm build scripts as the pipeline • Create some quality gates • SonarQube static analysis • Unit testing • Code coverage (maybe) • Create a test environment (by hand, if need be) • Initialize deployment automation • Docker deploy, Ansible installation • Developers use same (similar) local deployment All this can be done in days or weeks with the right people
39.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 60 Generating Value Remember, the main goal of DevOps is to deliver working code to the people who need it • Prioritize what the developers need first • Get software in front of stakeholders ASAP Keep it real • Don’t get hung up on making things perfect at first • Establish quality gates to avoid (too much) technical debt
40.
© COPYRIGHT 2018
COVEROS, INC. ALL RIGHTS RESERVED. 61 Questions? Thank you! rich.mills@coveros.com https://www.coveros.com/services/devops/