Opscode
Home     Introduction to Chef     Cookbooks     Blog     GitHub     Tickets 

Chef Client

The Chef Client is where almost all of the work in Chef is done. It communicates with the Chef Server via REST, authenticates via Signed Header Authentication, and compiles and executes Cookbooks.

Clients do work for one or many Nodes

A Chef Client does work on behalf of a Node. A single Chef Client can run recipes for multiple Nodes.

Clients do all the work

Clients are where all the action happens - the Chef Server and Chef Indexer are largely services that exist only to provide the Client with information.

You can run the client periodically

If you want, you can run the Chef Client as a persistent daemon. To do this, make your startup script for the chef client execute something like:

Chef Client Interval and Splay

The -i option provides an Interval - it's how often the Chef client will attempt to wake up and Converge this Node. The -s option is the Splay - a random piece of time added to the interval, which helps avoid the thundering herd problem.

The entire set of options available can be found with the incantation:

Chef Client Option List

The JSON_ATTRIBS can be a run_list and used to specify roles and/or recipes to add to the node

Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.

Copyright © 2009 Opscode, Inc. All Rights Reserved.