目的: 在Zabbix负载时提供排查思路及处理方法(主要讲解调整配置参数)

处理负载的方式: 禁用异常监控及使用Zabbix客户端主动方式、调整zabbix配置参数、告警收敛(去除没必要的告警,以及避免告警风暴)、硬件更新

** 建议:** 不使用zabbix管家清理历史数据与趋势数据,数据量大时,zabbix管家数据清理会直接导致zabbix崩溃; 可使用数据库表分区的方式,把对应的数据分为多个分区逐个清理

背景: 随着公司体系加大,使用zabbix监控的机器越来越多,主机部分指标时延越来越大,1mà5mà10m

1、检查zabbix队列,查看是否存在5m以上的队列,查看细节确认哪些主机导致队列,有队列则继续下一步(若无队列,界面操作过慢,可以使用IOSTAT检查数据库IO情况)

2、查看对应的主机,是否监控状态异常,状态正常则继续下一步(如果异常:把主机禁用,过几分钟后查看队列是否消失)

3、手动在zabbix采集服务器上使用zabbix_get命令获取界面无数据的指标,正常获取则继续下一步(若异常,根据报错进行处理问题) zabbix_get –s 客户端IP –k 键值

4、目前可以判断,数据是可以正常获取,但通过客户端推送时,数据响应时间过长(客户端agent可配置超时时间默认3s,可配置30s,修改后数据仍是前面的情况,则继续下一步),导致界面无法显示; 在图形功能找到zabbix的自身监控,查看”Zabbix cache usage.% free”

在图形中,我们可以看到zabbix自身的性能已达到负载,超过预定阈值,我们可以通过调整zabbix-server配置文件参数,加大zabbix性能 StartPollers=160
StartPollersUnreacheable=80 StartTrappers=20 StartPingers=100 StartDiscoverers=120 Cachesize=1024M startDBSyncers=16 HistoryCacheSize-1024M TrendCacheSize=1024M HIstoryTextCacheSize-512M 重启zabbix-server

5、调整参数后,发下zabbix数据采集恢复正常,队列消失