Sensu API 没有响应。Uchiwa:连接错误。Sensu API 正在运行吗?Redis 问题

Sensu API 没有响应。Uchiwa:连接错误。Sensu API 正在运行吗?Redis 问题

我第一次按照官方文档在 CentOS7.2 上设置 sensu 一次又一次,但我无法让它工作:

我似乎无法连接到 API。Uchiwa 给出错误:

ALERT
Datacenter site1 returned:
Connection error. Is the Sensu API running?`

在此处输入图片描述

我已尝试过:curl -I http://localhost:4567/clients ...但我没有得到回应。

这是 /var/log/sensu/sensu-api.log http://pastebin.com/wHEHE0bH

我一直在创建一个脚本以使设置可重复。请参阅下面的脚本,其中显示了我的配置:http://pastebin.com/QEt5Msku 如果您在 CentOS7 上运行该脚本,它会重复此问题。

使固定:

问题在下面的答案中。在按照非官方指南成功在新的虚拟机上安装 sensu 后,我比较了两个设置步骤,在新的虚拟机上构建了几个版本后,一点一点地交换了步骤,我发现用非官方指南中的 repo 替换 repo 可以解决我的问题(repo 适用于 CentOS6,但它可以在 7 上运行,它只安装非当前版本 0.20.3)。

echo '[sensu]
name=sensu-main
baseurl=http://repos.sensuapp.org/yum/el/6/x86_64/
gpgcheck=0
enabled=1' > /etc/yum.repos.d/sensu.repo

答案1

问题是 sensu 0.23 将 localhost 解析为 ipv6 地址,但 redis 没有监听 ipv6 地址。解决办法是"host": "localhost"改为"host": "127.0.0.1"Sensus git 页面

供您参考,您也应该查看 sesu-server 日志并将其发布到这里。

答案2

如果你想了解更多信息,可以查看Sensu 问题与此错误有关。对我来说,问题是我的操作系统上的默认主机解析与从存储库安装的默认 Redis 配置之间存在冲突。我的解决方案是:

更新 /etc/hosts 以将 localhost 解析为 127.0.0.1 而不是 ::1。

或者

更新 redis.conf 以除了 127.0.0.1 之外还绑定到 ::1。

如果您正在运行支持 IPv6 的主机,后一种选择可能是最佳选择。希望这对您有所帮助!

相关内容