SlideShare a Scribd company logo
1 of 52
Download to read offline
http://shipitsquirrel.github.com/

Monday, 30 April 12
DevOps
                                   &
                            Infrastructure
                               As Code
                      Gavin Heavyside - ACCU 2012 - 27 April 2012
                        gavin@heavyside.co.uk @gavinheavyside
Monday, 30 April 12
Getting Software
                           Into Production

                      • Deliver value to customers
                      • New features
                      • Bug fixes


Monday, 30 April 12
Software Releases

                      • QA cycle
                      • Downtime during deploy
                      • Out-of-hours
                      • Stress
                      • Risk

Monday, 30 April 12
“The Cloud”

                      • Virtualisation & Cloud IaaS lowered cost of
                        entry for businesses
                      • No hardware, but still sysadmin tasks
                      • Small companies get big company issues


Monday, 30 April 12
Agile Infrastructure

                      • New technologies iterate fast
                      • Changing platform requirements
                      • Cutting-edge vs tried-and-tested


Monday, 30 April 12
Monday, 30 April 12
Monday, 30 April 12
Monday, 30 April 12
• www.mydrivesolutions.com
                      • Insurance telematics
                      • Linux, chef, GIS, Ruby, Rails, SQL, NoSQL,
                        AWS, C++


Monday, 30 April 12
Monday, 30 April 12
DevOps

                      • Name invented around 2009
                      • DevOps Days around the world
                      • Making releases easier through
                        collaboration and automation




Monday, 30 April 12
Development

                      • Driven by functional requirements
                       • Business needs
                       • Features
                      • Working on desktop OS
                      • Local configuration & settings

Monday, 30 April 12
Operations

                      • Driven by non-functional requirements
                       • Stability
                       • Performance
                       • Monitoring & Alerting
                       • Minimising operational risk

Monday, 30 April 12
Monday, 30 April 12
Monday, 30 April 12
Infrastructure As Code
                      • Repeatability
                      • Automation
                      • Agility
                      • Scalability
                      • Reassurance
                      • Disaster Recovery
Monday, 30 April 12
Infrastructure As Code

                      • “Break the infrastructure down into
                        independent, reusable, network-accessible
                        services.

                        Integrate these services in such a way as to
                        produce the functionality your
                        infrastructure requires” - Adam Jacob



Monday, 30 April 12
Key Principles

                      • Modularity
                      • Cooperation
                      • Composability
                      • Extensibility
                      • Flexibility

Monday, 30 April 12
Key Principles

                      • Repeatability
                      • Declaration
                      • Abstraction
                      • Idempotence
                      • Convergence

Monday, 30 April 12
Chef vs Puppet
                      A Battle To The Death?




Monday, 30 April 12
Chef
                      • Open-Source Configuration Management
                      • Developed by Opscode
                      • Solo, Server, Hosted



Monday, 30 April 12
Chef
                      • Scriptable, repeatable systems
                      • Write cookbooks containing recipes
                      • resources, attributes, data bags



Monday, 30 April 12
Cookbooks & Recipes
                      • Cookbooks are the canonical unit of
                        distribution & sharing in Chef
                      • Cookbooks contain
                       • Recipes
                       • Attributes
                       • Templates & Files
Monday, 30 April 12
Attributes

                      • Every node has attributes
                      • Saved on Chef server
                      • Updated each chef-client run
                      • Cookbooks specify default attributes
                       • Override per-role and/or per-node

Monday, 30 April 12
Roles


                      • Roles contain other roles and recipes
                      • Define what you want your node to be


Monday, 30 April 12
Monday, 30 April 12
Data Bags




Monday, 30 April 12
Using a Data Bag




Monday, 30 April 12
Chef Server




Monday, 30 April 12
Knife

                      • command line tool to interact with Chef
                      • manage cookbooks, roles, data bags
                      • Search nodes
                      • Bootstrap nodes
                      • Plugins to manage cloud servers

Monday, 30 April 12
Keeping nodes
                               up to date
                      • Run chef-client as a service
                      • Updated a cookbook?
                       • Applied to all nodes automatically



Monday, 30 April 12
Test-Driving
                              Infrastructure
                      • http://www.cucumber-chef.org/
                      • https://github.com/Atalanta/cucumber-chef




