2

私は使用chef-serverしてchef-client構成します。

ホスト構成の変更 (ブートストラップによって追加された新しいホスト、または古いホストが削除された) ごとに、それを含むすべてのホストで再実行したいレシピが 1 つあります。レシピ自体に変更はありません。

今ではchef-client、cron で 5 分ごとに実行するだけですが、これは最善の解決策ではありません。

一般に、レシピを変更しても、レシピchef-clientを再実行する必要があることを知っていますか? (どのようにしてそれを知るのか、またレシピの変更を特定するのにかかる時間)

レシピ自体を変更せずにレシピを再実行する必要がある場合、正しい方法は何ですか?

ありがとう!

4

2 に答える 2

1

レシピ自体を変更せずにレシピを再実行する必要がある場合、正しい方法は何ですか?

マークの応答を参照してください。シェフクライアント -i 3600 -s 600

一般に、レシピを変更しても、chef-client はレシピを再実行する必要があることを認識していますか?

いいえ、わかりません。レシピを変更してchef-serverにknife-uploadすると、次に収束に必要なレシピのセットをchef-serverに要求するときに、そのバージョン(環境ベースのバージョンのオーバーライドがない場合)がchef-clientに提供されます.

両方のユース ケースを満たすには、外部のバージョン管理システム (git など) をレシピの信頼できるソースとして使用し、レシピのすべての新しいバージョンをナイフ アップロードする post-commit-hook を作成することをお勧めします。シェフサーバーに接続し、CIサーバーにチェックインをリッスンさせ、シェフクライアントの実行を調整することさえできます。ここにいくつかの良い答えがあります:

https://serverfault.com/questions/283470/what-are-the-benefits-of-running-chef-server-instead-of-chef-solo

于 2012-12-27T04:03:56.837 に答える