1. Zabbix poller processes more than 75% busy
- 告警信息:
Problem: Zabbix poller processes more than 75% busy
告警主機: Zabbix server 127.0.0.1
告警時間: 2019.07.05 11:02:34
告警等級: Average
問題詳情:Utilization of poller data collector processes, in %:100 %
事件ID: 8172
-
分析原因:
- 支持zabbix的某個進程卡住
- zabbix進程分配內存不足
- zabbix IO卡住
-
解決方法:
- 第一種方法:寫個cron定時重啟zabbix-server。原理不說了,windwos卡的時候是不是重啟。。。。。
- 第二種方法:增加zabbix server啟動時初始化的進程數量,這樣會導致輪詢時的負載增加,但是每個進程繁忙程度會一定比例減輕,操作如下:
[root@zabbix ~]# sed -i.bak 's@# StartPollers=5@StartPollers=10@g' /etc/zabbix/zabbix_server.conf
[root@zabbix ~]# systemctl restart zabbix-server.service
2. Not all processes could be identified
- 告警信息:
其實監控服務端口,用zabbix自帶的模板會很方便,但是因為我兩個程序端口沖突了,不得已,只能自定義一個監控項,如下:
# zabbix-agent自定義監控項如下,為了契合zabbix的返回值,這里特意設置為正常返回1,異常返回0:
[root@wula zabbix_agentd.d]# pwd
/etc/zabbix/zabbix_agentd.d
[root@wula zabbix_agentd.d]# tail -1 userparameter_mysql.conf
UserParameter=monitor.wula,netstat -lntp | grep 7777 &>/dev/null && echo 1 || echo 0
# 在zabbix-server端嘗試拉取值,如下,能取到值,但是多了一坨東西:
[root@zabbix ~]# zabbix_get -s 77.77.77.77 -k monitor.wula
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
1
- 分析原因:
查詢資料發現是因為使用了netstat -p的參數,zabbix的賬戶是沒有使用 -p 參數的權限的,所以會有此提示。
-
解決方法:
- 第一種方法:把 -p 參數拿掉就行了。
- 第二種方法:授權netstat命令給非root用戶。
[root@wula zabbix_agentd.d]# chmod +s /bin/netstat
3. Zabbix housekeeper processes more than 75% busy
- 告警信息:
Problem: Zabbix housekeeper processes more than 75% busy
告警主機: Zabbix server 127.0.0.1
告警時間: 2019.07.23 16:01:37
告警等級: Average
問題詳情:Utilization of housekeeper internal processes, in %:100 %
事件ID: 38356
-
分析原因:
- 為了防止zabbix-server中的數據庫持續增大,zabbix有自動刪除歷史數據的機制,即housekeeper,而略頻繁的刪除mysql數據就會導致性能降低而告警
- zabbix_server.conf中的HousekeepingFrequency參數就是調整刪除的頻率的。
-
解決方法:
[root@zabbix zabbix]# pwd
/etc/zabbix
[root@zabbix zabbix]# vim zabbix_server.conf
HousekeepingFrequency=12 # 多久刪除一次,小時為單位
MaxHousekeeperDelete=100000 # 最大刪除量
[root@zabbix zabbix]# systemctl restart zabbix-server
寫作不易,轉載請注明出處,謝謝~~