Monday, 30 April 12
Monday, 30 April 12
Monday, 30 April 12
Monday, 30 April 12
Vagrant

                      • http://vagrantup.com
                      • Lightweight, reproducible, portable VMs
                      • Configure with Puppet, Chef & others
                      • Package boxes for others to use

Monday, 30 April 12
Live Demo




Monday, 30 April 12
Monday, 30 April 12
NoOps


                      • PaaS
                      • Heroku, Elastic Beanstalk, etc


Monday, 30 April 12
Monitoring & Alerting

                      • Nagios, greylog2 etc
                      • Hosted options
                      • #monitoringsucks


Monday, 30 April 12
Metrics

                      • “If you can’t measure it, it doesn’t exist”
                      • Track performance
                      • Critical counters
                      • Report against SLAs
                      • Identify problems & bottlenecks

Monday, 30 April 12
Metrics
                      • Statsd, Graphite




Monday, 30 April 12
Monday, 30 April 12
Communicate




Monday, 30 April 12
Communicate




Monday, 30 April 12
Zero-Downtime
                              Deploys
                      • Deploy updated code
                      • Graceful restarts
                      • Allow existing processes/requests to
                        complete
                      • New requests get processed by updated
                        code


Monday, 30 April 12
Configuration


                      • The configuration of an environment is as
                        important as the code
                      • Settings, values, ordering


Monday, 30 April 12
Database Schemas


                      • Make your db migrations non-destructive
                      • Update the schema before deploying code


Monday, 30 April 12
• https://github.com/mydrive/capistrano-
                        deploytags




                      • https://github.com/mydrive/capistrano-
                        detect-migrations




Monday, 30 April 12
Recap

                      • Bridge the gap between dev & ops
                      • Put your infrastructure in source control
                      • De-risk deploys by doing lots of them
                      • Automate everything

Monday, 30 April 12
@gavinheavyside
   gavin@heavyside.co.uk

Monday, 30 April 12

More Related Content

Viewers also liked

Father’s Day Sermon 17th June 2012
Father’s Day Sermon 17th June 2012Father’s Day Sermon 17th June 2012
Father’s Day Sermon 17th June 2012SSMC
 
True Submission
True  SubmissionTrue  Submission
True SubmissionFanar
 
Audience Evaluation
Audience EvaluationAudience Evaluation
Audience Evaluationguest743866
 
Jhonner rondon informatica tema vi
Jhonner rondon informatica tema viJhonner rondon informatica tema vi
Jhonner rondon informatica tema vijhonner Rondon
 
Margarita Carranza Torres N L 5
Margarita Carranza Torres N L 5Margarita Carranza Torres N L 5
Margarita Carranza Torres N L 5piolinsita
 
PERFIL ALUMNE DEL SEFED
PERFIL ALUMNE DEL SEFEDPERFIL ALUMNE DEL SEFED
PERFIL ALUMNE DEL SEFEDfjsa2sa4
 
前端工程與Rwd _ 中原大學資管系
前端工程與Rwd _ 中原大學資管系前端工程與Rwd _ 中原大學資管系
前端工程與Rwd _ 中原大學資管系彭其捷 Jack
 
04 17 kingdom restoration
04 17 kingdom restoration04 17 kingdom restoration
04 17 kingdom restorationSSMC
 
Maximize How You Individualize: because the Journey and Outcome Matter
Maximize How You Individualize: because the Journey and Outcome Matter  Maximize How You Individualize: because the Journey and Outcome Matter
Maximize How You Individualize: because the Journey and Outcome Matter Nicholas Kontopoulos
 
致勝談領導八金律
致勝談領導八金律致勝談領導八金律
致勝談領導八金律彭其捷 Jack
 
Fotos Articulos 2
Fotos Articulos 2Fotos Articulos 2
Fotos Articulos 2Omayra
 
Raising godly children 19 jun 15
Raising godly children 19 jun 15Raising godly children 19 jun 15
Raising godly children 19 jun 15SSMC
 
De eerste echte update
De eerste echte updateDe eerste echte update
De eerste echte updateMirne
 
Fotos de Articulos 1
Fotos de Articulos 1Fotos de Articulos 1
Fotos de Articulos 1Omayra
 
