J'ai un client chef qui exécute chef 11.4.0, cela signifie que, lorsque je dirige le chef sur la machine, il est écrit Starting Chef Client, version 11.4.0
. Je sais que la dernière gemme du chef est 11.8.0 (localement knife --version
me donne Chef: 11.8.0
) et je voulais que la dernière version soit exécutée sur le client, mais je n’ai trouvé aucun moyen standard de le faire.
Désolé si la question n’a pas beaucoup de sens, il se peut que ma compréhension de la question du chef n’est pas exacte.
Edit: j’ai essayé d’accéder à la machine client et d’exécuter Sudo apt-get update ; Sudo apt-get install chef
comme indiqué dans https://wiki.opscode.com/display/chef/Using+Chef+to+Upgrade+Chef mais cela indique que la version la plus récente est déjà en cours .
Ce qui suit fonctionne pour moi:
$ 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
Le script "install.sh" téléchargé déterminera le système d'exploitation correct et téléchargera le package approprié pour votre plate-forme. (Ces packages sont tous disponibles à partir d'un référentiel S3)
Voir aussi la page install du site Chef.
knife ssh 'name:[* TO *]' 'curl -L https://www.opscode.com/chef/install.sh | Sudo bash'
Si vous êtes assis derrière un pare-feu d'entreprise, vous pouvez extraire le package de votre plate-forme et l'installer dans votre référentiel de packages. Vous n'êtes pas obligé d'utiliser le script "install.sh" qui est purement pratique.
Ce script prend argument. Donc, vous pouvez aussi le lancer comme:
(echo "version=11.12.8"; curl -L https://www.opscode.com/chef/install.sh) | Sudo bash
installer une version spécifique
Vous pouvez utiliser le omnibus_updater cookbook.
Oui, en effet correct . Curl -L https://www.opscode.com/chef/install.sh | Sudo bash Essaiera d’obtenir et d’installer la dernière version du client sur votre système.
Par quoi de toute façon, lors de l'exécution de tâches avec chef-server. chef-client ne vous demandera jamais d’erreur telle que: la version de chef-client n’a pas été mise à jour ou ne peut pas être utilisée.
Si vous voulez une version spécifique, essayez ceci:
# install chef 13
curl -L https://www.opscode.com/chef/install.sh | Sudo bash -s -- -v 13
Vous pouvez même rétrograder si vous constatez qu'une nouvelle version nécessite trop de travail de migration.
(Crédits: http://ionrails.com/2013/04/19/downgrading-chef-client/ )