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

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
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
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
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
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
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
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
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
 

Recently uploaded (20)

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
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
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
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
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
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
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 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
 

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