Puppet-Agent

如何禁用每 30 分鐘發生一次的自動計劃 Puppet 執行?

  • October 17, 2021

目標

目的是禁用每 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)

如果以預設執行間隔 30 分鐘手動執行 puppet。


嘗試二

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.

嘗試三

此文件是在Google搜尋此問答的問題後找到的,但提供的資訊沒有回答問題。

“嘗試一個”應該有效。如果它已經在執行,您必須自己停止它。這只是防止將來的實例守護程序。如果我遺漏了什麼,請澄清為什麼這不起作用。您還可以chkconfig puppet off && service puppet stop使用 Red Hat 及其衍生產品。

您需要確保 puppet 代理未作為服務啟動。類似systemctl, or chkconfigare your friend here 之類的命令(例如systemctl disable puppetor chkconfig puppet off)。不確定大多數發行版。

然後,您還應該確保代理已停止。例如systemctl stop puppetservice stop puppet

Systemd 有一個快捷方式,可以用一個命令來完成這兩項工作:systems disable --now puppet.

您也可以只使用 puppet 來完成上述操作:

puppet apply <(echo "service { puppet: ensure => false, enable => false }")

如果它仍然無法正常工作,pkill puppet最好再試一次,如果仍然無法正常工作 - 重新啟動。

引用自:https://serverfault.com/questions/657911