2013-11-01 5 views
6

人形が最初の実行を成功裏に完了したことを検出する方法が必要なので、AWS EC2および/またはOpenStackでマシンを回転させるときに他のアクションを開始する前に待つことができます。 どうすれば確認できますか?人形の実行が完了したことを検出する方法

これまで浮いたいくつかのアイデアがあります:

  1. は、人形が完成(成功した)、私はその後、ちょうどそのファイルを監視することができます
  2. は人形が(成功裏に)終了したことを書き持つファイルに触れてい私はmcollectiveを通じて事実を確認することができます。 (人形の実行内から人形のDBへの書き込みがさえ可能であるかどうかわからない)

答えて

5
/var/lib/puppet/state/puppetdlock 
/var/lib/puppet/state/state.yaml 
/var/lib/puppet/state/last_run_summary.yaml 

これらはあなたがチェックしたいファイルです。

puppetdが現在実行中の場合、ロックファイルが設定されます。 Stateおよびlast_run_summaryを使用して、過去の実行が成功したかどうかを確認できます。

もこのserverfaultの質問を参照してください:あなたはサーバー/クライアント・モードを実行する場合

https://serverfault.com/questions/463231/check-if-puppet-agent-is-up-to-date

+1

これらのファイルは通常、/ var/opt/lib/pe-puppet/stateにあります。あなたがカスタムの場所にインストールした場合、ディレクトリを見つけるためにpuppet config print vardirを使用してください –

1

私はCentOSの上でそれを試してみるの6.4

、ファイルをチェックがあります

の/ var/lib/puppet/state/agent_catalog_run.lock

スタンドアロンで実行すると、ロックファイルが存在しません。おそらく、このアイテムのログファイルを解析する必要があります。「完成したカタログをxxx秒で実行」

関連する問題