本站以分享各种运维经验和运维所需要的技能为主
《python零基础入门》:python零基础入门学习
《python运维脚本》: python运维脚本实践
《shell》:shell学习
《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战
《k8》暂未更新
《docker学习》暂未更新
《ceph学习》ceph日常问题解决分享
《日志收集》ELK+各种中间件
《运维日常》运维日常
《linux》运维面试100问
【监控zabbix】zabbix监控误报-参数优化
背景:
agent容易出现数据上传失败,导致server误报机器挂了。
解决思路:
1.检查server机器的性能,有没有出现负载过高的情况
2.检查server的日志是否出现不合理的信息
3.进行server的参数优化
过程:
前面两种都进行排查,没有太好的信息可以进行调整
所以只能进行第三种解决思路,对server的优化参数进行调研
StartPollers=50
StartIPMIPollers=5
StartPollersUnreachable=15
StartTrappers=20
StartPingers=10
StartHTTPPollers=10
StartSNMPTrapper=0
CacheSize=8192M
TrendCacheSize=1024M
StartDBSyncers=40
Timeout=15
CacheUpdateFrequency=60StartPollers:同时运行的轮询进程数量,用于处理监控数据的收集和处理。
StartIPMIPollers:同时运行的 IPMI 轮询进程数量,用于处理 IPMI 监控数据的收集和处理。
StartPollersUnreachable:同时运行的不可达主机轮询进程数量,用于处理不可达主机的监控数据。
StartTrappers:同时运行的数据接收进程数量,用于接收来自 Zabbix Agent 或其他外部程序的数据。
StartPingers:同时运行的 ICMP Pinger 进程数量,用于执行主机的连通性检查。
StartHTTPPollers:同时运行的 HTTP Poller 进程数量,用于执行 HTTP 监控项的数据收集。
StartSNMPTrapper:同时运行的 SNMP Trapper 进程数量,用于接收来自 SNMP 设备的数据。
CacheSize:Zabbix Server 的缓存大小,用于存储监控数据和历史数据。
TrendCacheSize:Zabbix Server 的趋势缓存大小,用于存储趋势数据。
StartDBSyncers:同时运行的数据库同步进程数量,用于将缓存中的数据写入数据库。
Timeout:Zabbix Server 等待 Agent 响应的超时时间。
CacheUpdateFrequency:缓存更新频率,用于控制缓存中的数据更新频率。
这里可以看到有些参数还是可以优化的,根据自身的server和agent之间进行配合,不让误报轻易产生。
Timeout参数优化:尽可能都调大一些,以及一致相差不多。
StartPollers参数优化:根据自身机器的性能开多点进行可以提高处理速度。
StartPollersUnreachable参数优化:这个尽量大一些,不要过小,除非你是具有proxy,可以按照proxy的个数进行调整,否则尽量大一些,避免idc自身网络不好,导致过多,也会出现误报。
还有一点就是进程数调太多的时候,需要去把数据库的连接数限制给去除了。
其他的参数就不一一介绍了,可以结合自己的机器性能进行调整。