03 23 a day of applause
03 23 a day of applause03 23 a day of applause
03 23 a day of applauseSSMC
 
The messianic prophecies victor g sermon 24 jan16
The messianic prophecies   victor g sermon 24 jan16The messianic prophecies   victor g sermon 24 jan16
The messianic prophecies victor g sermon 24 jan16SSMC
 
Tourist attractions
Tourist attractionsTourist attractions
Tourist attractionsmaucgg80
 

Viewers also liked (18)

Father’s Day Sermon 17th June 2012
Father’s Day Sermon 17th June 2012Father’s Day Sermon 17th June 2012
Father’s Day Sermon 17th June 2012
 
True Submission
True  SubmissionTrue  Submission
True Submission
 
Audience Evaluation
Audience EvaluationAudience Evaluation
Audience Evaluation
 
Jhonner rondon informatica tema vi
Jhonner rondon informatica tema viJhonner rondon informatica tema vi
Jhonner rondon informatica tema vi
 
Kenkuli
KenkuliKenkuli
Kenkuli
 
Margarita Carranza Torres N L 5
Margarita Carranza Torres N L 5Margarita Carranza Torres N L 5
Margarita Carranza Torres N L 5
 
PERFIL ALUMNE DEL SEFED
PERFIL ALUMNE DEL SEFEDPERFIL ALUMNE DEL SEFED
PERFIL ALUMNE DEL SEFED
 
前端工程與Rwd _ 中原大學資管系
前端工程與Rwd _ 中原大學資管系前端工程與Rwd _ 中原大學資管系
前端工程與Rwd _ 中原大學資管系
 
04 17 kingdom restoration
04 17 kingdom restoration04 17 kingdom restoration
04 17 kingdom restoration
 
Maximize How You Individualize: because the Journey and Outcome Matter
Maximize How You Individualize: because the Journey and Outcome Matter  Maximize How You Individualize: because the Journey and Outcome Matter
Maximize How You Individualize: because the Journey and Outcome Matter
 
致勝談領導八金律
致勝談領導八金律致勝談領導八金律
致勝談領導八金律
 
Fotos Articulos 2
Fotos Articulos 2Fotos Articulos 2
Fotos Articulos 2
 
Raising godly children 19 jun 15
Raising godly children 19 jun 15Raising godly children 19 jun 15
Raising godly children 19 jun 15
 
De eerste echte update
De eerste echte updateDe eerste echte update
De eerste echte update
 
Fotos de Articulos 1
Fotos de Articulos 1Fotos de Articulos 1
Fotos de Articulos 1
 
03 23 a day of applause
03 23 a day of applause03 23 a day of applause
03 23 a day of applause
 
The messianic prophecies victor g sermon 24 jan16
The messianic prophecies   victor g sermon 24 jan16The messianic prophecies   victor g sermon 24 jan16
The messianic prophecies victor g sermon 24 jan16
 
Tourist attractions
Tourist attractionsTourist attractions
Tourist attractions
 

Similar to DevOps at ACCU 2012

Performance Schema in MySQL (Danil Zburivsky)
Performance Schema in MySQL (Danil Zburivsky)Performance Schema in MySQL (Danil Zburivsky)
Performance Schema in MySQL (Danil Zburivsky)Ontico
 
Automated Testing with Databases
Automated Testing with DatabasesAutomated Testing with Databases
Automated Testing with DatabasesStephen Ritchie
 
Preventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type ChecklistPreventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type ChecklistAcquia
 
eXo Software Factory Overview
eXo Software Factory OvervieweXo Software Factory Overview
eXo Software Factory OverviewArnaud Héritier
 
Ciso executive summit 2012
Ciso executive summit 2012Ciso executive summit 2012
Ciso executive summit 2012Bill Burns
 
MySQL Breakfast in London - 24 June 2010
MySQL Breakfast in London - 24 June 2010MySQL Breakfast in London - 24 June 2010
MySQL Breakfast in London - 24 June 2010Ivan Zoratti
 
The Drupal Ecosystem for Drupal Services
The Drupal Ecosystem for Drupal ServicesThe Drupal Ecosystem for Drupal Services
The Drupal Ecosystem for Drupal ServicesVardot
 
