我们正在我们的客户端和主机上运行 puppet 2.7.11-1ubuntu2.4 (Ubuntu 12.04)。客户端似乎不会自动更新,但是当我运行时:
sudo puppet agent --test
一切正常。
客户端当前正在运行的进程:
root 1764 1 0 Sep10 ? 00:00:05 /usr/bin/ruby1.8 /usr/bin/puppet agent
/etc/puppet/puppet.conf
[main]
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=/var/lib/puppet/ssl
rundir=/var/run/puppet
factpath=$vardir/lib/facter
templatedir=$confdir/templates
prerun_command=/etc/puppet/etckeeper-commit-pre
postrun_command=/etc/puppet/etckeeper-commit-post
pluginsync=true
[master]
# These are needed when the puppetmaster is run by passenger
# and can safely be removed if webrick is used.
ssl_client_header = SSL_CLIENT_S_DN
ssl_client_verify_header = SSL_CLIENT_VERIFY
[agent]
server=<URL_REMOVED>
configtimeout=300
/var/log/syslog.log
Sep 11 16:12:48 <HOSTNAME_REMOVED> puppet-agent[1764]: Did not receive certificate
Sep 11 16:14:48 <HOSTNAME_REMOVED> puppet-agent[1764]: Did not receive certificate
Sep 11 16:16:49 <HOSTNAME_REMOVED> puppet-agent[1764]: Did not receive certificate
Sep 11 16:18:49 <HOSTNAME_REMOVED> puppet-agent[1764]: Did not receive certificate
Sep 11 16:20:49 <HOSTNAME_REMOVED> puppet-agent[1764]: Did not receive certificate
/etc/default/puppet
# Defaults for puppet - sourced by /etc/init.d/puppet
# Start puppet on boot?
START=yes
# Startup options
DAEMON_OPTS=""
有人知道可能有什么问题吗?
最佳答案
我们实际上最近找到了这个问题的原因。
某些节点在其 puppet.conf 中的主机名与服务器证书中的主机名不匹配。
还有一些节点在联系服务器时没有使用他们的 FQDN,这会导致与客户端证书不匹配。我们通过将 FQDN 添加到/etc/hosts 来解决这个问题:
127.0.1.1 hostename.domain.edu hostename
关于Puppet 客户端不更新,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18743937/