SlideShare a Scribd company logo
1 of 27
Download to read offline
Infrastructure	 Automation
         with	 Chef


         Marius	 Ducea

      SF	 Bay	 Area	 #LSPE
          Sep	 23,	 2010
whoami


 • 	 System	 Administrator
 • 	 Web	 Operations	 Engineer
 • 	 Consultant
http://www.flickr.com/photos/dunechaser/161509118/
Chef history


     • 	 March	 2008	 –	 first	 commit
     • 	 September	 2008	 –	 Opscode	 founded
     • 	 January	 2009	 –	 public	 release
     • 	 Today	 –	 v0.9.8
Key	 Chef	 Principles

• 	 Idempotent
• 	 Extensible,	 uses	 ruby	 as	 the	 configuration	 language
• 	 Prefers	 failure	 over	 non-deterministic	 success
• 	 Order	 matters,	 simplifying	 dependencies
• 	 Chef	 Clients	 do	 most	 of	 the	 work,	 not	 the	 server.
Chef-Server   Chef-Solo   Opscode Platform



                    Chef-Server
Chef-Server     Chef-Solo      Opscode Platform



                        Chef-Solo
                                

  • run	 chef	 without	 a	 server
  • no	 scalability	 issues
  • no	 search
Chef-Server   Chef-Solo   Opscode Platform



               Opscode	 Platform
Chef-Client       Ohai



                         Chef-Client
                                   

  • runs	 on	 all	 your	 nodes
  • executes	 its	 recipes	 locally
  • runs	 as	 a	 daemon	 or	 from	 cron
Chef-Client          Ohai



  Ohai
• 	 separate	 project

• 	 provides	 metadata	 from	 the
local	 system	 to	 chef-client

• 	 this	 info	 can	 be	 used	 in
recipes	 or	 templates

• 	 produces	 a	 JSON	 data	 blob
Nodes                                                Chef components
  Roles
Cookbooks
                              Node
                                 

    • any	 system	 than	 runs	 chef-client
    • has	 a	 run	 list
    • recipes	 and	 roles	 are	 applied	 in	 order
Nodes             Chef components
  Roles
Cookbooks
            Role
Nodes                Chef components
  Roles
Cookbooks
  Recipes
              Recipe
                   
 Attributes
 Templates
 Metadata
Nodes                    Chef components
  Roles
Cookbooks
  Recipes
              Attributes
                       
 Attributes
 Templates
 Metadata
Nodes                  Chef components
  Roles
Cookbooks
  Recipes
              Template
                     
 Attributes
 Templates
 Metadata
Nodes                  Chef components
  Roles
Cookbooks
  Recipes
              Metadata
                     
 Attributes
 Templates
 Metadata
Nodes                   Chef components
  Roles
Cookbooks
  Recipes
              Cookbook
                     
 Attributes
 Templates
 Metadata
Nodes                    Reuse
  Roles
Cookbooks
  Recipes
              Cookbooks
                      
 Attributes
 Templates
 Metadata
Nodes                                 Share
  Roles
Cookbooks
  Recipes
              cookbooks.opscode.com
 Attributes
 Templates
 Metadata
Nodes                                     Chef components
  Roles
Cookbooks
  Recipes
 Attributes
 Templates
 Metadata
 Search                  Search

              sample	 nagios	 	 nrpe	 recipe
Nodes                       Chef components
  Roles
Cookbooks
  Recipes
              nrpe	 recipe
                         
 Attributes
 Templates
 Metadata
 Search
Nodes                         Chef components
  Roles
Cookbooks
  Recipes
              nagios	 recipe
                           
 Attributes
 Templates
 Metadata
 Search
Workflow


First	 you'll	 need	 a	 chef-repo

