A few months ago, I posted briefly on how to install Chef 10 server on CentOS. This post revisits the process for Chef 11.
These steps were performed on a default CentOS 6.3 server install.
First, navigate to the Chef install page to get the package download URL. Use the form on the “Chef Server” tab to select the appropriate drop-down items for your system.
Install the package from the given URL.
1
|
|
The package just puts the bits on disk (in /opt/chef-server
). The
next step is to configure the Chef Server and start it.
1
|
|
This runs the embedded chef-solo
with the included cookbooks, and
sets up everything required – Erchef, RabbitMQ, PostgreSQL, etc.
Next, run the Opscode Pedant test suite. This will verify that everything is working.
1
|
|
Copy the default admin user’s key and the validator key to your local workstation system that you have Chef client installed on, and create a new user for yourself with knife. You’ll need version 11.2.0. The key files on the Chef Server are readable only by root.
1 2 |
|
Use knife configure -i
to create an initial ~/.chef/knife.rb
and
new administrative API user for yourself. Use the FQDN of your newly
installed Chef Server, with HTTPS. The validation key needs to be
copied over from the Chef Server from
/etc/chef-server/chef-validator.pem
to ~/.chef
to use it for
automatically bootstrapping nodes with knife bootstrap
.
1
|
|
The .chef/knife.rb
file should look something like this:
1 2 3 4 5 6 7 8 |
|
Your Chef Server is now ready to use. Test connectivity as your user with knife:
1 2 3 4 5 6 |
|
In previous versions of Open Source Chef Server, users were API clients. In Chef 11, users are separate entities on the Server.
The chef-server-ctl
command is used on the Chef Server system for
management. It has built-in help (-h
) that will display the various
sub-commands.