2014-09-30 2 views
1

Я использую поваренную книгу https://github.com/portertech/chef-monitor для настройки клиента sensu, когда узел загружается на сервер шеф-повара. Рецепт по умолчанию должен устанавливать компоненты sensu, ssl, json, а также службу обслуживания sensu.Невозможно создать rabbitmq.json для пользователя sensu

Однако rabbitmq.json не создается, клиент-шеф-повар работает неудачно, поскольку он пытается запустить клиентское обслуживание шеф-повара в конце.

Для SSL создается база данных. узел [ «монитор»] [ «master_address»] был установлен

значения для RabbitMQ было предусмотрено в узлах, как переопределение

{ 
    "sensu": { 
    "rabbitmq": 
     { 
      "host": "myhost.com", 
      "port":5671, 
      "vhost":"/sensu", 
      "user":"sensu", 
      "password":"secret", 
      "ssl": { 
       "cert_chain_file":"/etc/sensu/ssl/cert.pem", 
       "private_key_file":"/etc/sensu/ssl/key.pem" 
       } 
      } 
     } 
    } 
} 

но rabbitmq.json не получает создан, следовательно, служба начала не работает, и журнал говорит не удается подключиться к кроличьим квадратным метрам

«уровень»: «фатальное», «сообщение»: «ошибка подключения транспорта», «ошибка»: "не удалось подключиться к rabbitmq "

ответ

0

Снова прочитайте файл readche cookbook readme. Для клиента не требуется rabbitMQ.json. В файле config.json /etc/sensu/config.json должна быть запись для rabbitmq для подключения клиента. Он также имеет записи для redis и api.

Удостоверьтесь, что вы передаете node.monitor.master_address: Сенсорный сервер ip Или, если вы этого не сделаете, он должен искать рецепт узла monitor::master и выбрать его ip.

Проблема была в SSL grrrr ... кажется, что ssl в databag был плохим, регенерировал ssl и распространялся для всех, после этого отлично работал.

cd examples/ssl 
./ssl_certs.sh generate 
knife data bag create sensu 
Use the plain-text data bag item: 

knife data bag from file sensu ssl.json 
Or, encrypted it with your data bag secret. See Encrypt a Data Bag for more information. 

knife data bag --secret-file /path/to/your/secret from file sensu ssl.json 
./ssl_certs.sh clean