Sensu API 沒有響應。宇智波:連接錯誤。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 上執行該腳本,它應該會重複此問題。
使固定:
問題在下面的答案中。在遵循在新 VM 上成功安裝 sensu 的非官方指南之後,我比較了兩個設置步驟,並且在新 VM 上建構了幾次之後,一點一點地交換步驟,我發現用非官方指南中的一個替換 repo指向一個稍微不同的 URL 解決了我的問題(CentOS6 的 repo,但它適用於 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
問題是 sensu 0.23 將 localhost 解析為 ipv6 地址,但 redis 沒有監聽 ipv6 地址。解決方案是更改
"host": "localhost"
為"host": "127.0.0.1"
. Sensus git 頁面有問題為了您的資訊,您也應該查看 sesu-server 日誌並將其發佈在此處。
對於任何尋求更多資訊的人,您可以查看與此錯誤相關的Sensu 問題。對我來說,問題是我的作業系統上的預設主機解析度與從 repo 安裝的預設 Redis 配置之間的衝突。我的解決方案是:
更新 /etc/hosts 以將 localhost 解析為 127.0.0.1 而不是 ::1。
或者
更新 redis.conf 以綁定到 ::1 以及 127.0.0.1。
如果您正在執行支持 IPv6 的主機,則後一種選擇可能是要走的路。希望這可以幫助!