監控系統跳出告警 Zabbix http poller processes more than 75% busy ,紀錄問題排除的步驟及可能性。
Zabbix 設定好的線程數量去爬 Server 主機的狀態,偶而會出現但通常會自行消失。既然有跳出來就要找到問題,在分析後以下情形會產生此類型告警:
- 監控主機 CPU或記憶體滿載無法負荷現有的監控網頁數量。
- 監控主機 IO 過慢卡住每一條線程更新狀態。
- 監控主機監控數量預設是1,單純監控數量過多無法負荷。
- 網路不良導致無法正常訪問,每次訪問都等到超時造成工作排隊。
注意:網路不良有時是某些節點已經有 LOOP 、設備或線材異常現象。
觀察證明及改善方案
第一條 監控主機 CPU或記憶體滿載無法負荷現有的監控數量。
此項建議至底層從主機端看,確保監控主機上的值都是正確的,如果主機過忙碌紀錄的數值也可能是不準確的。可以透過 TOP 來檢查1、5、15分鐘CPU 附載的平均值超過60%,記憶體用量是否超過50%。虛擬機會優先添加CPU或記憶體優化主機效能,如果資源已經不足或調整過後單台主機仍然改善不顯著,可以架設 Zabbix proxy 分擔主機所需的效能。
第二條 監控主機 IO 過慢卡住每一條線程更新狀態。
進到 Zabbix 監控主機,查看監控主機上的最新數據。
檢查 Disk write request avg waiting time 相關(w_await) (r_await) 兩條選項。
如果平均高延遲度就需要改善,此時需架設 Zabbix proxy 分擔主機所需的效能。
第三條 監控主機監控數量預設是1,單純監控數量過多無法負荷。
進到 Zabbix 監控主機,查看監控主機上的最新數據。
找到 Utilization of http poller data collector processes, in % 查看圖形。
如果發現已經超過或是接近75 %的限制,如下方截圖可以看到某個時段基本上都超過75%。
調整方式為進到Zabbix 主機編輯設定檔案指令如下:
vi /etc/zabbix/zabbix_server.conf
### Option: StartHTTPPollers
# Number of pre-forked instances of HTTP pollers.
#
# Mandatory: no
# Range: 0-1000
# Default:
# StartHTTPPollers=1
在此區下方新增 StartHTTPPollers=10 ,增加10個線程。
### Option: StartHTTPPollers
# Number of pre-forked instances of HTTP pollers.
#
# Mandatory: no
# Range: 0-1000
# Default:
# StartHTTPPollers=1
StartHTTPPollers=10
第四條 網路不良導致無法正常訪問,每次訪問都等到超時造成工作排隊。
主要這類型的大部分都是網路不良、有時是網路節點已經有 LOOP 、設備或線材異常現象。
http poller data collector processes over 功能是檢查網頁狀態,可以從清查 Zabbix 訪問網頁節點一一排查問題,另外可以檢查相關系列的,例如下方是否有相同的問題,來判別是單一區域或是更大範圍問題
- poller data collector processes
- http poller data collector processes
- proxy poller data collector processes
- unreachable poller data collector processes