Cloud Development with Camel and Amazon Web Services
Cloud Development with Camel and Amazon Web ServicesCloud Development with Camel and Amazon Web Services
Cloud Development with Camel and Amazon Web ServicesRobin Howlett
 
Choosing a backend for your mobile app? Don’t roll the dice!
Choosing a backend for your mobile app? Don’t roll the dice!Choosing a backend for your mobile app? Don’t roll the dice!
Choosing a backend for your mobile app? Don’t roll the dice!Codemotion
 
Chef - Configuration Management for the Cloud
Chef - Configuration Management for the CloudChef - Configuration Management for the Cloud
Chef - Configuration Management for the CloudJames Casey
 
A Taste of TDD: The basics of TDD, why it is hard and how to do it better
A Taste of TDD: The basics of TDD, why it is hard and how to do it betterA Taste of TDD: The basics of TDD, why it is hard and how to do it better
A Taste of TDD: The basics of TDD, why it is hard and how to do it betterJohn McCaffrey
 
Drupal Course 2012 - Code Driven Development
Drupal Course 2012 - Code Driven DevelopmentDrupal Course 2012 - Code Driven Development
Drupal Course 2012 - Code Driven DevelopmentAttila Cs. Nagy
 
Availability, the Cloud and Everything
Availability, the Cloud and EverythingAvailability, the Cloud and Everything
Availability, the Cloud and Everythinglogicalstack
 
Puppet Camp London 2014: Keynote
Puppet Camp London 2014: KeynotePuppet Camp London 2014: Keynote
Puppet Camp London 2014: KeynotePuppet
 
Azure Machine Learning
Azure Machine LearningAzure Machine Learning
Azure Machine LearningDavide Mauri
 
Sharpen your axe drupal concph 2010
Sharpen your axe drupal concph 2010Sharpen your axe drupal concph 2010
Sharpen your axe drupal concph 2010Simon Surtees
 
Plone Hosting: A Panel Discussion
Plone Hosting: A Panel DiscussionPlone Hosting: A Panel Discussion
Plone Hosting: A Panel DiscussionJazkarta, Inc.
 

Similar to DevOps at ACCU 2012 (20)

Iterating Plone
Iterating PloneIterating Plone
Iterating Plone
 
Practical CQRS
Practical CQRSPractical CQRS
Practical CQRS
 
Performance Schema in MySQL (Danil Zburivsky)
Performance Schema in MySQL (Danil Zburivsky)Performance Schema in MySQL (Danil Zburivsky)
Performance Schema in MySQL (Danil Zburivsky)
 
Automated Testing with Databases
Automated Testing with DatabasesAutomated Testing with Databases
Automated Testing with Databases
 
Preventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type ChecklistPreventing Drupal Headaches: Content Type Checklist
Preventing Drupal Headaches: Content Type Checklist
 
eXo Software Factory Overview
eXo Software Factory OvervieweXo Software Factory Overview
eXo Software Factory Overview
 
Ciso executive summit 2012
Ciso executive summit 2012Ciso executive summit 2012
Ciso executive summit 2012
 
MySQL Breakfast in London - 24 June 2010
MySQL Breakfast in London - 24 June 2010MySQL Breakfast in London - 24 June 2010
MySQL Breakfast in London - 24 June 2010
 
The Drupal Ecosystem for Drupal Services
The Drupal Ecosystem for Drupal ServicesThe Drupal Ecosystem for Drupal Services
The Drupal Ecosystem for Drupal Services
 
Cloud Development with Camel and Amazon Web Services
Cloud Development with Camel and Amazon Web ServicesCloud Development with Camel and Amazon Web Services
Cloud Development with Camel and Amazon Web Services
 
Choosing a backend for your mobile app? Don’t roll the dice!
Choosing a backend for your mobile app? Don’t roll the dice!Choosing a backend for your mobile app? Don’t roll the dice!
Choosing a backend for your mobile app? Don’t roll the dice!
 
Chef - Configuration Management for the Cloud
Chef - Configuration Management for the CloudChef - Configuration Management for the Cloud
Chef - Configuration Management for the Cloud
 
Theory of Constraints
Theory of ConstraintsTheory of Constraints
Theory of Constraints
 
