目的
目的是禁用每 30 分钟自动运行的 Puppet-agent。有可能改变间隔,但 Puppet-agent 的自动运行应该被完全禁用。
尝试一
根据本文档可以通过以下配置来禁用自动 Puppet-agent 运行:
/etc/puppet/puppet.conf
[agent]
daemonize=false
结果是
Notice: Run of Puppet configuration client already in progress;
skipping (/var/lib/puppet/state/agent_catalog_run.lock exists)
如果puppet手动运行,默认运行间隔为30分钟。
第二次尝试
user@hostname:~$ sudo puppet agent --disable
结果是
user@hostname:~$ sudo puppet agent -t
Notice: Skipping run of Puppet configuration client;
administratively disabled (Reason: 'reason not specified');
Use 'puppet agent --enable' to re-enable.
第三次尝试
本文档是在谷歌搜索这个问答的问题后发现的,但提供的信息并没有回答这个问题。
答案1
“尝试一”应该有效。如果它已经在运行,你必须自己停止它。这只是防止将来的实例守护进程。如果我遗漏了什么,请说明为什么这不起作用。您也可以chkconfig puppet off && service puppet stop
在 Red Hat 和衍生产品上这样做。
答案2
您需要确保 Puppet 代理未作为服务启动。 诸如systemctl
或 之类的命令chkconfig
是您的好朋友(例如systemctl disable puppet
或chkconfig puppet off
)。 不确定大多数发行版是否支持。
然后您还应该确保代理已停止。例如systemctl stop puppet
或service stop puppet
。
Systemd 有一个快捷方式,可以用一个命令完成这两项操作:systems disable --now puppet
。
您也可以使用 puppet 来完成上述操作:
puppet apply <(echo "service { puppet: ensure => false, enable => false }")
如果仍然不起作用,pkill puppet
为了保险起见,请再试一次,如果仍然不起作用 - 请重新启动。
答案3
您是否在寻找如下命令:
puppet agent --disable
答案4
sudo service puppet stop
如果你正在运行 puppet 守护进程
或者,如果您是这样配置的,请删除 cronjob。