• Like
Managing Servers with Chef
Upcoming SlideShare
Loading in...5

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Managing Servers with Chef



  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads


Total Views
On SlideShare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide
  • - Automated releases - version control - Agile practices we know from dev can be used in server/config management
  • Manual - tough to do same way twice, time consuming Build scripts - Brittle (tied to environment), hard to follow


  • 1. Using Chef to Manage Your Server Environments
  • 2. About Blend
  • 3. DevOps (Development / Operations)Combines disciplines ofsoftware development / QA with system administration
  • 4. Building/Deploying• Manually• Build scripts• “I want to tell this computer how it should be set up, and let it do the rest”
  • 5. Chef• Client/Server system for managing configuration• Declarative Recipes define end state instead of construction process• Idempotent - re-running script only causes changes to execute
  • 6. No scripts - recipes• Cookbooks - modules for adding support for software• Recipes - contained by cookbooks, define server configuration, templates, etc• Attributes - configurable variables consumed by recipes • Recipes provide defaults, can be overridden by server, role, or environment • Some generated automatically• Data Bags - hold arbitrary configuration data
  • 7. Parts and pieces• Chef Server - holds cookbooks and configuration for your organization• Chef Client - installed on servers via bootstrap process to execute recipes, solo and client flavors• Ohai - discovery utility that extracts automatic attributes from servers• Knife - command line tool for managing chef
  • 8. Managing/Orchestration• Chef Solo - One server, no management, cookbooks go on server• Hosted Chef - Opscode-provided server, fine-grained permission controls• Chef Server - Self-hosted chef management server• Chef supports git, but git repo and servers don’t talk
  • 9. Development cycle• Create cookbook• Develop/Test• Upload recipe to chef server• Execute on client servers
  • 10. Blend Server Layout/Sites .conf - all apache vhost configs symlink here [sitename] conf - apache and other configs htdocs - web app, usually apache root dir logs - apache and other logs deploy - deploy scripts
  • 11. Development tools• Berkshelf - code gen and dependency management• Vagrant - automated testing environments
  • 12. Linkses• Chef - community.opscode.com• Berkshelf - berkshelf.com• Vagrant - vagrantup.com• Epic Tutorial - vialstudios.com/guide-authoring-cookbooks.html
  • 13. Questions? Joe Kepley Blend Interactive http://blendinteractive.comhttp://github.com/blendinteractive http://joind.in/8102 @joekepley