У меня есть настройка sensu на коробке Centos 6.5 и установка / настройка клиента на коробке sensu, чтобы он контролировал себя так
/etc/sensu/conf.d/client.json
{
"client": {
"name": "sensu",
"address": "10.100.1.200",
"subscriptions": [
"ALL"
]
}
}
Это работает нормально и отображается в Uchiwa, но теперь у меня есть другой хост, который я хочу зарегистрировать в 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
и зарегистрирован в Учиве.