没有突然改变任何puppetconfiguration,当创build导出的SSH密钥时,我们的某些主机以“Could not evaluate:Field”键为“必需”错误开始,但有趣的是并非所有主机上的所有SSH密钥都失败,这里的一个例子是密钥都成功和失败创build:
Info: Retrieving pluginfacts Info: Retrieving plugin Info: Loading facts Info: Caching catalog for srvadx-green-7zhg.c.ligatus-prod-bidder-server.internal Info: Applying configuration version '1511609586' Notice: /Stage[main]/Basics::Ssh/Sshkey[srvadx-green-w5ld]/ensure: created Info: Computing checksum on file /etc/ssh/ssh_known_hosts Info: FileBucket got a duplicate file {md5}17787ff909a06cf0243c18cf33f1c384 Error: /Stage[main]/Basics::Ssh/Sshkey[srvadx-green-w5ld]: Could not evaluate: Field 'key' is required Notice: /Stage[main]/Basics::Ssh/Sshkey[srvadx-green-88kp]/ensure: created Error: /Stage[main]/Basics::Ssh/Sshkey[srvadx-green-88kp]: Could not evaluate: Field 'key' is required Notice: /Stage[main]/Basics::Java/Exec[set-licence-selected]/returns: executed successfully Notice: /Stage[main]/Basics::Java/Exec[set-licence-seen]/returns: executed successfully Notice: Finished catalog run in 1.98 seconds
首先,我怀疑HSQLDB已经损坏,并删除了整个puppetdb数据目录,并在所有主机上重新运行puppet。 首先它看起来很有希望,但很快上面的错误又重新出现了。
如何debugging甚至更好地解决问题,以及如何防止它在未来再次发生?
为了帮助debugging/理解发生的事情,有三件事情可以做(至less):