Overview
The Chef Infra Client can manage node states by interacting with a Chef server, or it can directly execute recipes in local mode without a Chef server. It plays a crucial role in maintaining infrastructure consistency and automating repetitive tasks.
Key Features
- Infrastructure automation and configuration management
- Node state synchronization through communication with the Chef server
- Recipe execution in local mode (without a Chef server)
- Management of operating system and application configurations
Key Options
Frequently used options when running the Chef Infra Client.
Execution Modes and Configuration
Information and Help
Generated command:
Try combining the commands.
Description:
`chef` Executes the command.
Combine the above options to virtually execute commands with AI.
Usage Examples
Common scenarios for using the Chef Infra Client.
Running Chef Client in Local Mode
chef-client --local-mode --chef-license accept
Executes recipes based on the Chef repository in the current directory, without a Chef server.
Running in Local Mode with a Specific Run List
chef-client --local-mode --override-runlist 'recipe[my_cookbook::default]' --chef-license accept
Ignores the default run list and executes the 'default' recipe from 'my_cookbook'.
Running by Communicating with a Chef Server
chef-client --chef-license accept
Executes the Chef Infra Client as a node registered with the Chef server (typical production environment).
Installation
Chef Infra Client is not included by default in most Linux distributions, so you need to install it using one of the following methods.
Using the Omnibus Installation Script
This is the most common and recommended method for installing the Chef Infra Client. This script installs it as a single package, including all necessary dependencies.
Installation Command (Linux)
curl -L https://omnitruck.chef.io/install.sh | sudo bash
You can install the Chef Infra Client using the following command.
Verifying Installation
After installation, you can verify if the Chef Infra Client was installed correctly with the following command.
Check Version
chef-client --version
Tips & Notes
Useful tips and points to note when using the Chef Infra Client.
Chef Infra Client 15+ License
Starting with Chef Infra Client version 15, license acceptance is mandatory. You must use the `--chef-license accept` option or set the `CHEF_LICENSE=accept` environment variable.
- Add `--chef-license accept` to the command
- Set environment variable: `export CHEF_LICENSE=accept`
Leveraging Local Mode
In development and testing environments, actively use the `--local-mode` option to quickly test recipes without a Chef server. It's common to run this from within your `chef-repo` directory.
- Quickly test recipes under development
- Useful in environments where you cannot connect to a Chef server
Using Chef Workstation
Chef Workstation is a package that installs all necessary tools for Chef development, including Chef Infra Client, Knife, and Cookstyle, all at once. If you are starting Chef development, installing Chef Workstation is recommended.
- Optimized for setting up a Chef development environment
- Includes all necessary Chef tools