禁用 Puppet 代理运行间隔

Disable Puppet agent runinterval

我在 CentOS Linux 7.2 版上使用以下 Puppet 版本:

# puppetserver -v
puppetserver version: 2016.5.0.11

我有一个 Win 代理节点,以后可能还会有几个。 Win 节点上的代理版本:

C:\Windows\system32>puppet --version
4.8.1

我想 runinterval 永久 禁用代理,这样我就可以 在需要时从我的 Puppet 服务器推送。我看到几个链接并尝试将以下行放入 Puppet 服务器的 /etc/puppetlabs/puppet/puppet.conf 文件中。我也重新启动了服务器,但代理仍在获取目录。

[agent]
daemonize=false

我还想知道是否可以仅在特定节点上禁用 runinterval。如果是,如何?

如果要在给定节点上禁用 Puppet 代理,则必须使用此命令:puppet agent --disable。您可以指定一个原因,为什么要在给定节点上禁用代理。下次有人在节点上键入 puppet agent 时,将打印您可以提供的消息。

您基本上要做的是停止 Puppet 服务。使用木偶 service 资源最容易完成:

service { 'puppet':
  ensure => stopped,
  enable => false,
}

要仅在某些节点上执行此操作,只需为分类器或主站点清单中的相应节点定义提供它:

node /ones_to_disable/ {
  service { 'puppet':
    ensure => stopped,
    enable => false,
  }
}

这是完成 push-style Puppet 和禁用 pull-style 的简单常用方法。