A Taste of TDD: The basics of TDD, why it is hard and how to do it better
A Taste of TDD: The basics of TDD, why it is hard and how to do it betterA Taste of TDD: The basics of TDD, why it is hard and how to do it better
A Taste of TDD: The basics of TDD, why it is hard and how to do it better
 
Drupal Course 2012 - Code Driven Development
Drupal Course 2012 - Code Driven DevelopmentDrupal Course 2012 - Code Driven Development
Drupal Course 2012 - Code Driven Development
 
Availability, the Cloud and Everything
Availability, the Cloud and EverythingAvailability, the Cloud and Everything
Availability, the Cloud and Everything
 
Puppet Camp London 2014: Keynote
Puppet Camp London 2014: KeynotePuppet Camp London 2014: Keynote
Puppet Camp London 2014: Keynote
 
Azure Machine Learning
Azure Machine LearningAzure Machine Learning
Azure Machine Learning
 
Sharpen your axe drupal concph 2010
Sharpen your axe drupal concph 2010Sharpen your axe drupal concph 2010
Sharpen your axe drupal concph 2010
 
Plone Hosting: A Panel Discussion
Plone Hosting: A Panel DiscussionPlone Hosting: A Panel Discussion
Plone Hosting: A Panel Discussion
 

More from Gavin Heavyside

Location Location Location
Location Location LocationLocation Location Location
Location Location LocationGavin Heavyside
 
Introduction to Hadoop - ACCU2010
Introduction to Hadoop - ACCU2010Introduction to Hadoop - ACCU2010
Introduction to Hadoop - ACCU2010Gavin Heavyside
 
Coding Dojo - Surrey Rubyists #2 - 26 April 2011
Coding Dojo - Surrey Rubyists #2 - 26 April 2011Coding Dojo - Surrey Rubyists #2 - 26 April 2011
Coding Dojo - Surrey Rubyists #2 - 26 April 2011Gavin Heavyside
 
Non-Relational Databases at ACCU2011
Non-Relational Databases at ACCU2011Non-Relational Databases at ACCU2011
Non-Relational Databases at ACCU2011Gavin Heavyside
 
Introduction to Hadoop - ACCU2010
Introduction to Hadoop - ACCU2010Introduction to Hadoop - ACCU2010
Introduction to Hadoop - ACCU2010Gavin Heavyside
 

More from Gavin Heavyside (6)

Docker at ACCU2015
Docker at ACCU2015Docker at ACCU2015
Docker at ACCU2015
 
Location Location Location
Location Location LocationLocation Location Location
Location Location Location
 
Introduction to Hadoop - ACCU2010
Introduction to Hadoop - ACCU2010Introduction to Hadoop - ACCU2010
Introduction to Hadoop - ACCU2010
 
Coding Dojo - Surrey Rubyists #2 - 26 April 2011
Coding Dojo - Surrey Rubyists #2 - 26 April 2011Coding Dojo - Surrey Rubyists #2 - 26 April 2011
Coding Dojo - Surrey Rubyists #2 - 26 April 2011
 
Non-Relational Databases at ACCU2011
Non-Relational Databases at ACCU2011Non-Relational Databases at ACCU2011
Non-Relational Databases at ACCU2011
 
Introduction to Hadoop - ACCU2010
Introduction to Hadoop - ACCU2010Introduction to Hadoop - ACCU2010
Introduction to Hadoop - ACCU2010
 

Recently uploaded

New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 

Recently uploaded (20)

New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 

