Client server configuration management
Declarative: Each resource declares what state a part of the system should be in, but not how to get there.
Module: are called resources. They shipped in community cookbooks, or write your own.
A Chef recipe is a file that groups related resources, such as everything needed to configure a web server, database server, or a load balancer.
A Chef cookbook provides structure to your recipes and, in general, helps you stay organized.
Dev Client: The ChefDK includes other command line tools for interacting with Chef. (knife for interacting with the Chef server, and chef for interacting with your local chef code repository (chef-repo).
Chef Server: stores cookbooks, the policies that are applied to the systems in your infrastructure and metadata that describes each system.
Target Nodes - Chef Client: All nodes have the Chef client installed on them.
A Cookbook is used by Chef to define a set of commands that you wish to execute on your managed client.