我正在使用https://github.com/portertech/chef-monitor食谱来设置sensu客户端,因为节点被引导到厨师服务器。 默认配方应安装sensu组件,ssl,json配置以及sensu客户端服务。
然而,rabbitmq.json没有被创建,厨师客户端运行失败,因为它最终尝试启动厨师客户服务。
为SSL创建了一个数据库。 node [“monitor”] [“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没有被创建,因此启动服务不起作用,日志说无法连接到兔子mq
“level”:“致命”,“消息”:“传输连接错误”,“错误”:“失败 连接到rabbitmq“
答案 0 :(得分:0)
再次阅读sensu cookbook自述文件。它在客户端不需要rabbitMQ.json。 config.json /etc/sensu/config.json 应该有rabbitmq的条目供客户端连接。 它还有redis和api的条目。
确保传递node.monitor.master_address
:sensu服务器ip
或者,如果不是,它应该查找节点monitor::master
配方并选择其IP。
问题在于SSL grrrr ...似乎数据库中的ssl很糟糕,重新生成了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