(git	 clone	 git://github.com/opscode/chef-repo.git)



cookbooks/	 -	 Cookbooks	 you	 download	 or	 create.

roles/	 -	 Store	 roles	 in	 .rb	 or	 .json	 in	 the	 repository.



Use	 rake	 tasks	 to	 upload	 to	 the	 chef	 server

(rake roles upload_cookbooks)


               http://wiki.opscode.com/display/chef/Chef+Repository
knife

       
command	 line	 utility
       
uses	 the	 chef-server	 api.
       
it	 can	 create/update/delete	 roles,	 cookbooks

       
has	 support	 for	 various	 cloud	 providers	 like	 ec2,	 
       
rackspace:


	 	 knife	 ec2	 server	 list

	 	 knife	 ec2	 server	 create	 role[Web]	 -i	 ami-1634de7f	 -f	 t1.micro	 
	 	 -x	 ubuntu	 -I	 ~/.ssh/id_rsa-my-keypair	 -S	 my-keypair

                        http://wiki.opscode.com/display/chef/Knife
Contributing	 to	 chef


Apache	 license	 version	 2

Very	 active	 and	 helpful	 community

Fill	 out	 the	 CLA



Github	 used	 for	 opscode	 projects 

(chef/cookbooks/ohai)

Fork	 the	 project,	 work	 on	 topic	 branches. 



           http://wiki.opscode.com/display/chef/How+to+Contribute
           http://wiki.opscode.com/display/chef/Working+with+git
Chef	 is	 awesome...

• 	 a	 library	 for	 configuration	 management
• 	 an	 api	 for	 your	 entire	 infrastructure
• 	 powerful	 search
• 	 sharable	 cookbooks

Keep	 in	 mind...
• 	 chef	 is	 still	 young
• 	 limited	 os	 support
• 	 ubuntu	 love
Questions?


Marius	 Ducea

marius@promethost.com

@mariusducea


github.com/mdxp/cookbooks

blog:	 www.ducea.com

site:	 promethost.com


slides:	 slideshare.net/mdxp

More Related Content

What's hot

CakePHP SessionAcl Component
CakePHP SessionAcl ComponentCakePHP SessionAcl Component
CakePHP SessionAcl ComponentTakashi Nojima
 
Chef for the Symfony developer
Chef for the Symfony developerChef for the Symfony developer
Chef for the Symfony developerCarlos Mafla
 
Growing Pains with Chef – a Tale of DevOps in a Large Organization
Growing Pains with Chef – a Tale of DevOps in a Large OrganizationGrowing Pains with Chef – a Tale of DevOps in a Large Organization
Growing Pains with Chef – a Tale of DevOps in a Large OrganizationChef Software, Inc.
 
Chef Cookbook Design Patterns
Chef Cookbook Design PatternsChef Cookbook Design Patterns
Chef Cookbook Design PatternsEric Krupnik
 
Be happy with Ruby on Rails - CEUNSP Itu
Be happy with Ruby on Rails - CEUNSP ItuBe happy with Ruby on Rails - CEUNSP Itu
Be happy with Ruby on Rails - CEUNSP ItuLucas Renan
 
Automating your infrastructure with Chef
Automating your infrastructure with ChefAutomating your infrastructure with Chef
Automating your infrastructure with ChefJohn Ewart
 
Chef for Openstack
Chef for OpenstackChef for Openstack
Chef for OpenstackMohit Sethi
 
CLUG 2014-10 - Cookbook CI with Jenkins
CLUG 2014-10 - Cookbook CI with JenkinsCLUG 2014-10 - Cookbook CI with Jenkins
CLUG 2014-10 - Cookbook CI with JenkinsZachary Stevens
 
Chef - Administration for programmers
Chef - Administration for programmersChef - Administration for programmers
Chef - Administration for programmersmrsabo
 
2015 08-11-scdo-meetup
2015 08-11-scdo-meetup2015 08-11-scdo-meetup
2015 08-11-scdo-meetupSuresh Paulraj
 
Rails Engine | Modular application
Rails Engine | Modular applicationRails Engine | Modular application
Rails Engine | Modular applicationmirrec
 
Rails Engine :: modularize you app
Rails Engine :: modularize you appRails Engine :: modularize you app
Rails Engine :: modularize you appMuntasim Ahmed
 
Rails Engine Patterns
Rails Engine PatternsRails Engine Patterns
Rails Engine PatternsAndy Maleh
 
Chef Intro @ SF Bay Area LSPE meetup
Chef Intro @ SF Bay Area LSPE meetupChef Intro @ SF Bay Area LSPE meetup
Chef Intro @ SF Bay Area LSPE meetupmdxp
 
Breaking Technology Silos with Chef
Breaking Technology Silos with ChefBreaking Technology Silos with Chef
Breaking Technology Silos with ChefSean Walberg
 
Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...
Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...
Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...Chef Software, Inc.
 
There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...
There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...
There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...Chef
 

What's hot (20)

Chef
ChefChef
Chef
 
CakePHP SessionAcl Component
CakePHP SessionAcl ComponentCakePHP SessionAcl Component
CakePHP SessionAcl Component
 
Chef for the Symfony developer
Chef for the Symfony developerChef for the Symfony developer
Chef for the Symfony developer
 
Growing Pains with Chef – a Tale of DevOps in a Large Organization
Growing Pains with Chef – a Tale of DevOps in a Large OrganizationGrowing Pains with Chef – a Tale of DevOps in a Large Organization
Growing Pains with Chef – a Tale of DevOps in a Large Organization
 
Chef Cookbook Design Patterns
Chef Cookbook Design PatternsChef Cookbook Design Patterns
Chef Cookbook Design Patterns
 
Be happy with Ruby on Rails - CEUNSP Itu
Be happy with Ruby on Rails - CEUNSP ItuBe happy with Ruby on Rails - CEUNSP Itu
Be happy with Ruby on Rails - CEUNSP Itu
 
Automating your infrastructure with Chef
Automating your infrastructure with ChefAutomating your infrastructure with Chef
Automating your infrastructure with Chef
 
Chef for Openstack
Chef for OpenstackChef for Openstack
Chef for Openstack
 
CLUG 2014-10 - Cookbook CI with Jenkins
CLUG 2014-10 - Cookbook CI with JenkinsCLUG 2014-10 - Cookbook CI with Jenkins
CLUG 2014-10 - Cookbook CI with Jenkins
 
Chef - Administration for programmers
Chef - Administration for programmersChef - Administration for programmers
Chef - Administration for programmers
 
2015 08-11-scdo-meetup
2015 08-11-scdo-meetup2015 08-11-scdo-meetup
2015 08-11-scdo-meetup
 
Rails Engine | Modular application
Rails Engine | Modular applicationRails Engine | Modular application
Rails Engine | Modular application
 
Rails Engine :: modularize you app
Rails Engine :: modularize you appRails Engine :: modularize you app
Rails Engine :: modularize you app
 
Rails Engine Patterns
Rails Engine PatternsRails Engine Patterns
Rails Engine Patterns
 
The Berkshelf Way
The Berkshelf WayThe Berkshelf Way
The Berkshelf Way
 
Cocoa on-rails-3rd
Cocoa on-rails-3rdCocoa on-rails-3rd
Cocoa on-rails-3rd
 
Chef Intro @ SF Bay Area LSPE meetup
Chef Intro @ SF Bay Area LSPE meetupChef Intro @ SF Bay Area LSPE meetup
Chef Intro @ SF Bay Area LSPE meetup
 
Breaking Technology Silos with Chef
Breaking Technology Silos with ChefBreaking Technology Silos with Chef
Breaking Technology Silos with Chef
 
Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...
Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...
Chef Fundamentals Training Series Module 6: Roles, Environments, Community Co...
 
There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...
There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...
There and Back Again: How We Drank the Chef Kool-Aid, Sobered Up, and Learned...
 

Viewers also liked

Drupal 8 Involvement with Promet Source
Drupal 8 Involvement with Promet SourceDrupal 8 Involvement with Promet Source
Drupal 8 Involvement with Promet SourcePromet Source
 
Drupal Continuous Integration and devops - Beyond Jenkins
Drupal Continuous Integration and devops - Beyond JenkinsDrupal Continuous Integration and devops - Beyond Jenkins
Drupal Continuous Integration and devops - Beyond JenkinsPromet Source
 
Pitfalls of Object Oriented Programming by SONY
Pitfalls of Object Oriented Programming by SONYPitfalls of Object Oriented Programming by SONY
Pitfalls of Object Oriented Programming by SONYAnaya Medias Swiss
 
Scala Days San Francisco
Scala Days San FranciscoScala Days San Francisco
Scala Days San FranciscoMartin Odersky
 
What Linux can learn from Solaris performance and vice-versa
What Linux can learn from Solaris performance and vice-versaWhat Linux can learn from Solaris performance and vice-versa
What Linux can learn from Solaris performance and vice-versaBrendan Gregg
 

Viewers also liked (6)

Drupal 8 Involvement with Promet Source
Drupal 8 Involvement with Promet SourceDrupal 8 Involvement with Promet Source
Drupal 8 Involvement with Promet Source
 
Drupal Continuous Integration and devops - Beyond Jenkins
Drupal Continuous Integration and devops - Beyond JenkinsDrupal Continuous Integration and devops - Beyond Jenkins
Drupal Continuous Integration and devops - Beyond Jenkins
 
Pitfalls of Object Oriented Programming by SONY
Pitfalls of Object Oriented Programming by SONYPitfalls of Object Oriented Programming by SONY
Pitfalls of Object Oriented Programming by SONY
 
Scala Days San Francisco
Scala Days San FranciscoScala Days San Francisco
Scala Days San Francisco
 
Git Branching Model
Git Branching ModelGit Branching Model
Git Branching Model
 
What Linux can learn from Solaris performance and vice-versa
What Linux can learn from Solaris performance and vice-versaWhat Linux can learn from Solaris performance and vice-versa
What Linux can learn from Solaris performance and vice-versa
 

Similar to Chef Intro @ SF Bay Area LSPE meetup

Overview of chef ( Infrastructure as a Code )
Overview of chef ( Infrastructure as a Code )Overview of chef ( Infrastructure as a Code )
Overview of chef ( Infrastructure as a Code )Pravin Mishra
 
Introduction to chef framework
Introduction to chef frameworkIntroduction to chef framework
Introduction to chef frameworkmorgoth
 
CHEF - by Scott Russel
CHEF - by Scott RusselCHEF - by Scott Russel
CHEF - by Scott RusselKangaroot
 
CIRCUIT 2015 - AEM Infrastructure Automation with Chef Cookbooks
CIRCUIT 2015 - AEM Infrastructure Automation with Chef CookbooksCIRCUIT 2015 - AEM Infrastructure Automation with Chef Cookbooks
CIRCUIT 2015 - AEM Infrastructure Automation with Chef CookbooksICF CIRCUIT
 
Cook like a Chef
Cook like a ChefCook like a Chef
Cook like a ChefIan Yang
 
Introduction to Cooking with Chef
Introduction to Cooking with ChefIntroduction to Cooking with Chef
Introduction to Cooking with ChefJohn Osborne
 
Emerging chef patterns and practices
Emerging chef patterns and practicesEmerging chef patterns and practices
Emerging chef patterns and practicesOwain Perry
 
Chef Fundamentals Training Series Module 1: Overview of Chef
Chef Fundamentals Training Series Module 1: Overview of ChefChef Fundamentals Training Series Module 1: Overview of Chef
Chef Fundamentals Training Series Module 1: Overview of ChefChef Software, Inc.
 
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeIntroduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeJosh Padnick
 
Cook Infrastructure with chef -- Justeat.IN
Cook Infrastructure with chef  -- Justeat.INCook Infrastructure with chef  -- Justeat.IN
Cook Infrastructure with chef -- Justeat.INRajesh Hegde
 
Chef Fundamentals Training Series Module 2: Workstation Setup
Chef Fundamentals Training Series Module 2: Workstation SetupChef Fundamentals Training Series Module 2: Workstation Setup
Chef Fundamentals Training Series Module 2: Workstation SetupChef Software, Inc.
 
Chef at EIS
Chef at EISChef at EIS
Chef at EIScarpnick
 
Chef - Infrastructure Automation for the Masses
Chef - Infrastructure Automation for the Masses�Chef - Infrastructure Automation for the Masses�
Chef - Infrastructure Automation for the MassesSai Perchard
 
under the covers -- chef in 20 minutes or less
under the covers -- chef in 20 minutes or lessunder the covers -- chef in 20 minutes or less
under the covers -- chef in 20 minutes or lesssarahnovotny
 

Similar to Chef Intro @ SF Bay Area LSPE meetup (20)

Chef for openstack
Chef for openstackChef for openstack
Chef for openstack
 
Overview of chef ( Infrastructure as a Code )
Overview of chef ( Infrastructure as a Code )Overview of chef ( Infrastructure as a Code )
Overview of chef ( Infrastructure as a Code )
 
Introduction to chef framework
Introduction to chef frameworkIntroduction to chef framework
Introduction to chef framework
 
CHEF - by Scott Russel
CHEF - by Scott RusselCHEF - by Scott Russel
CHEF - by Scott Russel
 
Chef introduction
Chef introductionChef introduction
Chef introduction
 
CIRCUIT 2015 - AEM Infrastructure Automation with Chef Cookbooks
CIRCUIT 2015 - AEM Infrastructure Automation with Chef CookbooksCIRCUIT 2015 - AEM Infrastructure Automation with Chef Cookbooks
CIRCUIT 2015 - AEM Infrastructure Automation with Chef Cookbooks
 
Cook like a Chef
Cook like a ChefCook like a Chef
Cook like a Chef
 
Chef Cookbook Workflow
Chef Cookbook WorkflowChef Cookbook Workflow
Chef Cookbook Workflow
 
Introduction to Cooking with Chef
Introduction to Cooking with ChefIntroduction to Cooking with Chef
Introduction to Cooking with Chef
 
Emerging chef patterns and practices
Emerging chef patterns and practicesEmerging chef patterns and practices
Emerging chef patterns and practices
 
Chef
ChefChef
Chef
 
Chef Fundamentals Training Series Module 1: Overview of Chef
Chef Fundamentals Training Series Module 1: Overview of ChefChef Fundamentals Training Series Module 1: Overview of Chef
Chef Fundamentals Training Series Module 1: Overview of Chef
 
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In CodeIntroduction to Chef: Automate Your Infrastructure by Modeling It In Code
Introduction to Chef: Automate Your Infrastructure by Modeling It In Code
 
Cook Infrastructure with chef -- Justeat.IN
Cook Infrastructure with chef  -- Justeat.INCook Infrastructure with chef  -- Justeat.IN
Cook Infrastructure with chef -- Justeat.IN
 
Chef Fundamentals Training Series Module 2: Workstation Setup
Chef Fundamentals Training Series Module 2: Workstation SetupChef Fundamentals Training Series Module 2: Workstation Setup
Chef Fundamentals Training Series Module 2: Workstation Setup
 
Chef at EIS
Chef at EISChef at EIS
Chef at EIS
 
Chef fundamentals
Chef fundamentalsChef fundamentals
Chef fundamentals
 
DevOps and Chef improve your life
DevOps and Chef improve your life DevOps and Chef improve your life
DevOps and Chef improve your life
 
Chef - Infrastructure Automation for the Masses
Chef - Infrastructure Automation for the Masses�Chef - Infrastructure Automation for the Masses�
Chef - Infrastructure Automation for the Masses
 
under the covers -- chef in 20 minutes or less
under the covers -- chef in 20 minutes or lessunder the covers -- chef in 20 minutes or less
under the covers -- chef in 20 minutes or less
 

More from Promet Source

How To Start Building Your Own Website With Drupal by Mary Chris Casis
How To Start Building Your Own Website With Drupal by Mary Chris CasisHow To Start Building Your Own Website With Drupal by Mary Chris Casis
How To Start Building Your Own Website With Drupal by Mary Chris CasisPromet Source
 
DrupalCamp Cebu 2018 R&F by Andrew Kucharski
DrupalCamp Cebu 2018 R&F by Andrew KucharskiDrupalCamp Cebu 2018 R&F by Andrew Kucharski
DrupalCamp Cebu 2018 R&F by Andrew KucharskiPromet Source
 
Unit test in drupal 8 by Pratomo Ardianto Drupalcamp Cebu 2018
Unit test in drupal 8 by Pratomo Ardianto Drupalcamp Cebu 2018Unit test in drupal 8 by Pratomo Ardianto Drupalcamp Cebu 2018
Unit test in drupal 8 by Pratomo Ardianto Drupalcamp Cebu 2018Promet Source
 
Migrating to-Drupal-8 by Bryan Manalo
Migrating to-Drupal-8 by Bryan ManaloMigrating to-Drupal-8 by Bryan Manalo
Migrating to-Drupal-8 by Bryan ManaloPromet Source
 
Why and When to use Drupal by Luc Bezier - Drupalcamp Cebu 2018
Why and When to use Drupal by Luc Bezier - Drupalcamp Cebu 2018Why and When to use Drupal by Luc Bezier - Drupalcamp Cebu 2018
Why and When to use Drupal by Luc Bezier - Drupalcamp Cebu 2018Promet Source
 
Drupal Development with Docker
Drupal Development with DockerDrupal Development with Docker
Drupal Development with DockerPromet Source
 
Migrating Drupal 7 to Drupal 8
Migrating Drupal 7 to Drupal 8Migrating Drupal 7 to Drupal 8
Migrating Drupal 7 to Drupal 8Promet Source
 
Web Accessibility in Drupal
Web Accessibility in DrupalWeb Accessibility in Drupal
Web Accessibility in DrupalPromet Source
 
Using Commerce License for Premium Content on Drupal Sites
Using Commerce License for Premium Content on Drupal SitesUsing Commerce License for Premium Content on Drupal Sites
Using Commerce License for Premium Content on Drupal SitesPromet Source
 
Behavioral driven development with Behat
Behavioral driven development with BehatBehavioral driven development with Behat
Behavioral driven development with BehatPromet Source
 
Composer tools and frameworks for Drupal
Composer tools and frameworks for DrupalComposer tools and frameworks for Drupal
Composer tools and frameworks for DrupalPromet Source
 
Responsive Design Testing the Promet Way
Responsive Design Testing the Promet WayResponsive Design Testing the Promet Way
Responsive Design Testing the Promet WayPromet Source
 
Optimize and succeed your next Fixed Budget Project planning process
Optimize and succeed your next Fixed Budget Project planning process Optimize and succeed your next Fixed Budget Project planning process
Optimize and succeed your next Fixed Budget Project planning process Promet Source
 
Diy continuous integration
Diy continuous integrationDiy continuous integration
Diy continuous integrationPromet Source
 
Higher Ed Web 2013 presentation - Field of Dreams, build it and they will come
Higher Ed Web 2013 presentation - Field of Dreams, build it and they will comeHigher Ed Web 2013 presentation - Field of Dreams, build it and they will come
Higher Ed Web 2013 presentation - Field of Dreams, build it and they will comePromet Source
 
Getting agile with drupal
Getting agile with drupalGetting agile with drupal
Getting agile with drupalPromet Source
 
Project Estimation Presentation - Donte's 8th level of estimating level of ef...
Project Estimation Presentation - Donte's 8th level of estimating level of ef...Project Estimation Presentation - Donte's 8th level of estimating level of ef...
Project Estimation Presentation - Donte's 8th level of estimating level of ef...Promet Source
 
DrupalCon 2013 Making Support Fun & Profitable
DrupalCon 2013 Making Support Fun & ProfitableDrupalCon 2013 Making Support Fun & Profitable
DrupalCon 2013 Making Support Fun & ProfitablePromet Source
 
DevOps for Drupal: Why We Cook With Chef
DevOps for Drupal: Why We Cook With ChefDevOps for Drupal: Why We Cook With Chef
DevOps for Drupal: Why We Cook With ChefPromet Source
 
DIY Support? 5 Key Benefits of Managed Drupal Support
DIY Support? 5 Key Benefits of Managed Drupal SupportDIY Support? 5 Key Benefits of Managed Drupal Support
DIY Support? 5 Key Benefits of Managed Drupal SupportPromet Source
 

More from Promet Source (20)

How To Start Building Your Own Website With Drupal by Mary Chris Casis
How To Start Building Your Own Website With Drupal by Mary Chris CasisHow To Start Building Your Own Website With Drupal by Mary Chris Casis
How To Start Building Your Own Website With Drupal by Mary Chris Casis
 
DrupalCamp Cebu 2018 R&F by Andrew Kucharski
DrupalCamp Cebu 2018 R&F by Andrew KucharskiDrupalCamp Cebu 2018 R&F by Andrew Kucharski
DrupalCamp Cebu 2018 R&F by Andrew Kucharski
 
Unit test in drupal 8 by Pratomo Ardianto Drupalcamp Cebu 2018
Unit test in drupal 8 by Pratomo Ardianto Drupalcamp Cebu 2018Unit test in drupal 8 by Pratomo Ardianto Drupalcamp Cebu 2018
Unit test in drupal 8 by Pratomo Ardianto Drupalcamp Cebu 2018
 
Migrating to-Drupal-8 by Bryan Manalo
Migrating to-Drupal-8 by Bryan ManaloMigrating to-Drupal-8 by Bryan Manalo
Migrating to-Drupal-8 by Bryan Manalo
 
Why and When to use Drupal by Luc Bezier - Drupalcamp Cebu 2018
Why and When to use Drupal by Luc Bezier - Drupalcamp Cebu 2018Why and When to use Drupal by Luc Bezier - Drupalcamp Cebu 2018
Why and When to use Drupal by Luc Bezier - Drupalcamp Cebu 2018
 
Drupal Development with Docker
Drupal Development with DockerDrupal Development with Docker
Drupal Development with Docker
 
Migrating Drupal 7 to Drupal 8
Migrating Drupal 7 to Drupal 8Migrating Drupal 7 to Drupal 8
Migrating Drupal 7 to Drupal 8
 
Web Accessibility in Drupal
Web Accessibility in DrupalWeb Accessibility in Drupal
Web Accessibility in Drupal
 
Using Commerce License for Premium Content on Drupal Sites
Using Commerce License for Premium Content on Drupal SitesUsing Commerce License for Premium Content on Drupal Sites
Using Commerce License for Premium Content on Drupal Sites
 
Behavioral driven development with Behat
Behavioral driven development with BehatBehavioral driven development with Behat
Behavioral driven development with Behat
 
Composer tools and frameworks for Drupal
Composer tools and frameworks for DrupalComposer tools and frameworks for Drupal
Composer tools and frameworks for Drupal
 
Responsive Design Testing the Promet Way
Responsive Design Testing the Promet WayResponsive Design Testing the Promet Way
Responsive Design Testing the Promet Way
 
Optimize and succeed your next Fixed Budget Project planning process
Optimize and succeed your next Fixed Budget Project planning process Optimize and succeed your next Fixed Budget Project planning process
Optimize and succeed your next Fixed Budget Project planning process
 
Diy continuous integration
Diy continuous integrationDiy continuous integration
Diy continuous integration
 
Higher Ed Web 2013 presentation - Field of Dreams, build it and they will come
Higher Ed Web 2013 presentation - Field of Dreams, build it and they will comeHigher Ed Web 2013 presentation - Field of Dreams, build it and they will come
Higher Ed Web 2013 presentation - Field of Dreams, build it and they will come
 
Getting agile with drupal
Getting agile with drupalGetting agile with drupal
Getting agile with drupal
 
Project Estimation Presentation - Donte's 8th level of estimating level of ef...
Project Estimation Presentation - Donte's 8th level of estimating level of ef...Project Estimation Presentation - Donte's 8th level of estimating level of ef...
Project Estimation Presentation - Donte's 8th level of estimating level of ef...
 
DrupalCon 2013 Making Support Fun & Profitable
DrupalCon 2013 Making Support Fun & ProfitableDrupalCon 2013 Making Support Fun & Profitable
DrupalCon 2013 Making Support Fun & Profitable
 
DevOps for Drupal: Why We Cook With Chef
DevOps for Drupal: Why We Cook With ChefDevOps for Drupal: Why We Cook With Chef
DevOps for Drupal: Why We Cook With Chef
 
DIY Support? 5 Key Benefits of Managed Drupal Support
DIY Support? 5 Key Benefits of Managed Drupal SupportDIY Support? 5 Key Benefits of Managed Drupal Support
DIY Support? 5 Key Benefits of Managed Drupal Support
 

Chef Intro @ SF Bay Area LSPE meetup

  • 1. Infrastructure Automation with Chef Marius Ducea SF Bay Area #LSPE Sep 23, 2010
  • 2. whoami •  System Administrator •  Web Operations Engineer •  Consultant
  • 4. Chef history •  March 2008 – first commit •  September 2008 – Opscode founded •  January 2009 – public release •  Today – v0.9.8
  • 5. Key Chef Principles •  Idempotent •  Extensible, uses ruby as the configuration language •  Prefers failure over non-deterministic success •  Order matters, simplifying dependencies •  Chef Clients do most of the work, not the server.
  • 6. Chef-Server Chef-Solo Opscode Platform Chef-Server
  • 7. Chef-Server Chef-Solo Opscode Platform Chef-Solo • run chef without a server • no scalability issues • no search
  • 8. Chef-Server Chef-Solo Opscode Platform Opscode Platform
  • 9. Chef-Client Ohai Chef-Client • runs on all your nodes • executes its recipes locally • runs as a daemon or from cron
  • 10. Chef-Client Ohai Ohai •  separate project •  provides metadata from the local system to chef-client •  this info can be used in recipes or templates •  produces a JSON data blob
  • 11. Nodes Chef components Roles Cookbooks Node • any system than runs chef-client • has a run list • recipes and roles are applied in order
  • 12. Nodes Chef components Roles Cookbooks Role
  • 13. Nodes Chef components Roles Cookbooks Recipes Recipe Attributes Templates Metadata
  • 14. Nodes Chef components Roles Cookbooks Recipes Attributes Attributes Templates Metadata
  • 15. Nodes Chef components Roles Cookbooks Recipes Template Attributes Templates Metadata
  • 16. Nodes Chef components Roles Cookbooks Recipes Metadata Attributes Templates Metadata
  • 17. Nodes Chef components Roles Cookbooks Recipes Cookbook Attributes Templates Metadata
  • 18. Nodes Reuse Roles Cookbooks Recipes Cookbooks Attributes Templates Metadata
  • 19. Nodes Share Roles Cookbooks Recipes cookbooks.opscode.com Attributes Templates Metadata
  • 20. Nodes Chef components Roles Cookbooks Recipes Attributes Templates Metadata Search Search sample nagios nrpe recipe
  • 21. Nodes Chef components Roles Cookbooks Recipes nrpe recipe Attributes Templates Metadata Search
  • 22. Nodes Chef components Roles Cookbooks Recipes nagios recipe Attributes Templates Metadata Search
  • 23. Workflow First you'll need a chef-repo (git clone git://github.com/opscode/chef-repo.git) cookbooks/ - Cookbooks you download or create. roles/ - Store roles in .rb or .json in the repository. Use rake tasks to upload to the chef server (rake roles upload_cookbooks) http://wiki.opscode.com/display/chef/Chef+Repository
  • 24. knife command line utility uses the chef-server api. it can create/update/delete roles, cookbooks has support for various cloud providers like ec2, rackspace: knife ec2 server list knife ec2 server create role[Web] -i ami-1634de7f -f t1.micro -x ubuntu -I ~/.ssh/id_rsa-my-keypair -S my-keypair http://wiki.opscode.com/display/chef/Knife
  • 25. Contributing to chef Apache license version 2 Very active and helpful community Fill out the CLA Github used for opscode projects  (chef/cookbooks/ohai) Fork the project, work on topic branches.  http://wiki.opscode.com/display/chef/How+to+Contribute http://wiki.opscode.com/display/chef/Working+with+git
  • 26. Chef is awesome... •  a library for configuration management •  an api for your entire infrastructure •  powerful search •  sharable cookbooks Keep in mind... •  chef is still young •  limited os support •  ubuntu love