我是Puppet的新手,但学习进度很快。今天在尝试运行以下命令时遇到了问题:
$ puppet agent --no-daemonize --verbose --onetime
**err: Could not request certificate: getaddrinfo: Name or service not known
Exiting; failed to retrieve certificate and waitforcert is disabled**
看起来代理不知道连接到哪个服务器。我可以在命令行上指定--server
,但是当这个程序作为守护进程在生产环境中运行时,这种方法对我没有任何用处,因此,我会在/etc/puppet/puppet.conf中指定服务器名称,像这样:
[main]
server = puppet.<my domain>
我有一个DNS记录为puppet.<my domain>
,如果我运行dig puppet.<my domain>
,我可以看到名称解析正确。
我阅读过的所有Puppet文档都说明代理默认尝试连接到puppet
主机,你需要使用主机文件技巧或者采取正确的方法,在DNS中创建一个CNAME,并相应地编辑 puppet.conf 文件,我已经这样做了。
那么我错过了什么?非常感谢任何帮助!