2

これは一種のn00bの質問ですが、Chefのドキュメントは役に立ちません。

クックブックのコードを変更したとします。シェフサーバーにアップロードします。このクックブックを使用してノードに変更を適用するにはどうすればよいですか?

4

1 に答える 1

9

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)をインクリメントすると、本番環境ノードは環境内のバージョンが新しいバージョンに更新されるまで、新しいバージョン。

于 2013-01-06T09:37:21.153 に答える