最初に簡単なバージョンを試してから、要求に応じてさらに情報を追加できます。
次の構成のクライアント マシンがあります。
------------------------------------------------------------
Connected to puppet-client-10 as root
Debian 7.8 wheezy (amd64)
------------------------------------------------------------
FQDN : puppet-client-10.mydomain
IP : 161.148.1.10
PuppetMaster: puppet-master.mydomain
Puppet : 3.7.5
Facter : 2.2.0
------------------------------------------------------------
以下の puppetmaster に接続します。
------------------------------------------------------------
Connected to puppet-master as root
Debian 7.8 wheezy (amd64)
------------------------------------------------------------
FQDN : puppet-master.mydomain
IP : 161.148.1.1
Puppet : 3.7.5
Facter : 2.4.3
------------------------------------------------------------
さて、クライアントに戻ります。以前はエージェントを無効にして、1 日 1 回 cron で更新をチェックしていました。
6 22 * * * root /usr/bin/puppet agent --test --logdest syslog
完璧に動作します。
2 日前、私は cron ジョブにコメントし、エージェントが 1 時間ごとに更新をチェックできるようにしました。
その後、ログは2分ごとにこの行を表示し始めました
<27>1 2015-05-20T08:20:30.651767-03:00 puppet-client-10 puppet-agent 8072 - - Could not request certificate: getaddrinfo: Name or service not known
<27>1 2015-05-20T08:22:30.668988-03:00 puppet-client-10 puppet-agent 8072 - - Could not request certificate: getaddrinfo: Name or service not known
また、クライアントがマスターの更新を正しくチェックしていることを示しています
<28>1 2015-05-20T08:23:44.927447-03:00 puppet-client-10 puppet-agent 31500 - - Loading class elasticsearch
<28>1 2015-05-20T08:23:45.406158-03:00 puppet-client-10 puppet-agent 31500 - - Loading class logstash
<28>1 2015-05-20T08:23:45.776948-03:00 puppet-client-10 puppet-agent 31500 - - Loading class logrotate
<28>1 2015-05-20T08:23:46.204161-03:00 puppet-client-10 puppet-agent 31500 - - Loading class puppet
そして、2分ごとにgetaddrinfoエラーに戻ります
<27>1 2015-05-20T08:24:30.676307-03:00 puppet-client-10 puppet-agent 8072 - - Could not request certificate: getaddrinfo: Name or service not known
<27>1 2015-05-20T08:26:30.683570-03:00 puppet-client-10 puppet-agent 8072 - - Could not request certificate: getaddrinfo: Name or service not known
エラー (2 分ごと) と成功 (1 時間ごと) のメッセージが交互に表示されます。
コマンドを実行するpuppet agent --test
と、期待どおりに機能します。
問題はエージェントにあるようです。
ヒントはありますか?
あなたの操り人形マスターが「操り人形」と名付けられていないからだと思います。また、現在実行している puppet エージェントがどのユーザーとして実行されているかを確認します。おそらく root ではないと思います – Vorsprung
それはpuppet-master
、またpuppet-master.mydomain
、以下の代替名で 命名されています
# puppet cert list puppet-master.mydomain
+ "puppet-master.mydomain" (SHA256) F2:54:03:9C
(alt names: "DNS:puppet", "DNS:puppet.mydomain", "DNS:puppet-master.mydomain")
として実行されていますroot
# ps aux | grep puppet
root 1763 0.0 0.2 133776 45236 ? Ssl Mai19 0:07 /usr/bin/ruby /usr/bin/puppet agent
root 8072 0.0 0.2 194580 40144 ? Ssl Mai19 0:02 /usr/bin/ruby /usr/bin/puppet agent
現在、8072
上記はエラー行をスパムするプロセスです。
本当に2つのプロセスを実行する必要がありますか?