This document provides an overview of CHEF, including its architecture, main tools, cookbook building blocks, recipes, templates, attributes, roles, nodes, knife, LWRPs, testing with Kitchen, and best practices. The architecture includes a development workstation with chef-dk, knife, and chef-kitchen/other testing tools. Nodes use chef-client and ohai. Cookbooks contain metadata, resources, attributes, files/templates, recipes, libraries, and LWRPs. Recipes are collections of resources written in Ruby DSL. Templates combine text and Ruby. Attributes are accessed in recipes. Knife manages infrastructure on the Chef server. LWRPs extend Chef with custom resources. Kitchen tests cookbooks