一:如果zabbix 监控大量主机,比如超过500台左右的主机,就可能会出现延迟比较大的问题,比如数据采集慢,队列等待较多等,查看队列的方法如下:
1.1:Administration-Queue:
1.2:主动模式与被动模式:
这是对于zabbix agent来说的工作模式
#被动模式就是由zabbix server向zabbix agent发出指令获取数据,即zabbix agent被动的去获取数据并返回给zabbix server,这也是默认的工作方式。
#主动模式是有zabbix agent主动采集数据并返回给zabbix server,不再需要zabbix serve进行干预,因此主动模式在一定程度上可减轻zabbix server的压力。
1.3:将被动模式改为主动模式:
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
StartAgents=0 #不监听被动模式端口10051
ServerActive=192.168.0.26 #设置主动模式的服务器端口
Hostname=hfnginx #设置唯一的标识符,各节点不能相同,被动模式设置的和zabbix sever一致
Include=/etc/zabbix/zabbix_agentd.d/*.conf #导入自定义的配置文件
#重启zabbix agent服务,查看日志:
#下面的报错是因为刚改为主动模式,但是zabbix server还没有添加此主机,因此其收不到server端发来的要收集数据的任务
1.4:在zabbix server添加agent客户端,但是默认的模板的item都是被动模式的,因此要先修改模板的被动模式为主动模式,再添加主机进行监控:
1.4.1:修改模板的模式:
#configration–templates-Template OS Linux-Full Clone,将名称更改为和之前一致的新名称然后点Add:
1.4.2:修改item模式:
#选择刚才创建的模板,点击items,全部选中已有的item:
1.4.3:然后点最下方菜单的Mass update(批量更新):
1.4.4:更改模式为zabbix agetn(active),然后点最下方的update:
1.4.5:清楚关联的模板(如果有):
1.5:确认已有的item都是主动模式的:
#这里有个disabled的,是我手动关闭的采集swap分区的,因为这是运行在azure上的虚拟机,没有swap分区,所以就关闭采集交换分区了。
1.6:添加主机:
1.6.1#configration-hosts-create host:
#下面步骤中的agent interface可以填写正确的IP,以便于后期区分这是哪一台主机。
1.6.2:关联模板:
1.7:验证数据:
#等几分钟看图是否有数据:
1.8:查看主机状态:
#使用主动模式的主机的ZBX的图标是不亮的,可能与关联的zabbix agent的模板有关,具体后续研究~!
#主动模式部署总结:
创建过程:
1.agent配置文件更改,注销原来的server,添加ServerActive = azbbix server地址,禁用主动模式端口,更改主机名做唯一标识符。
2.重启zabbix agent。
3.zabbix server端复制模板,并将items全部选中将item全部更新为主动模式。
4.取消关联的模板。
5.添加主机并选中自定义的主动模式模板,agent intercept依然可以填写正确的IP,以便区分主机使用,不影响zabbix采集数据。