
点击立即试用Zabbix7.0 beta1
Zabbix7.0 beta 1 于1月30日发布!(正式版将于第一季度发布。)
7.0有什么新功能?本文一睹为快。
Zabbix7.0 聚焦于帮助用户通过性能优化和功能升级来快速响应业务需求,从而满足客户的高期望值,并提升IT 运维人员的生产力。在可扩展性与性能、稳定性与高可用、可观测性几个领域获得持续提升。
一、性能提升之异步数据采集
1.各进程配置参数说明
2.异步数据采集效果
二、架构优化之Zabbix Proxy高可用和负载均衡
1.主机如何分配给Zabbix Proxy group监控
2.高可用和负载均衡机制
3.Zabbix Agent参数配置
三、性能提升之Zabbix Proxy内存缓存
1.缓存模式设置
2.缓存模式差异
四、功能优化之监控项级别Timeout
五、性能提升之并行网络自动发现
六、功能优化之数据推送
七、功能优化之前端脚本输入参数
八、其它提升
九、新增模板和集成方案
一、性能提升之异步数据采集
Zabbix通过各种功能进程采集数据,例如Pollers、Trappers和Pingers等,但每个进程每次只能采集单个指标的数据,导致各类进程数量都较多。
在Zabbix7.0中,Poller进程拆分出了SNMP Poller、Zabbix Agent Poller和HTTP Agent Poller这些类型进程,它们都支持异步线程处理,极大地提升了处理效率并且减少了进程数量。
所谓异步处理指线程任务相互独立,不会阻塞主进程。单个进程最多开启1000个线程。
1. 各进程配置参数说明
SNMP Poller进程数量控制

Zabbix Agent Poller进程数量控制

HTTP Agent Poller进程数量控制

单个进程并行检查数控制

2. 异步数据采集效果
数据流

采集进程处理效果


6.0和7.0性能对比

二、架构优化之Zabbix Proxy高可用和负载均衡
Zabbix6.0实现了Zabbix Server的高可用,但是未实现Zabbix Proxy高可用,Zabbix7.0同时实现了Zabbix Proxy高可用和负载均衡。
引入Zabbix Proxy group概念,将多台Zabbix Proxy合并为一个组,组内的任意Zabbix Proxy离线后自动将其监控主机分配给其它Zabbix Proxy。
1. 主机如何分配给Zabbix Proxy group监控

2. 高可用和负载均衡机制
Failover period用于检测Proxy在线还是离线
Proxy group可设置最少在线Proxy数量,低于该值则Proxy group为离线状态
负载重分配时将排除旧版本Proxy
如果Proxy group离线,组内的主机将停止重分配
当Proxy或者主机状态发生变化,主机重分配将会触发
根据每台Proxy监控的主机数量做负载均衡
为避免频繁的主机重新分配,如果某台Proxy上较多主机同时掉线不会立即分配至其它Proxy,而是等到主机上线后分配至主机数量最少的那台Proxy
3. Zabbix Agent参数配置
主动类型Agent,ServerActive参数至少包含Proxy group中一个节点IP地址,最好多个
被动类型Agent,Server参数需要包含Proxy group所有节点IP地址
三、性能提升之Zabbix Proxy内存缓存
Zabbix7.0支持多种Proxy缓存模式,Disk、Memory和Hybrid。Disk即之前版本的磁盘存储;Memory为内存存储,所有数据放在内存中;Hybrid是Disk和Memory的混合,内存不够就磁盘存储。
1. 缓存模式设置

2. 缓存模式差异

四、功能优化之监控项级别Timeout
Zabbix7.0为大部分数据检查引入监控项级别Timeout,可在前端页面配置Timeout数值,取值范围1秒到600秒(10分钟)。Timeout可在多个层级定义,包含Zabbix Server全局配置、单个Zabbix Proxy级别以及单个监控项。

五、性能提升之并行网络自动发现
当网络自动发现中扫描的IP或者网段过多,并且包含多个检查规则时,完成一次任务将消耗大量时间,这是因为单个任务只能被单个discoverer进程处理,并且每个IP按顺序执行。
Zabbix7.0引入新的网络自动发现进程,包含Discovery manager和Discovery worker(discoverer process),自监控模板中包含对应进程使用率和队列延迟指标。

网络自动发现配置页面增加最大并行检查数(Maximum concurrent checks)选项,并行处理检查。

六、功能优化之数据推送
Zabbix7.0增加history.push API方法,对应监控项类型为Zabbix Trapper和HTTP Agent(Enable trapping)。可在监控项中配置Allow Server IP只接收给定IP发送的数据,并且API方法权限可通过用户角色控制。
详细信息参见
《Zabbix7.0新功能,还可以这样推送数据!不止zabbix_sender》
七、功能优化之前端脚本输入参数
Zabbix7.0在执行前端脚本时可以输入参数,这样就不需要创建多个前端脚本或者频繁修改某个前端脚本。在脚本中使用{MANUALINPUT}宏引用自定义输入的数据。


八、其它提升
支持监控项和监控项原型名称中使用用户宏(Zabbix6.0中取消,7.0又恢复)
提升普通用户前端权限校验速度
支持原生Kafka topics的HTTP connector
支持主动检查(active checks)执行远程命令
提升聚合计算中不支持监控项处理性能
支持多页PDF格式定时报表
支持主机自动注册时分配标签
等
九、新增模板和集成方案


立即体验
点击查看 Zabbix7.0发布日志Release Notes,了解更多新增和优化特性。立即下载试用,开启崭新的Zabbix探索之旅。
你们期待的Zabbix7.0LTS 版本将很快与大家见面,敬请期待!
将在南京技术交流现场分享Zabbix7.0新功能!扫码免费报名。
延伸阅读

本文分享自微信公众号 - Zabbix开源社区(china_zabbix)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。