如何确定在代理程序中使用哪个Puppet master?

我目前正在运行多个负载平衡主人,需要debugging他们之间的一些差异。

有没有一种很好的方法在代理报告中包含puppet master的主机名或其他ID? (把每个主人略有不同的代码是不是我的select)

Puppet master会将variables(如$servername注入到在Puppet主variables中列出的目录编译中。

您可以在报告中使用notify { "Compiled on $servername": }将其包含在报告中,或者将其添加到文件模板(例如MOTD)中。

另一种机制是改变config_version – 为每个目录编译提供一个唯一的名称/编号,通常用于显示正在构build的清单的当前git / SCM修订版本。 默认情况下,它显示当前的Unix纪元。 你可以改变它来返回纪元和主控主机名。

config_version通常是按照每个环境设置的,例如, 在environment.conf中使用environment.conf: config_version ,并且可以指向一个脚本,您将其部署到每个主服务器,并输出包含服务器主机名的string。

通过将您的客户直接绑定到您的木偶大师之一上,您可以testing某个木偶大师。