ZABBIX官方文档3.4更新中提到了以前全部版本都存在瓶颈,本人以为这个更新做用很是大就此坐下告警测试,官方原话:服务器
在之前的版本中使用单个告警器进程来发送问题通知,告警是一个一个的发出,在大规模的环境中有大量事件紧挨连续发生的状况下,告警可能会发生延迟。相似地,在实时性较高和实时性较低的媒体类型(如短信和电子邮件)混合存在的环境中,可能会存在延时,邮件的发送须要等待短信发送完成。微信
在新版本中,并行处理告警功能已经实现,有一个新的告警管理器进程,若是须要,能够向多个“worker”进程分发告警。媒体类型被并行处理,每一个媒体类型能够配置最大并发会话数,但服务器上的告警器进程总数只能由新的StartAlerters 参数限制,每一个触发器生成的告警都会顺序的进行处理。网络
有三个可用的新告警处理选项在媒体类型配置中: 并发会话, 重试 和 重试间隔:并发
实验环境:ide
Zabbix3.2.4 IP:192.168.1.2测试
Zabbix3.4.0 IP:192.168.1.3优化
单次告警49个spa
收发人员微信9人,邮件7人orm
Web和zabbix_server_conf配置保持一致server
推送脚本一致,接口一致
Zabbix3.4.0 IP:192.168.1.3上调整StartAlerters 参数
说明:3.4前的版本在出现大量告警时都会出现大的延时状况,这里触发下下3.2.4的告警处理状况作对比
这里采用微信告警
二、手动关闭告警
(不得不说这个功能虽然是为了填补zabbix有时候没能自动关毕问题的坑,另外用来作告警推送测试是个颇有用的功能)
其中:
基础告警49
微信发送9人
总计发出告警:441封
三、 等待执行发送结果
开始执行:
这里能够看到huawei的告警尚未推送完,cisco的告警一直在排队,此时已通过了1分钟
结束:
这里能够看到彻底推送完441封告警到微信人员上zabbix3.2.4须要3分钟多,这里尚未算上网络延时,有些告警1分钟采集频率,因此3分钟后推送到相关人员相对来讲仍是过久了
四、 查看zabbix图形
这里能够看到告警串行的瓶颈已经触碰到
一、 配置好告警推送
这里采用微信告警
2.配置微信告警并发进程数
这里配置为单进程
三、手动关闭告警
其中:
基础告警49
微信发送9人
总计发出告警:441封
4.等待执行结果
这里能够看到单并发下和3.2.4的效果是同样的
一、配置好告警推送
这里采用微信告警
二、配置微信告警并发进程数
这里配置成无限制
三、手动关闭问题
其中:
基础告警49
微信发送9人
总计发出告警:441封
四、等待执行结果
在此能够看到,出乎意料的快呀,30秒不到竟然所有发完了
再测试一组:
一样也是30秒内(截图手慢了点),我的微信也所有收到
一、配置好告警推送
这里采用微信告警和邮件告警
二、配置微信和邮件告警并发进程数
这里配置成无限制
3.关闭问题
其中:
基础告警49
微信发送9人
邮件发送7人
总计发出告警:784封
4.执行结果
这里能够看出多一个途径后不能在30秒内所有发完了
这里能够看出1分钟内能够所有发送完毕800多封告警(其中两个用户没有配置邮箱因此显示失败),同时微信和邮件也所有收到
邮箱部分邮件被自动识别为垃圾邮件删除了
5.查看zabbix图形
这里能够看出在zabbix_server_conf设置并发进程参数为30足够应付上千封邮件的推送
经过zabbix3.2.4和3.4.0的对比能够看出zabbix3.4版本对告警优化比以前的版本快了不止五、6倍,若是您所在的环境配置了大量用户接收告警的或多种途径接收的话,很是建议使用zabbix3.4版本