Installing Chef 11 Server on Debian configuring knife


Having your Debian Squeeze installed you can install Chef Server 11 using the Ubuntu 10.10 package.
You can get the package from http://www.opscode.com/chef/install/. The current version is 11.08.

Before doing your installation, check that the hostname command is giving a fully qualified domain name. If not, you should modify the contents of /etc/hostname (example: chef.example.net) and add the fully qualified domain domain also in first place after your IP address in /etc/hosts. While the installation there is some automatic detection for the chef url's, in order to have it correctly, I'd recommend to change these before.

Download the package and install it by executing: dpkg -i chef-server_11.0.8-1.ubuntu.10.04_amd64.deb

The above Ubuntu package works well on Debian Squeeze, on Wheezy you might want to take a more recent version instead (Ubuntu 12.04).

As I had some client timeouts several times because the chef-client ran quite a long time, I suggest as described here to create the file /etc/chef-server/chef-server.rb with the following content before executing the next command: erchef[‘s3_url_ttl’] = 3600
The default timeout is 900 seconds and usually you're just getting a "403 Forbidden" back from Chef server.

Once the package is installed, you need to configure your server: chef-server-ctl reconfigure

Now you should be able to open https://chef.example.net (or whatever fqdn you've given above):

Chef 11 Login

Your first-time username and password are: admin / p@ssw0rd1 (you should change it directly after your first login!)
That's it!

Now, in order to upload cookbooks, you should configure knife:
knife configure -i

Here it's important to give the correct chef server URL, do not use port 4000, just the https url as indicated on the screenshot: https://chef.example.net

Once done you should be able to execute some basic knife commands like: knife client list or knife cookbook list