机器上的人偶代理状态是什么?
what is the puppet agent status on the machine?
我知道
puppet agent --disable "my message" --verbose
但我想知道在给定机器上的某个时刻,它的 puppet 代理状态是什么。我不知道如何从
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"}
代理状态通常用于主从设置。
这里有更多详细信息:
https://docs.puppetlabs.com/learning/agent_master_basic.html
因为您可能会问两个问题。一个是:
我的服务是 运行ning 吗?
答案将是 运行ning 您的典型服务命令(例如服务傀儡状态)
或者,我的代理是否完全能够 运行?
答案是使用命令
人偶特工 --test
获取当前状态的一行代码是:
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 时提供的原因
我想我 post 在这里更新答案。
如果 Puppet 代理被禁用,将会有一个文件 $vardir/state/agent_disabled.lock
。如果通过 puppet agent --disable 'because reasons'
.
给出了原因,则此文件还包含禁用原因
您可以通过命令puppet config print vardir
获取$vardir
的值。
总结一下:
[me@linuxbox ~]# cat $(puppet config print vardir)/state/agent_disabled.lock
如果代理被禁用,您将获得:
{"disabled_message":"because reasons"}
如果代理已启用,您会收到错误 "No such file or directory"。
Mac OS X:
状态:
$ puppet resource service puppet
service { 'puppet':
ensure => 'stopped',
enable => 'false',
}
请注意,如果启用,它将 return:
service { 'puppet':
ensure => 'stopped',
enable => 'true',
}
开始:
sudo puppet resource service puppet ensure=running enable=true
停止:
sudo puppet resource service puppet ensure=stopped enable=false
奖金:我喜欢一个技巧:
sudo --non-interactive
。我在 sudoer 用户的脚本中使用它。这将在没有 sudoer 而不是阻止脚本执行的计算机上失败。
我知道
puppet agent --disable "my message" --verbose
但我想知道在给定机器上的某个时刻,它的 puppet 代理状态是什么。我不知道如何从
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"}
代理状态通常用于主从设置。
这里有更多详细信息:
https://docs.puppetlabs.com/learning/agent_master_basic.html
因为您可能会问两个问题。一个是:
我的服务是 运行ning 吗?
答案将是 运行ning 您的典型服务命令(例如服务傀儡状态)
或者,我的代理是否完全能够 运行?
答案是使用命令 人偶特工 --test
获取当前状态的一行代码是:
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 时提供的原因
我想我 post 在这里更新答案。
如果 Puppet 代理被禁用,将会有一个文件 $vardir/state/agent_disabled.lock
。如果通过 puppet agent --disable 'because reasons'
.
您可以通过命令puppet config print vardir
获取$vardir
的值。
总结一下:
[me@linuxbox ~]# cat $(puppet config print vardir)/state/agent_disabled.lock
如果代理被禁用,您将获得:
{"disabled_message":"because reasons"}
如果代理已启用,您会收到错误 "No such file or directory"。
Mac OS X:
状态:
$ puppet resource service puppet
service { 'puppet':
ensure => 'stopped',
enable => 'false',
}
请注意,如果启用,它将 return:
service { 'puppet':
ensure => 'stopped',
enable => 'true',
}
开始:
sudo puppet resource service puppet ensure=running enable=true
停止:
sudo puppet resource service puppet ensure=stopped enable=false
奖金:我喜欢一个技巧:
sudo --non-interactive
。我在 sudoer 用户的脚本中使用它。这将在没有 sudoer 而不是阻止脚本执行的计算机上失败。