これは一種のn00bの質問ですが、Chefのドキュメントは役に立ちません。
クックブックのコードを変更したとします。シェフサーバーにアップロードします。このクックブックを使用してノードに変更を適用するにはどうすればよいですか?
これは一種のn00bの質問ですが、Chefのドキュメントは役に立ちません。
クックブックのコードを変更したとします。シェフサーバーにアップロードします。このクックブックを使用してノードに変更を適用するにはどうすればよいですか?
Dracoがコメントしたように、ノードでChefを実行します。クックブック内の変更されたファイルをサーバーから自動的にダウンロードします。
sudo chef-client
Chefをサービスとして実行している場合(Opscodeのchef-clientクックブックサービスレシピなどを使用してセットアップ)、ある時点で自動的に実行されます。Chefサーバーを使用しているため、を使用knife ssh
して検索を実行し、一度に複数のノードでコマンドを実行することもできます。
knife ssh "*:*" "sudo chef-client" -x youruser
「:」を任意のChefSearchQueryに置き換えます。
また、これは環境が役立つ場所です。特定のバージョンのクックブックを環境内のノードに固定できるため、使用が許可されているバージョンを変更するまで、クックブックで行われた変更を取得できません。たとえば、クックブックのバージョン1.0.0があり、「本番環境」をそれに固定し( "= 1.0.0")、アップロードする前にバージョン(1.0.1)をインクリメントすると、本番環境ノードは環境内のバージョンが新しいバージョンに更新されるまで、新しいバージョン。