SlideShare une entreprise Scribd logo
1  sur  46
Télécharger pour lire hors ligne
Configuration Management for the
Devops generation.
Friday, 17 May 13
We Live In A Confusing World?
Friday, 17 May 13
And We’ve All Experienced This?
Sometimes
Feels Like it
is
Dev vs. Ops
vs. ITIL?
Friday, 17 May 13
* Applications delivered
quickly to help business
succeed
* Allowing us to work on
interesting projects
* Tools that will simplify
configuration, release and
change
But We All Want The Same Thing?
Friday, 17 May 13
* Applications delivered
quickly to help business
succeed
* Allowing us to work on
interesting projects
* Tools that will simplify
configuration, release and
change
But We All Want The Same Thing?
Friday, 17 May 13
* Applications delivered
quickly to help business
succeed
* Allowing us to work on
interesting projects
* Tools that will simplify
configuration, release and
change
But We All Want The Same Thing?
And not this ?
Friday, 17 May 13
*You built your own or
*You bought something
* You had to bend your thinking
* It was hard to install if it worked
* You had an empty vessel
* Did it support multiple OS’s or scale
It took a long time to go anywhere.
In The Past
Friday, 17 May 13
Enter DevOps and Chef
Friday, 17 May 13
Chef is an automation platform for developers & systems engineers to continuously
define, build, and manage infrastructure.
CHEF USES:
Recipes and Cookbooks
that describe Infrastructure as Code.
Chef enables people to easily build &
manage complex & dynamic applications
at massive scale
• New model for describing infrastructure that
promotes reuse
• Programmatically provision and configure
• Reconstruct business from code repository,
data backup, and bare metal resources
Chef
Chef is available in open source, PaaS and
Enterprise options
Friday, 17 May 13
Consider this.....
Friday, 17 May 13
Jboss App
Memcache
Postgres Slaves
Postgres Master
NagiosGraphite
Typical Infrastructure
Friday, 17 May 13
Jboss App
Memcache
Postgres Slaves
Postgres Master
NagiosGraphite
• Move SSH off port 22
• Lets put it on 2022
New Compliance Mandate!
Friday, 17 May 13
Jboss App
Memcache
Postgres Slaves
Postgres Master
NagiosGraphite
• Change, Restart
• Repeat
• Typically manually
Many Changes , Mostly Manual?
• Don’t break anything!
• Bob just got fired =(
Friday, 17 May 13
Jboss App
Memcache
Postgres Slaves
Postgres Master
NagiosGraphite
• More Complexity
• More wiring
• Bigger run-book
Scale Out
Friday, 17 May 13
And It Gets Worse?
Application Servers
Application Database Cache
Load Balancers
Floating IP?
Application Databases
Friday, 17 May 13
And It Gets Worse?
Application Servers
Application Database Cache
Load Balancers
Floating IP?
Application Databases
Evolving
complexity
Virtualization
Cloud
Portability
Friday, 17 May 13
Complexity Grows Quickly
DC1
DC3
DC2
Friday, 17 May 13
Configuration Desperation
Code Sample
http://www.flickr.com/photos/francoforeshock/5716969942/
Friday, 17 May 13
• But you already
guessed that, didn’t
you?
Chef Solves this Problem
Friday, 17 May 13
Chef is Infrastructure as Code
http://www.flickr.com/photos/louisb/4555295187/
• Programmatically
provision and configure
• Treat like any other code
base
• Reconstruct business from
code repository, data
backup, and bare metal
resources.
Friday, 17 May 13
• Chef-Client generates
configurations directly
on nodes from their
run list
• Reduce management
complexity through
abstraction
• Store the configuration
of your programs in
version control
http://www.flickr.com/photos/ssoosay/5126146763/
Nodes
Friday, 17 May 13
Collections of Resources
• Networking
• Files
• Directories
• Symlinks
• Mounts
• Routes
• Users
• Groups
• Tasks
• Packages
• Software
• Services
• Configurations
• Other Stuff
http://www.flickr.com/photos/stevekeys/3123167585/
Friday, 17 May 13
Declarative Interface to Resources
• Define policy
• Say what, not how
• Pull not Push
http://www.flickr.com/photos/bixentro/2591838509/
Friday, 17 May 13
Recipes and Cookbooks
• Recipes are collections of
Resources
• Cookbooks contain
recipes, templates, files,
custom resources, etc
• Code re-use and
modularity
• Written in Ruby - extend
as necessary
• Hundreds already on
Community.opscode.com
http://www.flickr.com/photos/shutterhacks/4474421855/
Friday, 17 May 13
http://www.flickr.com/photos/kathycsus/2686772625
• IP addresses
• Hostnames
• FQDNs
• Search for when
static config isn’t
enough
• data-driven power
Search
Friday, 17 May 13
pool_members = search("node","role:webserver”)
template "/etc/haproxy/haproxy.cfg" do
source "haproxy-app_lb.cfg.erb"
owner "root"
group "root"
mode 0644
variables :pool_members => pool_members.uniq
notifies :restart, "service[haproxy]"
end
Pass Results to Templates
Friday, 17 May 13
# Set up application listeners here.
listen application 0.0.0.0:80
balance roundrobin
<% @pool_members.each do |member| -%>
server <%= member[:hostname] %> <%= member[:ipaddress] %>:> weight 1 maxconn 1 check
<% end -%>
<% if node["haproxy"]["enable_admin"] -%>
listen admin 0.0.0.0:22002
mode http
stats uri /
<% end -%>
Pass Results to Templates
Friday, 17 May 13
Jboss App
Memcache
Postgres Slaves
Postgres Master
So when this
NagiosGraphite
Friday, 17 May 13
Jboss App
Memcache
Postgres Slaves
Postgres Master
NagiosGraphite
Becomes this
Friday, 17 May 13
Jboss App
Memcache
Postgres Slaves
Postgres Master
NagiosGraphite
Updates can be automatic
Friday, 17 May 13
NagiosGraphite
Count the resources
Jboss App
Memcache
Postgres Slaves
• Load balancer config
• Nagios host ping
• Nagios host ssh
• Nagios host HTTP
• Nagios host app health
• Graphite CPU
• Graphite Memory
• Graphite Disk
• Graphite SNMP
• Memcache firewall
• Postgres firewall
• Postgres authZ config
• 12+ resource changes for 1 node addition
Friday, 17 May 13
Build anything
• Simple internal applications
• Complex external applications
• Workstations
• Hadoop clusters
• IaaS infrastructure
• PaaS infrastructure
• SaaS applications
• Storage systems
• You name it
http://www.flickr.com/photos/hyku/245010680/
Friday, 17 May 13
And manage it simply
http://www.flickr.com/photos/helico/404640681/
• Automatically
reconfigure
everything
• Linux,Windows,
Unixes, BSDs
• Load balancers
• Metrics collection
systems
• Monitoring systems
• Cloud migrations
become trivial
Friday, 17 May 13
Code Sample
Chef Components
Friday, 17 May 13
knife with the Chef Server
• knife node
• create/delete/edit
• list
• knife cookbook ...
• knife role ...
• knife environment ...
Friday, 17 May 13
knife search
• What operating systems are running?
• What version of ruby is running?
• How much memory do you have on each
machine?
Friday, 17 May 13
Discovery & Data Driven (Ohai!)
Friday, 17 May 13
knife search
knife search “*:*” -a platform
knife search “*:*” -a languages.ruby.version
knife search “*:*” -a memory.total
Friday, 17 May 13
knife ssh
$ knife ssh "roles:rails-web" "sudo chef-client"
Friday, 17 May 13
And the Cloud.....
$ knife ec2
Available ec2 subcommands: (for details, knife SUB-COMMAND --
help)
** EC2 COMMANDS **
knife ec2 flavor list (options)
knife ec2 instance data (options)
knife ec2 server create (options)
knife ec2 server delete SERVER [SERVER] (options)
knife ec2 server list (options)
$ knife ec2 server create -S keypair -i ~/.ssh/id_rsa -x ubuntu
-I ami-4721882e -f m1.small -r 'role[webserver]'
• knife ec2
• knife rackspace
• knife hp
• knife google
• knife azure
• knife cloudstack
• knife openstack
• knife vsphere
• ... and many others
Friday, 17 May 13
Community
Friday, 17 May 13
The Chef Community
• Apache License,Version 2.0
• 1200+ Individual contributors
• 200+ Corporate contributors
• Google, HP, Dell, Rackspace,VMware,
Joyent, Calxeda, Heroku, SUSE and many
more
• 800+ cookbooks
• http://community.opscode.com
Friday, 17 May 13
How Do I Start?
•docs.opscode.com
•learnchef.com
•opscode.eventbrite.com
•lists.opscode.com
Friday, 17 May 13
Friday, 17 May 13
Yep, we’re hiring!
Friday, 17 May 13
Thanks! Any Questions?
Andy Hawkins
andy@opscode.com
Friday, 17 May 13

Contenu connexe

Tendances

Server Check.in case study - Drupal and Node.js
Server Check.in case study - Drupal and Node.jsServer Check.in case study - Drupal and Node.js
Server Check.in case study - Drupal and Node.jsJeff Geerling
 
High Performance Drupal
High Performance DrupalHigh Performance Drupal
High Performance DrupalJeff Geerling
 
Ansible Intro - June 2015 / Ansible Barcelona User Group
Ansible Intro - June 2015 / Ansible Barcelona User GroupAnsible Intro - June 2015 / Ansible Barcelona User Group
Ansible Intro - June 2015 / Ansible Barcelona User GroupOrestes Carracedo
 
Local Dev on Virtual Machines - Vagrant, VirtualBox and Ansible
Local Dev on Virtual Machines - Vagrant, VirtualBox and AnsibleLocal Dev on Virtual Machines - Vagrant, VirtualBox and Ansible
Local Dev on Virtual Machines - Vagrant, VirtualBox and AnsibleJeff Geerling
 
Woo: Writing a fast web server
Woo: Writing a fast web serverWoo: Writing a fast web server
Woo: Writing a fast web serverfukamachi
 
Webdevcon Keynote hh-2012-09-18
Webdevcon Keynote hh-2012-09-18Webdevcon Keynote hh-2012-09-18
Webdevcon Keynote hh-2012-09-18Pierre Joye
 
Mongodb - drupal dev days
Mongodb - drupal dev daysMongodb - drupal dev days
Mongodb - drupal dev daysPierre Joye
 
What I Learned at Open Hack Naperville
What I Learned at Open Hack NapervilleWhat I Learned at Open Hack Naperville
What I Learned at Open Hack NapervilleKevin Davis
 
CouchDB for Web Applications - Erlang Factory London 2009
CouchDB for Web Applications - Erlang Factory London 2009CouchDB for Web Applications - Erlang Factory London 2009
CouchDB for Web Applications - Erlang Factory London 2009Jason Davies
 
Steamlining your puppet development workflow
Steamlining your puppet development workflowSteamlining your puppet development workflow
Steamlining your puppet development workflowTomas Doran
 
Continuous Testing with Molecule, Ansible, and GitHub Actions
Continuous Testing with Molecule, Ansible, and GitHub ActionsContinuous Testing with Molecule, Ansible, and GitHub Actions
Continuous Testing with Molecule, Ansible, and GitHub ActionsJeff Geerling
 
Ansible + Drupal: A Fortuitous DevOps Match
Ansible + Drupal: A Fortuitous DevOps MatchAnsible + Drupal: A Fortuitous DevOps Match
Ansible + Drupal: A Fortuitous DevOps MatchJeff Geerling
 
Puppet Development Workflow
Puppet Development WorkflowPuppet Development Workflow
Puppet Development WorkflowJeffery Smith
 

Tendances (20)

Server Check.in case study - Drupal and Node.js
Server Check.in case study - Drupal and Node.jsServer Check.in case study - Drupal and Node.js
Server Check.in case study - Drupal and Node.js
 
High Performance Drupal
High Performance DrupalHigh Performance Drupal
High Performance Drupal
 
WAG the Blog
WAG the BlogWAG the Blog
WAG the Blog
 
Ansible Intro - June 2015 / Ansible Barcelona User Group
Ansible Intro - June 2015 / Ansible Barcelona User GroupAnsible Intro - June 2015 / Ansible Barcelona User Group
Ansible Intro - June 2015 / Ansible Barcelona User Group
 
Local Dev on Virtual Machines - Vagrant, VirtualBox and Ansible
Local Dev on Virtual Machines - Vagrant, VirtualBox and AnsibleLocal Dev on Virtual Machines - Vagrant, VirtualBox and Ansible
Local Dev on Virtual Machines - Vagrant, VirtualBox and Ansible
 
Woo: Writing a fast web server
Woo: Writing a fast web serverWoo: Writing a fast web server
Woo: Writing a fast web server
 
Ansible
AnsibleAnsible
Ansible
 
Webdevcon Keynote hh-2012-09-18
Webdevcon Keynote hh-2012-09-18Webdevcon Keynote hh-2012-09-18
Webdevcon Keynote hh-2012-09-18
 
10 Data caching
10 Data caching10 Data caching
10 Data caching
 
Mongodb - drupal dev days
Mongodb - drupal dev daysMongodb - drupal dev days
Mongodb - drupal dev days
 
Rails with mongodb
Rails with mongodbRails with mongodb
Rails with mongodb
 
What I Learned at Open Hack Naperville
What I Learned at Open Hack NapervilleWhat I Learned at Open Hack Naperville
What I Learned at Open Hack Naperville
 
CouchDB for Web Applications - Erlang Factory London 2009
CouchDB for Web Applications - Erlang Factory London 2009CouchDB for Web Applications - Erlang Factory London 2009
CouchDB for Web Applications - Erlang Factory London 2009
 
Scaling 101
Scaling 101Scaling 101
Scaling 101
 
Impression of Rails 3
Impression of Rails 3Impression of Rails 3
Impression of Rails 3
 
Steamlining your puppet development workflow
Steamlining your puppet development workflowSteamlining your puppet development workflow
Steamlining your puppet development workflow
 
Per beginners2
Per beginners2Per beginners2
Per beginners2
 
Continuous Testing with Molecule, Ansible, and GitHub Actions
Continuous Testing with Molecule, Ansible, and GitHub ActionsContinuous Testing with Molecule, Ansible, and GitHub Actions
Continuous Testing with Molecule, Ansible, and GitHub Actions
 
Ansible + Drupal: A Fortuitous DevOps Match
Ansible + Drupal: A Fortuitous DevOps MatchAnsible + Drupal: A Fortuitous DevOps Match
Ansible + Drupal: A Fortuitous DevOps Match
 
Puppet Development Workflow
Puppet Development WorkflowPuppet Development Workflow
Puppet Development Workflow
 

Similaire à eSynergy Andy Hawkins - Enabling DevOps through next generation configuration management

Red Dirt Ruby Conference
Red Dirt Ruby ConferenceRed Dirt Ruby Conference
Red Dirt Ruby ConferenceJohn Woodell
 
Improve your SQL workload with observability
Improve your SQL workload with observabilityImprove your SQL workload with observability
Improve your SQL workload with observabilityOVHcloud
 
Stack Exchange Infrastructure - LISA 14
Stack Exchange Infrastructure - LISA 14Stack Exchange Infrastructure - LISA 14
Stack Exchange Infrastructure - LISA 14GABeech
 
Zero to the Cloud with @NetflixOSS
Zero to the Cloud with @NetflixOSSZero to the Cloud with @NetflixOSS
Zero to the Cloud with @NetflixOSSMike McGarr
 
Great Tools Heavily Used In Japan, You Don't Know.
Great Tools Heavily Used In Japan, You Don't Know.Great Tools Heavily Used In Japan, You Don't Know.
Great Tools Heavily Used In Japan, You Don't Know.Junichi Ishida
 
Introduction to node.js by Ran Mizrahi @ Reversim Summit
Introduction to node.js by Ran Mizrahi @ Reversim SummitIntroduction to node.js by Ran Mizrahi @ Reversim Summit
Introduction to node.js by Ran Mizrahi @ Reversim SummitRan Mizrahi
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchHoward Greenberg
 
Google App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGoogle App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGuillaume Laforge
 
Ab(Using) the MetaCPAN API for Fun and Profit v2013
Ab(Using) the MetaCPAN API for Fun and Profit v2013Ab(Using) the MetaCPAN API for Fun and Profit v2013
Ab(Using) the MetaCPAN API for Fun and Profit v2013Olaf Alders
 
Intro to PHP Testing
Intro to PHP TestingIntro to PHP Testing
Intro to PHP TestingRan Mizrahi
 
AppEngine Performance Tuning
AppEngine Performance TuningAppEngine Performance Tuning
AppEngine Performance TuningDavid Chen
 
Tek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJSTek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJSPablo Godel
 
Ruby and Distributed Storage Systems
Ruby and Distributed Storage SystemsRuby and Distributed Storage Systems
Ruby and Distributed Storage SystemsSATOSHI TAGOMORI
 
Australian OpenStack User Group August 2012: Chef for OpenStack
Australian OpenStack User Group August 2012: Chef for OpenStackAustralian OpenStack User Group August 2012: Chef for OpenStack
Australian OpenStack User Group August 2012: Chef for OpenStackMatt Ray
 
flickr's architecture & php
flickr's architecture & php flickr's architecture & php
flickr's architecture & php coolpics
 
Chef for OpenStack - OpenStack Fall 2012 Summit
Chef for OpenStack  - OpenStack Fall 2012 SummitChef for OpenStack  - OpenStack Fall 2012 Summit
Chef for OpenStack - OpenStack Fall 2012 SummitMatt Ray
 

Similaire à eSynergy Andy Hawkins - Enabling DevOps through next generation configuration management (20)

Red Dirt Ruby Conference
Red Dirt Ruby ConferenceRed Dirt Ruby Conference
Red Dirt Ruby Conference
 
App Engine Meetup
App Engine MeetupApp Engine Meetup
App Engine Meetup
 
Improve your SQL workload with observability
Improve your SQL workload with observabilityImprove your SQL workload with observability
Improve your SQL workload with observability
 
Stack Exchange Infrastructure - LISA 14
Stack Exchange Infrastructure - LISA 14Stack Exchange Infrastructure - LISA 14
Stack Exchange Infrastructure - LISA 14
 
Zero to the Cloud with @NetflixOSS
Zero to the Cloud with @NetflixOSSZero to the Cloud with @NetflixOSS
Zero to the Cloud with @NetflixOSS
 
Hacking the way you work
Hacking the way you workHacking the way you work
Hacking the way you work
 
Great Tools Heavily Used In Japan, You Don't Know.
Great Tools Heavily Used In Japan, You Don't Know.Great Tools Heavily Used In Japan, You Don't Know.
Great Tools Heavily Used In Japan, You Don't Know.
 
Introduction to node.js by Ran Mizrahi @ Reversim Summit
Introduction to node.js by Ran Mizrahi @ Reversim SummitIntroduction to node.js by Ran Mizrahi @ Reversim Summit
Introduction to node.js by Ran Mizrahi @ Reversim Summit
 
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's WorkbenchAugust Webinar - Water Cooler Talks: A Look into a Developer's Workbench
August Webinar - Water Cooler Talks: A Look into a Developer's Workbench
 
Google App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and GaelykGoogle App Engine Java, Groovy and Gaelyk
Google App Engine Java, Groovy and Gaelyk
 
Ab(Using) the MetaCPAN API for Fun and Profit v2013
Ab(Using) the MetaCPAN API for Fun and Profit v2013Ab(Using) the MetaCPAN API for Fun and Profit v2013
Ab(Using) the MetaCPAN API for Fun and Profit v2013
 
Intro to PHP Testing
Intro to PHP TestingIntro to PHP Testing
Intro to PHP Testing
 
AppEngine Performance Tuning
AppEngine Performance TuningAppEngine Performance Tuning
AppEngine Performance Tuning
 
Tek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJSTek 2013 - Building Web Apps from a New Angle with AngularJS
Tek 2013 - Building Web Apps from a New Angle with AngularJS
 
Ruby and Distributed Storage Systems
Ruby and Distributed Storage SystemsRuby and Distributed Storage Systems
Ruby and Distributed Storage Systems
 
Australian OpenStack User Group August 2012: Chef for OpenStack
Australian OpenStack User Group August 2012: Chef for OpenStackAustralian OpenStack User Group August 2012: Chef for OpenStack
Australian OpenStack User Group August 2012: Chef for OpenStack
 
flickr's architecture & php
flickr's architecture & php flickr's architecture & php
flickr's architecture & php
 
Chef for OpenStack - OpenStack Fall 2012 Summit
Chef for OpenStack  - OpenStack Fall 2012 SummitChef for OpenStack  - OpenStack Fall 2012 Summit
Chef for OpenStack - OpenStack Fall 2012 Summit
 
Chef for OpenStack- Fall 2012.pdf
Chef for OpenStack- Fall 2012.pdfChef for OpenStack- Fall 2012.pdf
Chef for OpenStack- Fall 2012.pdf
 
SCALE 10x Build a Cloud Day
SCALE 10x Build a Cloud DaySCALE 10x Build a Cloud Day
SCALE 10x Build a Cloud Day
 

Plus de PatrickCrompton

eSynergy Dave Sayers - Applying DevOps principles in established corporate or...
eSynergy Dave Sayers - Applying DevOps principles in established corporate or...eSynergy Dave Sayers - Applying DevOps principles in established corporate or...
eSynergy Dave Sayers - Applying DevOps principles in established corporate or...PatrickCrompton
 
eSynergy Keiran Sweet - Bringing order to chaos with puppet
eSynergy Keiran Sweet - Bringing order to chaos with puppeteSynergy Keiran Sweet - Bringing order to chaos with puppet
eSynergy Keiran Sweet - Bringing order to chaos with puppetPatrickCrompton
 
eSynergy Dave Sayers - Applying DevOps principles in established corporate or...
eSynergy Dave Sayers - Applying DevOps principles in established corporate or...eSynergy Dave Sayers - Applying DevOps principles in established corporate or...
eSynergy Dave Sayers - Applying DevOps principles in established corporate or...PatrickCrompton
 
eSynergy Paul Swartout - DevOps - what is it and why is it valuable to business
eSynergy Paul Swartout - DevOps - what is it and why is it valuable to businesseSynergy Paul Swartout - DevOps - what is it and why is it valuable to business
eSynergy Paul Swartout - DevOps - what is it and why is it valuable to businessPatrickCrompton
 
Mrinal devadas, Hortonworks Making Sense Of Big Data
Mrinal devadas, Hortonworks Making Sense Of Big DataMrinal devadas, Hortonworks Making Sense Of Big Data
Mrinal devadas, Hortonworks Making Sense Of Big DataPatrickCrompton
 
Rik Van Bruggen - Getting beer into and out of neo4j
Rik Van Bruggen - Getting beer into and out of neo4jRik Van Bruggen - Getting beer into and out of neo4j
Rik Van Bruggen - Getting beer into and out of neo4jPatrickCrompton
 
Microsoft Azure User Group
Microsoft Azure User GroupMicrosoft Azure User Group
Microsoft Azure User GroupPatrickCrompton
 
Top 10 photos from Comic Relief 2013
Top 10 photos from Comic Relief 2013Top 10 photos from Comic Relief 2013
Top 10 photos from Comic Relief 2013PatrickCrompton
 
Cloud and Big Data Conference Images
Cloud and Big Data Conference ImagesCloud and Big Data Conference Images
Cloud and Big Data Conference ImagesPatrickCrompton
 

Plus de PatrickCrompton (17)

eSynergy Dave Sayers - Applying DevOps principles in established corporate or...
eSynergy Dave Sayers - Applying DevOps principles in established corporate or...eSynergy Dave Sayers - Applying DevOps principles in established corporate or...
eSynergy Dave Sayers - Applying DevOps principles in established corporate or...
 
eSynergy Keiran Sweet - Bringing order to chaos with puppet
eSynergy Keiran Sweet - Bringing order to chaos with puppeteSynergy Keiran Sweet - Bringing order to chaos with puppet
eSynergy Keiran Sweet - Bringing order to chaos with puppet
 
eSynergy Dave Sayers - Applying DevOps principles in established corporate or...
eSynergy Dave Sayers - Applying DevOps principles in established corporate or...eSynergy Dave Sayers - Applying DevOps principles in established corporate or...
eSynergy Dave Sayers - Applying DevOps principles in established corporate or...
 
eSynergy Paul Swartout - DevOps - what is it and why is it valuable to business
eSynergy Paul Swartout - DevOps - what is it and why is it valuable to businesseSynergy Paul Swartout - DevOps - what is it and why is it valuable to business
eSynergy Paul Swartout - DevOps - what is it and why is it valuable to business
 
APSCo Cup Winners 2013
APSCo Cup Winners 2013APSCo Cup Winners 2013
APSCo Cup Winners 2013
 
Mrinal devadas, Hortonworks Making Sense Of Big Data
Mrinal devadas, Hortonworks Making Sense Of Big DataMrinal devadas, Hortonworks Making Sense Of Big Data
Mrinal devadas, Hortonworks Making Sense Of Big Data
 
Rik Van Bruggen - Getting beer into and out of neo4j
Rik Van Bruggen - Getting beer into and out of neo4jRik Van Bruggen - Getting beer into and out of neo4j
Rik Van Bruggen - Getting beer into and out of neo4j
 
Happy Easter
Happy EasterHappy Easter
Happy Easter
 
Microsoft Azure User Group
Microsoft Azure User GroupMicrosoft Azure User Group
Microsoft Azure User Group
 
Top 10 photos from Comic Relief 2013
Top 10 photos from Comic Relief 2013Top 10 photos from Comic Relief 2013
Top 10 photos from Comic Relief 2013
 
Team photo
Team photoTeam photo
Team photo
 
Cloud and Big Data Conference Images
Cloud and Big Data Conference ImagesCloud and Big Data Conference Images
Cloud and Big Data Conference Images
 
Tim Marston.
Tim Marston.Tim Marston.
Tim Marston.
 
Tim marston
Tim marstonTim marston
Tim marston
 
Michael newberry
Michael newberryMichael newberry
Michael newberry
 
Barak regev
Barak regevBarak regev
Barak regev
 
Andy cross
Andy crossAndy cross
Andy cross
 

Dernier

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 

Dernier (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 

eSynergy Andy Hawkins - Enabling DevOps through next generation configuration management

  • 1. Configuration Management for the Devops generation. Friday, 17 May 13
  • 2. We Live In A Confusing World? Friday, 17 May 13
  • 3. And We’ve All Experienced This? Sometimes Feels Like it is Dev vs. Ops vs. ITIL? Friday, 17 May 13
  • 4. * Applications delivered quickly to help business succeed * Allowing us to work on interesting projects * Tools that will simplify configuration, release and change But We All Want The Same Thing? Friday, 17 May 13
  • 5. * Applications delivered quickly to help business succeed * Allowing us to work on interesting projects * Tools that will simplify configuration, release and change But We All Want The Same Thing? Friday, 17 May 13
  • 6. * Applications delivered quickly to help business succeed * Allowing us to work on interesting projects * Tools that will simplify configuration, release and change But We All Want The Same Thing? And not this ? Friday, 17 May 13
  • 7. *You built your own or *You bought something * You had to bend your thinking * It was hard to install if it worked * You had an empty vessel * Did it support multiple OS’s or scale It took a long time to go anywhere. In The Past Friday, 17 May 13
  • 8. Enter DevOps and Chef Friday, 17 May 13
  • 9. Chef is an automation platform for developers & systems engineers to continuously define, build, and manage infrastructure. CHEF USES: Recipes and Cookbooks that describe Infrastructure as Code. Chef enables people to easily build & manage complex & dynamic applications at massive scale • New model for describing infrastructure that promotes reuse • Programmatically provision and configure • Reconstruct business from code repository, data backup, and bare metal resources Chef Chef is available in open source, PaaS and Enterprise options Friday, 17 May 13
  • 11. Jboss App Memcache Postgres Slaves Postgres Master NagiosGraphite Typical Infrastructure Friday, 17 May 13
  • 12. Jboss App Memcache Postgres Slaves Postgres Master NagiosGraphite • Move SSH off port 22 • Lets put it on 2022 New Compliance Mandate! Friday, 17 May 13
  • 13. Jboss App Memcache Postgres Slaves Postgres Master NagiosGraphite • Change, Restart • Repeat • Typically manually Many Changes , Mostly Manual? • Don’t break anything! • Bob just got fired =( Friday, 17 May 13
  • 14. Jboss App Memcache Postgres Slaves Postgres Master NagiosGraphite • More Complexity • More wiring • Bigger run-book Scale Out Friday, 17 May 13
  • 15. And It Gets Worse? Application Servers Application Database Cache Load Balancers Floating IP? Application Databases Friday, 17 May 13
  • 16. And It Gets Worse? Application Servers Application Database Cache Load Balancers Floating IP? Application Databases Evolving complexity Virtualization Cloud Portability Friday, 17 May 13
  • 19. • But you already guessed that, didn’t you? Chef Solves this Problem Friday, 17 May 13
  • 20. Chef is Infrastructure as Code http://www.flickr.com/photos/louisb/4555295187/ • Programmatically provision and configure • Treat like any other code base • Reconstruct business from code repository, data backup, and bare metal resources. Friday, 17 May 13
  • 21. • Chef-Client generates configurations directly on nodes from their run list • Reduce management complexity through abstraction • Store the configuration of your programs in version control http://www.flickr.com/photos/ssoosay/5126146763/ Nodes Friday, 17 May 13
  • 22. Collections of Resources • Networking • Files • Directories • Symlinks • Mounts • Routes • Users • Groups • Tasks • Packages • Software • Services • Configurations • Other Stuff http://www.flickr.com/photos/stevekeys/3123167585/ Friday, 17 May 13
  • 23. Declarative Interface to Resources • Define policy • Say what, not how • Pull not Push http://www.flickr.com/photos/bixentro/2591838509/ Friday, 17 May 13
  • 24. Recipes and Cookbooks • Recipes are collections of Resources • Cookbooks contain recipes, templates, files, custom resources, etc • Code re-use and modularity • Written in Ruby - extend as necessary • Hundreds already on Community.opscode.com http://www.flickr.com/photos/shutterhacks/4474421855/ Friday, 17 May 13
  • 25. http://www.flickr.com/photos/kathycsus/2686772625 • IP addresses • Hostnames • FQDNs • Search for when static config isn’t enough • data-driven power Search Friday, 17 May 13
  • 26. pool_members = search("node","role:webserver”) template "/etc/haproxy/haproxy.cfg" do source "haproxy-app_lb.cfg.erb" owner "root" group "root" mode 0644 variables :pool_members => pool_members.uniq notifies :restart, "service[haproxy]" end Pass Results to Templates Friday, 17 May 13
  • 27. # Set up application listeners here. listen application 0.0.0.0:80 balance roundrobin <% @pool_members.each do |member| -%> server <%= member[:hostname] %> <%= member[:ipaddress] %>:> weight 1 maxconn 1 check <% end -%> <% if node["haproxy"]["enable_admin"] -%> listen admin 0.0.0.0:22002 mode http stats uri / <% end -%> Pass Results to Templates Friday, 17 May 13
  • 28. Jboss App Memcache Postgres Slaves Postgres Master So when this NagiosGraphite Friday, 17 May 13
  • 29. Jboss App Memcache Postgres Slaves Postgres Master NagiosGraphite Becomes this Friday, 17 May 13
  • 30. Jboss App Memcache Postgres Slaves Postgres Master NagiosGraphite Updates can be automatic Friday, 17 May 13
  • 31. NagiosGraphite Count the resources Jboss App Memcache Postgres Slaves • Load balancer config • Nagios host ping • Nagios host ssh • Nagios host HTTP • Nagios host app health • Graphite CPU • Graphite Memory • Graphite Disk • Graphite SNMP • Memcache firewall • Postgres firewall • Postgres authZ config • 12+ resource changes for 1 node addition Friday, 17 May 13
  • 32. Build anything • Simple internal applications • Complex external applications • Workstations • Hadoop clusters • IaaS infrastructure • PaaS infrastructure • SaaS applications • Storage systems • You name it http://www.flickr.com/photos/hyku/245010680/ Friday, 17 May 13
  • 33. And manage it simply http://www.flickr.com/photos/helico/404640681/ • Automatically reconfigure everything • Linux,Windows, Unixes, BSDs • Load balancers • Metrics collection systems • Monitoring systems • Cloud migrations become trivial Friday, 17 May 13
  • 35. knife with the Chef Server • knife node • create/delete/edit • list • knife cookbook ... • knife role ... • knife environment ... Friday, 17 May 13
  • 36. knife search • What operating systems are running? • What version of ruby is running? • How much memory do you have on each machine? Friday, 17 May 13
  • 37. Discovery & Data Driven (Ohai!) Friday, 17 May 13
  • 38. knife search knife search “*:*” -a platform knife search “*:*” -a languages.ruby.version knife search “*:*” -a memory.total Friday, 17 May 13
  • 39. knife ssh $ knife ssh "roles:rails-web" "sudo chef-client" Friday, 17 May 13
  • 40. And the Cloud..... $ knife ec2 Available ec2 subcommands: (for details, knife SUB-COMMAND -- help) ** EC2 COMMANDS ** knife ec2 flavor list (options) knife ec2 instance data (options) knife ec2 server create (options) knife ec2 server delete SERVER [SERVER] (options) knife ec2 server list (options) $ knife ec2 server create -S keypair -i ~/.ssh/id_rsa -x ubuntu -I ami-4721882e -f m1.small -r 'role[webserver]' • knife ec2 • knife rackspace • knife hp • knife google • knife azure • knife cloudstack • knife openstack • knife vsphere • ... and many others Friday, 17 May 13
  • 42. The Chef Community • Apache License,Version 2.0 • 1200+ Individual contributors • 200+ Corporate contributors • Google, HP, Dell, Rackspace,VMware, Joyent, Calxeda, Heroku, SUSE and many more • 800+ cookbooks • http://community.opscode.com Friday, 17 May 13
  • 43. How Do I Start? •docs.opscode.com •learnchef.com •opscode.eventbrite.com •lists.opscode.com Friday, 17 May 13
  • 46. Thanks! Any Questions? Andy Hawkins andy@opscode.com Friday, 17 May 13