Puppet错误:无法创buildmaster.pid

我configuration了puppet服务器和客户端,当我在puppet服务器上运行puppet master --verbose --no-daemonize时,我得到以下消息,

 注意:启动Puppet master版本3.8.4
错误:无法运行:无法创buildPID文件:/var/run/puppet/master.pid

可能的解决scheme是什么?

错误err: Could not retrieve catalog from remote server表明木偶代理无法联系puppetmaster。

确保木偶代理configuration了puppetmaster的主机名或完全合格的域名。 查看/etc/puppetlabs/puppet/puppet.conf并在[main]部分,确认server的值是否正确。

configuration示例:

 [main] certname = puppetmaster01.example.com server = puppet environment = production runinterval = 1h strict_variables = true trusted 

在上面的例子中,服务器名称puppet必须是puppetmaster的地址。

请参阅puppetlabsconfiguration文档https://docs.puppetlabs.com/puppet/latest/reference/config_file_main.html

其次,确保puppetmaster的主机名或完全合格的域名parsing为IP地址。 修复您的DNS,如果它不解决。

使用dig或其他工具来确保名称正确parsing:

 dig puppet 

最后,检查puppetmaster上的防火墙。 按照文档https://docs.puppetlabs.com/pe/latest/install_system_requirements.html中的规定,确保防火墙configuration中允许使用所有必需的端口

  • 8140木偶主控使用此端口接受来自木偶代理的入站stream量/请求。 PE控制台向该端口上的Puppet主机发送请求。 除非ca_port设置不同,否则证书请求将通过此端口传递。 分级组:“体育大师”
  • 443此端口提供主机访问PE控制台。 体育
    控制台在此端口上接受来自最终用户的HTTPSstream量。 分类器组:“PE控制台”
  • 61613 MCollective使用此端口接受来自Puppet代理的入站stream量/请求。 任何主机用来调用
    命令必须能够在此端口上达到MCollective。 分类
    组:“PE ActiveMQ代理”
  • 8142业务stream程服务使用此端口接受来自Puppet代理的入站stream量/请求。 分类器组:“PE Orchestrator”

试试: puppet agent --test --server localhost

如果这样的话,那么你的puppet agentconfiguration中没有正确设置server参数。

检查您的networking设置,DNS设置和木偶configuration设置。

该错误表明代理无法连接到主服务器,因为它无法parsing主服务器的主机名。

这可能是由于错误的networking设置(例如错误的IP),缺lessDNS服务器条目或错误的DNS服务器,或者由于代理上puppet.conf文件中的configuration错误造成的。