Centos 6.5ボックスにsensuをセットアップし、sensuボックスにクライアントをインストール/構成して、そのように自分自身を監視します。
/ etc/sensu/conf.d/client.json
{
"client": {
"name": "sensu",
"address": "10.100.1.200",
"subscriptions": [
"ALL"
]
}
}
これは正常に機能し、内和に表示されますが、Sensu/Uchiwaに登録したい別のホストがあり、Uchiwa/Sensuの下のクライアントには表示されません。
これがクライアント「コーヒー」の設定です
/ etc/sensu/conf.d/rabbitmq.json
{
"rabbitmq":{
"Host": "10.100.1.200",
"port": "5672",
"vhost": "/sensu",
"user": "user",
"pass": "pass"
}
}
/ etc/sensu/conf.d/client.json
{
"client": {
"name": "coffee",
"address": "10.100.1.19",
"subscriptions": [
"ALL"
]
}
}
/var/log/sensu/sensu-client.logをコーヒーに合わせると、次のように表示されます。
{"timestamp":"2015-07-13T07:15:52.856009-0500","level":"warn","message":"loading config file","file":"/etc/sensu/conf.d/client.json"}
{"timestamp":"2015-07-13T07:15:52.856157-0500","level":"warn","message":"config file applied changes","file":"/etc/sensu/conf.d/client.json","changes":{"client":{"subscriptions":[["ALL","ALL"],["ALL"]]}}}
{"timestamp":"2015-07-13T07:15:52.856235-0500","level":"warn","message":"loading config file","file":"/etc/sensu/conf.d/rabbitmq.json"}
{"timestamp":"2015-07-13T07:15:52.856330-0500","level":"warn","message":"config file applied changes","file":"/etc/sensu/conf.d/rabbitmq.json","changes":{"rabbitmq":{"port":[5672,"5672"],"pass":"REDACTED"}}}
{"timestamp":"2015-07-13T07:15:52.859696-0500","level":"warn","message":"loading extension files from directory","directory":"/etc/sensu/extensions"}
{"timestamp":"2015-07-13T07:15:53.051176-0500","level":"warn","message":"reconnecting to transport"}
RabbitMQと通信しているように見えますが、何らかの理由でクライアントがうちわに表示されません。これをさらに詳しく調べて、何が起こっているのかを把握し、コーヒーサーバーを登録するにはどうすればよいですか?
この問題は、sensu-client
とsensu-server
の間の大きな時間差が原因で発生しました。
user@sensu-server:~# date
Mon Aug 15 06:17:37 UTC 2016
vs.
user@sensu-client:~$ date
ma aug 15 08:17:37 CEST 2016
解決策
この問題は、timedatectl
を使用してクロックを同期することで解決されました。
user@sensu-server:~# Sudo timedatectl list-timezones
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
...
以下を発行してタイムゾーンを変更します。
user@sensu-server:~# Sudo timedatectl set-timezone Europe/Amsterdam
サーバー上の時刻をクライアントと同期しました。
user@sensu-server:~# date
Mon Aug 15 08:25:14 UTC 2016
sensu-services
とrabbitmq
を再起動した後、クライアントはsensu-api
で見つかり、うちわに登録されました。