DevOps at ACCU 2012

  • 2. DevOps & Infrastructure As Code Gavin Heavyside - ACCU 2012 - 27 April 2012 gavin@heavyside.co.uk @gavinheavyside Monday, 30 April 12
  • 3. Getting Software Into Production • Deliver value to customers • New features • Bug fixes Monday, 30 April 12
  • 4. Software Releases • QA cycle • Downtime during deploy • Out-of-hours • Stress • Risk Monday, 30 April 12
  • 5. “The Cloud” • Virtualisation & Cloud IaaS lowered cost of entry for businesses • No hardware, but still sysadmin tasks • Small companies get big company issues Monday, 30 April 12
  • 6. Agile Infrastructure • New technologies iterate fast • Changing platform requirements • Cutting-edge vs tried-and-tested Monday, 30 April 12
  • 10. • www.mydrivesolutions.com • Insurance telematics • Linux, chef, GIS, Ruby, Rails, SQL, NoSQL, AWS, C++ Monday, 30 April 12
  • 12. DevOps • Name invented around 2009 • DevOps Days around the world • Making releases easier through collaboration and automation Monday, 30 April 12
  • 13. Development • Driven by functional requirements • Business needs • Features • Working on desktop OS • Local configuration & settings Monday, 30 April 12
  • 14. Operations • Driven by non-functional requirements • Stability • Performance • Monitoring & Alerting • Minimising operational risk Monday, 30 April 12
  • 17. Infrastructure As Code • Repeatability • Automation • Agility • Scalability • Reassurance • Disaster Recovery Monday, 30 April 12
  • 18. Infrastructure As Code • “Break the infrastructure down into independent, reusable, network-accessible services. Integrate these services in such a way as to produce the functionality your infrastructure requires” - Adam Jacob Monday, 30 April 12
  • 19. Key Principles • Modularity • Cooperation • Composability • Extensibility • Flexibility Monday, 30 April 12
  • 20. Key Principles • Repeatability • Declaration • Abstraction • Idempotence • Convergence Monday, 30 April 12
  • 21. Chef vs Puppet A Battle To The Death? Monday, 30 April 12
  • 22. Chef • Open-Source Configuration Management • Developed by Opscode • Solo, Server, Hosted Monday, 30 April 12
  • 23. Chef • Scriptable, repeatable systems • Write cookbooks containing recipes • resources, attributes, data bags Monday, 30 April 12
  • 24. Cookbooks & Recipes • Cookbooks are the canonical unit of distribution & sharing in Chef • Cookbooks contain • Recipes • Attributes • Templates & Files Monday, 30 April 12
  • 25. Attributes • Every node has attributes • Saved on Chef server • Updated each chef-client run • Cookbooks specify default attributes • Override per-role and/or per-node Monday, 30 April 12
  • 26. Roles • Roles contain other roles and recipes • Define what you want your node to be Monday, 30 April 12
  • 29. Using a Data Bag Monday, 30 April 12
  • 31. Knife • command line tool to interact with Chef • manage cookbooks, roles, data bags • Search nodes • Bootstrap nodes • Plugins to manage cloud servers Monday, 30 April 12
  • 32. Keeping nodes up to date • Run chef-client as a service • Updated a cookbook? • Applied to all nodes automatically Monday, 30 April 12
  • 33. Test-Driving Infrastructure • http://www.cucumber-chef.org/ • https://github.com/Atalanta/cucumber-chef Monday, 30 April 12
  • 37. Vagrant • http://vagrantup.com • Lightweight, reproducible, portable VMs • Configure with Puppet, Chef & others • Package boxes for others to use Monday, 30 April 12
  • 40. NoOps • PaaS • Heroku, Elastic Beanstalk, etc Monday, 30 April 12
  • 41. Monitoring & Alerting • Nagios, greylog2 etc • Hosted options • #monitoringsucks Monday, 30 April 12
  • 42. Metrics • “If you can’t measure it, it doesn’t exist” • Track performance • Critical counters • Report against SLAs • Identify problems & bottlenecks Monday, 30 April 12
  • 43. Metrics • Statsd, Graphite Monday, 30 April 12
  • 47. Zero-Downtime Deploys • Deploy updated code • Graceful restarts • Allow existing processes/requests to complete • New requests get processed by updated code Monday, 30 April 12
  • 48. Configuration • The configuration of an environment is as important as the code • Settings, values, ordering Monday, 30 April 12
  • 49. Database Schemas • Make your db migrations non-destructive • Update the schema before deploying code Monday, 30 April 12
  • 50. • https://github.com/mydrive/capistrano- deploytags • https://github.com/mydrive/capistrano- detect-migrations Monday, 30 April 12
  • 51. Recap • Bridge the gap between dev & ops • Put your infrastructure in source control • De-risk deploys by doing lots of them • Automate everything Monday, 30 April 12
  • 52. @gavinheavyside gavin@heavyside.co.uk Monday, 30 April 12