什么是机器上的木偶代理状态?

时间:2015-03-30 15:21:31

标签: puppet

我知道

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"}

3 个答案:

答案 0 :(得分:30)

获得当前状态的单行是:

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'
  • 禁用木偶时提供的原因

答案 1 :(得分:4)

我以为我会在这里发布更新的答案。

如果禁用了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"}

如果启用了代理,则会收到错误"没有此类文件或目录"。

答案 2 :(得分:1)

代理状态通常用于主从设置。

更多细节在这里:

https://docs.puppetlabs.com/learning/agent_master_basic.html

因为您可能会问两个可能的问题。一个是:

我的服务正在运行吗? 答案将运行您的典型服务命令(例如服务木偶状态)

或者,我的代理人能够完全运行吗?

答案是使用该命令 傀儡代理人 - 测试