我正在使用 puppet agent v3.0.1(在 FreeBSD 上),尝试连接到 puppet master v3.1.1(在 Ubuntu 上),但 puppet 代理挂起并出现以下调试输出:
puppet agent --debug --no-daemonize
...
Debug: /File[/var/puppet/ssl/private_keys]: Autorequiring File[/var/puppet/ssl]
Debug: /File[/var/puppet/ssl/private]: Autorequiring File[/var/puppet/ssl]
Debug: /File[/var/puppet/ssl/private_keys/zg-3.XXXX.ch.pem]: Autorequiring File[/var/puppet/ssl/private_keys]
Debug: /File[/var/puppet/ssl/public_keys/zg-3.XXXX.ch.pem]: Autorequiring File[/var/puppet/ssl/public_keys]
Debug: Finishing transaction 17214983260
[hangs.. about two minutes..]
Error: Could not request certificate: execution expired
Error: Could not request certificate: execution expired
Puppet Master 托管在虚拟机中,并通过 VM 主机上的端口转发进行访问。我已测试从防火墙后面的另一个节点访问 Master,一切正常。
当代理运行时,木偶大师上没有任何迹象表明已经建立了连接(尽管不清楚是否应该建立连接)。
我已经使用 netcat 和 telnet 检查并确认我能够从代理到服务器启动连接并交换数据。
同一个 Puppet Master 可以与运行 Puppet v3.0.2 的不同 FreeBSD 代理一起正常工作
在代理运行期间运行 tcpdump 显示一些数据包在代理和服务器之间来回传输
我跑了桁架在(FreeBSD)puppet 代理命令上,发现代理出现以下错误(两次):
读取(6,0x80711c3c6,1854)ERR#35‘资源暂时不可用’
文件句柄 6 来自对主系统的正确 IP 地址和端口号 (8140) 的“连接”系统调用。
我目前怀疑问题可能是由以下原因之一引起的:
代理/主傀儡软件兼容性问题
SSL 库兼容性问题
一些奇怪的防火墙或 NAT 问题,允许 netcat/telnet 通信,但不允许 Puppet 通信。连接是当我运行代理但不启动主服务器时,我得到了不同的错误
时间错误或竞争条件
我不认为问题是由以下原因引起的:
SSL 证书问题,因为没有证书相关错误。我还尝试删除安全套接字代理系统和主系统上的目录
时间同步问题,因为两个系统都运行 NTP
关于如何调试这个有什么提示吗?
提前致谢,
艾伦·霍奇金森
PS 请询问任何有助于诊断问题所需的附加(配置)信息。