Opscode Chef is a configuration management automation tool. Configuration management automation is at the heart of DevOps. Puppet Labs offer another competitive tool, Puppet Enterprise. Choosing between the two tools are subject to requirement analysis and specific use cases for each project. In this article, we are considering Opscode Chef.
Opscode offers Chef as three different product. Hosted Chef is a Software-as-a-Service (SaaS) version of Chef server infrastructure. All a user have to do to set up a Chef server is to sign up at Opscode web site. Enterprise Chef is a paid version of the server hosted on the user's own infrastructure. Open Source Chef is an open source version of Chef server. It comes as-is and supported by the Chef community.
An infrastructure that is managed by Chef should have these (physical or virtual) machines:
- Chef Server, this provide a central point of control over all the server machines in the infrastructure.
- Chef Workstation, this is one or more of the workstation that the DevOps staff use to interact with the infrastructure.
- Target Machines, these are at least one of the machines that are managed by Chef.