zabbix我们主要用于数据库的监控,数量百台,采用passive模式由server向client轮询数据。监控主要是shell收集数据。
数据库分布于国内和国外(可定会遇到网络问题,zabbix暂时未做proxy),zabbix server处于国内;
zabbix dasboard上显示每秒处理 200个左右的事务,这样的话几乎是没有压力的;但在queue中发现超过10m以上的居然有上百个。
原因分析:
除了国外部分server 由于网络未及时监控到的原因,大部分延迟集中在某client几个items上。
zabbix server os,数据库等机会无压力,页面打开顺畅。上线时间刚刚2个月,数据量还没达到一定规模;基本排除zabbix server 性能问题。
起初的处理办法是:增大poll 线程数,增大zabbix server 等待client的timeout时间增大的30s;虽然这样效果依然不明显。
分析客户端:针对延迟比较严重的某个item单独排查,(zabbix_agentd -c /usr/local/zabbix/conf/zabbix_agented.conf $1 $2)提示的消息为 Alarm clock,,汗。。zabbix agent timeout 时间默认为3s, 超过该时间的程序全部被截止,手动脚本执行大概10秒。现在基本有两种修改方式:1、修改监控项;2、将zabbix agent监控 timeout时间增大至15秒。。我们采用的后者!