puppetサーバは、インストール時にサーバ名をCNにした証明書を作成します。
このサーバ名は、hostnameコマンドを引いているようでDSNに登録されているFQDNではありません。
FQDNでpuppet.ドメイン名といったサーバ名を付けてクライアントからアクセスするとpuppet.ドメイン名の証明書はないとエラーになります。
$ sudo puppetd --server puppet.localdomain --verbose --test info: Retrieving plugins err: Could not find server : getaddrinfo: Name or service not known err: /File[/var/lib/puppet/lib]: Failed to generate additional resources during transaction: Could not find server puppet.localdomain err: Could not find server : getaddrinfo: Name or service not known err: /File[/var/lib/puppet/lib]: Failed to retrieve current state of resource: Could not find server puppet.localdomain Could not describe /plugins: Could not find server puppet.localdomain err: Could not find server : getaddrinfo: Name or service not known err: Could not retrieve catalog: Could not find server puppet.localdomain warning: Not using cache on failed catalog $
そこでpuppetサーバで必要なサーバ名で証明書を追加します。
$ sudo puppetca --generate puppet.localdomain Generating certificate for puppet.localdomain $
これでエラーは、出なくなります。
サーバ名やドメイン名が変更になったときには忘れずに…