The Chef Architecture and Workflow
(Roberta: We could also express this as a set of numbered bullet points if that is clearer)
Chef is a client-server architecture. Infrastructure code is entered into one or more recipes, which then live inside a cookbook. Cookbooks are uploaded to a Chef server manually, or more commonly, as part of a code delivery pipeline. The systems under management are called nodes and periodically communicate with the Chef server to retrieve and execute the recipes assigned to them. Most of the processing happens on the nodes, so one server can handle upwards of 10,000 registered nodes.
 System Requirements
Chef Workstation Requirements
Mac OS X: 10.8, 10.9 or 10.10 Microsoft Windows: 7, 8, or 8.1 Ubuntu: 12.04 LTS or 14.04 LTS Red Hat Enterprise Linux: 6 or 7
Chef Server Requirements
CentOS, Oracle Linux or Red Hat Enterprise Linux 5.x, 6.x, or 7.x Ubuntu 12.04 LTS or 14.04 LTS
Minimum 4GB memory, 2.0GHz CPU with 4 cores, 10GB free disk space.
Chef Client Requirements
AIX: 6.1 or 7.1 CentOS, Oracle Linux, RedHat Enterprise Linux: 5.x, 6.x or 7.x FreeBSD: 9 or 10 Solaris: 10 or 11 Ubuntu: 12.04 LTS or 14.04 LTS Microsoft Windows: 2008 or better Mac OS X: 10.8 or better