How to update the chef-client version?

chef-infra

Solution

The following works for me:

$ chef-client -version
Chef: 11.4.0

$ curl -L https://www.opscode.com/chef/install.sh | sudo bash

$ chef-client -version
Chef: 11.8.0

The downloaded "install.sh" script will determine the correct OS and download the appropriate package for your platform. (These packages are all available from a S3 repository)

See also the install page from the Chef site..

Update

knife ssh 'name:[* TO *]' 'curl -L https://www.opscode.com/chef/install.sh | sudo bash'

If you sit behind a corporate firewall you can pull down the package for your platform and install it into you package repository. You are not compelled to use the "install.sh" script that is purely for convenience.

Problem

I have a chef client that is running chef 11.4.0, that means, when I run chef on the machine it says `Starting Chef Client, version 11.4.0`. I know that the latest chef gem is 11.8.0 (locally `knife --version` gives me `Chef: 11.8.0`), and I wanted to have the latest version running in the client, but I couldn't find any standard way to do that. Sorry if the question doesn't make much sense, it might be that my understanding of the whole chef thing is not accurate. Edit: I tried getting to the client machine and running `sudo apt-get update ; sudo apt-get install chef` as mentioned in https://wiki.opscode.com/display/chef/Using+Chef+to+Upgrade+Chef but it says it's already the latest version.

Original source