私は知っています
puppet agent --disable "my message" --verbose
しかし、特定のマシンのある時点で、そのパペットエージェントのステータスを知りたいと思います。どうやってやるのかわからない
man puppet-agent
エージェントが有効か無効かを教えてくれるコマンドはありますか?
-------------------編集
CentOS release 6.6 (Final)
bash-4.1$ puppet --version
3.7.4
bash-4.1$ file /usr/bin/puppet
/usr/bin/puppet: a /usr/bin/Ruby script text executable
------------------- EDIT2
有効または無効に関係なく、私は常にこれを取得します:
[root@p1al25 ~]# cat `Sudo puppet agent --configprint agent_catalog_run_lockfile`
cat: /var/lib/puppet/state/agent_catalog_run.lock: No such file or directory
[root@p1al25 ~]# puppet agent --disable "my message"
[root@p1al25 ~]# cat `Sudo puppet agent --configprint agent_catalog_run_lockfile`
cat: /var/lib/puppet/state/agent_catalog_run.lock: No such file or directory
[root@p1al25 ~]# service puppet status
puppet (pid 4387) is running...
------------------- EDIT3
これはうまくいきました、ありがとうdaxlerod
[root@p1al25 ~]# service puppet status
puppet (pid 4387) is running...
[root@p1al25 ~]# puppet agent --disable "my message" --verbose
Notice: Disabling Puppet.
[root@p1al25 ~]# cat `puppet agent --configprint agent_disabled_lockfile`
{"disabled_message":"reason not specified"}
現在のステータスを取得するためのワンライナーは次のとおりです。
cat `puppet agent --configprint agent_disabled_lockfile`
通常、これはrootとして実行する必要があるため、次を使用します。
Sudo cat `Sudo puppet agent --configprint agent_disabled_lockfile`
多くの結果が考えられます。
cat: \path\to\lock: No such file or directory
Puppetは無効化されていません。puppet agent --disable 'reason'
ここに最新の回答を投稿すると思いました。
Puppetエージェントが無効になっている場合、ファイル$vardir/state/agent_disabled.lock
があります。このファイルには、puppet agent --disable 'because reasons'
を介して理由が指定されている場合、無効化の理由も含まれています。
コマンド$vardir
を介してpuppet config print vardir
の値を取得できます。
総括する:
[me@linuxbox ~]# cat $(puppet config print vardir)/state/agent_disabled.lock
エージェントが無効になっている場合、以下が得られます。
{"disabled_message":"because reasons"}
エージェントが有効な場合、「No such file or directory」というエラーが表示されます。
エージェントステータスは通常、マスタースレーブ設定で使用されます。
詳細はこちら:
https://docs.puppetlabs.com/learning/agent_master_basic.html
2つの可能な質問があるので、尋ねることができます。 1つの存在:
サービスは実行されていますか?
これに対して、通常のサービスコマンド(たとえば、サービスパペットステータス)が実行されます
または、私のエージェントは完全に実行できますか?
答えは、コマンドpuppet agent --testを使用することです