Puppet Master 未收到代理的证书请求

Puppet Master 未收到代理的证书请求

我有一个 puppetmaster 服务器和四个 puppet 代理客户端。在这里,我将 puppet.conf 文件和主机附加到所有节点。当我调用“puppet cert list”时,它没有返回任何内容。

但是,当使用 --all 标志调用时,它会返回其自己的证书。

我能够从所有代理 ping puppet、puppetmaster。代理上的“puppet agent --test”给出以下内容:退出;未找到证书,并且 waitforcert 已禁用

我如何从代理获取对主服务器的证书请求。有人能给我解决这个问题的办法吗?[1] puppet.conf https://drive.google.com/file/d/0ByrsDKrxH15uaThvQm9VRHBtaTg/view?usp=sharing

[2]主办方 https://drive.google.com/file/d/0ByrsDKrxH15uVktSYmhDN1NHaGc/view?usp=sharing

答案1

第一次运行:

puppet agent -t

在新的 puppet 客户端上,它会创建一个证书请求,并发送给 puppet master(如客户端的 /etc/puppet/puppet.conf 中所配置的)。

然后,在 Puppet Master 上你应该运行:

puppet cert list

识别相关证书然后进行签名:

puppet cert sign hostname_of_puppet_client

确保在 Puppet Master 中创建的证书请求由 Puppet 客户端的主机名而不是 IP 来标识,否则可能会在将来给您带来问题。

另外,请确保 Puppet Master 和客户端上的时间同步。

在 Puppet Master 中正确签名证书后,您应该在客户端上再次运行:

puppet agent -t

然后,客户端应该下载puppet目录并运行任务。

答案2

当我遇到这种情况时,我不得不重新启动 Puppet Master(不得不终止该进程)。我还不知道为什么它会有帮助,但也许 Master 中存在某种缓存,用于已经签名的主机(在我的情况下,当我想为主机重新生成证书时就会发生这种情况)

相关内容