tutorial series

Getting Started Managing Your Infrastructure Using Chef
  • By Justin Ellingwood and Nik Wakelin

  • Chef is a powerful configuration management system that can be used to programmatically control your infrastructure environment. Leveraging the Chef system allows you to easily recreate your environments in a predictable manner by automating the entire system configuration. In this series, we will introduce you to Chef concepts and demonstrate how to install and utilize the its powerful features to manage your servers.

    Published on November 20, 2013

    Chef is a popular configuration management system that allows you to deploy predictable, complex environments to machines within your organization. In this article, we will discuss the Chef configuration environment and organizational structure at a high level so that you will be familiar with the components that make up a Chef configuration system.

    Published on March 3, 2015

    As your infrastructure requirements expand, managing each server by hand becomes an increasingly difficult task. This difficulty is compounded by the requirement for reproducibility, which becomes necessary if a node fails or if horizontal scaling is needed. In this guide, we will set up a centralized Chef server which will store and serve configuration instructions and node profiling information.

    Published on January 30, 2014

    In this guide, we will work to install one Chef server used to store configuration data and administer access rights. This will serve as a hub for our other machines. We will also install a workstation that will allow us to interact with our server and build our configuration policies. This is where we will do the work to manage our infrastructure environment. Finally, we will bootstrap a node, which will represent one of the servers in our organization that will be managed through Chef.

    Published on February 3, 2014

    In this article, we will discuss the basics of creating a Chef cookbook. Cookbooks are the configuration units that allow us to configure and perform specific tasks within Chef on our remote nodes. We will build cookbooks and then tell Chef which nodes we want to run the steps outlined in the cookbook.

    Published on February 4, 2014

    In previous guides, we discussed Chef terminology, how to install a Chef server, workstation, and node (with Chef 12 or Chef 11), and how to create simple cookbooks to manage configuration. In this guide, we will continue to explore how you can manage your environment with Chef. We will discuss how to use roles and environments to differentiate your servers and services based on what kind of functionality they should exhibit.

    Published on February 9, 2014

    In this article, we will discuss how to use a plugin for knife, the Chef configuration tool, to work with your DigitalOcean droplets. Using this tool, we can create infrastructure droplets and configure them easily from within our Chef system.

    Published on October 31, 2014

    knife is a command line tool packaged with Chef. You’ve likely already used knife to create and manage Chef cookbooks, data bags, or roles. This guide will introduce you to some new knife subcommands for issuing commands and getting information about your Chef cluster.

    Published on February 26, 2015

    In this guide, we will demonstrate how to bootstrap a DigitalOcean server using the metadata service and CloudInit to connect to an existing configuration management deployment. The actual configuration of the server can then be handled by the config management service. We will demonstrate how to bootstrap both Chef and Puppet nodes.