You are previewing Instant Chef Starter.
O'Reilly logo
Instant Chef Starter

Book Description

A practical beginner’s guide to getting started with Chef, an indispensable tool for provisioning and managing your systems’ infrastructure

  • Learn something new in an Instant! A short, fast, focused guide delivering immediate results.

  • Learn the core capabilities of Chef and how it integrates with your infrastructure

  • Set up your own Chef server for managing your infrastructure

  • Provision new servers with ease and develop your own recipes for use with Chef

In Detail

As any systems administrator will tell you, managing one server can be challenging, let alone a dozen or more. With Chef, you can make managing dozens or even hundreds of servers manageable and learn how to configure and deploy new servers.

"Instant Chef Starter" is a hands-on guide to managing your infrastructure. You will learn the benefits of using Chef as well as how to install, configure, and use the set of tools provided. The book will also cover developing recipes for use with Chef to install software and maintain configurations so managing dozens of servers is no more difficult than managing one.

Learn how Chef fits into your infrastructure, install the software, build your own recipes, and provision servers with ease.

This book covers installing your own Chef server to manage your infrastructure and software configurations. Discover where you can find existing templates for managing software packages and operating systems and then learn to write your own. After you have done that, learn how to apply operations, execute scripts, and manage configurations across an entire network with only one command.

Table of Contents

  1. Instant Chef Starter
    1. Instant Chef Starter
    2. Credits
    3. About the author
    4. About the reviewer
    5. www.packtpub.com
      1. Support files, eBooks, discount offers and more
    6. packtLib.packtpub.com
      1. Why Subscribe?
      2. Free Access for Packt account holders
    7. 1. Instant Chef Starter
      1. So, what is Chef?
        1. Multi-server management
        2. Use case – managing infrastructure for a multi-tiered application
        3. Concepts and terminology
          1. Components
          2. Basic terminology
          3. Back to the problem at hand
          4. Defining roles
          5. Defining nodes
          6. Defining environments
          7. Putting it together
      2. Installation
        1. Getting Chef installed
        2. Installation methods
          1. Installation on a Debian-based distribution
            1. Adding the Opscode repository to your APT sources
            2. Adding the GnuPG key to your keyring
            3. Updating your APT repositories
            4. Installing the Chef Server
          2. Manual installation
            1. Installing Ruby and Rubygems
            2. Installing Chef via gems
            3. Installing CouchDB and RabbitMQ
            4. Installing Chef Server components
            5. Setting up the configuration file
            6. Starting the Chef services
          3. Verifying installation
        3. Configuring knife
          1. Verifying your knife configuration
      3. Quick start
        1. Getting started with using Chef
        2. Bootstrapping servers
          1. How the process works
          2. Examining the bootstrap script
          3. Performing the bootstrap
          4. Verifying the registration
            1. Using knife
            2. Via the web console
        3. Downloading and installing cookbooks
          1. Getting cookbooks from Opscode with knife
          2. Installing cookbooks
            1. Uploading the cookbook
            2. Verifying that it was uploaded
            3. Downloading the dependencies
        4. Creating roles
          1. Setting up roles
            1. Creating a new role
          2. Applying roles to nodes
          3. Viewing the run list
        5. Applying configurations
          1. Verifying it worked
      4. Top features you need to know about
        1. Getting more in-depth with Chef
        2. Developing your own recipes and cookbooks
          1. Cookbook contents
          2. Cookbook file organization
          3. Recipes
          4. Metadata
          5. Attributes
            1. Order of loading
            2. Using attributes
          6. Templates
            1. Template file format
            2. A quick ERB primer
            3. The template resource
            4. Template variables
            5. Where to store templates
          7. Resources
            1. Using resources
          8. Writing a basic recipe
        3. Getting to know your knife (every chef's primary tool)
          1. Commands
          2. Bootstrapping a server
          3. Viewing and manipulating data
          4. Managing nodes and roles
            1. Editing existing data
            2. Creating new entities
          5. Deploying to multiple servers with a single bound!
            1. Chef search queries
            2. Multiple SSH sessions
        4. Advanced data configuration using data bags
          1. What are data bags
            1. Structure
          2. Using in recipes
            1. Accessing data
            2. An example recipe
            3. Searching data bags
            4. Wrapping up
      5. People and places that you should know
        1. Opscode resources
          1. Chef wiki and documentation
          2. Chef source code
          3. Community portal
          4. Opscode blog
          5. Chef users' mailing list
          6. Cookbook repositories
            1. Opscode community cookbooks
            2. Opscode cookbooks on GitHub
        2. Vagrant
          1. Vagrant project
          2. Vagrant butcher
        3. Ruby resources
          1. Ruby quick-start tutorial
          2. Official Ruby documentation
          3. Code academy Ruby track