zabbix_agent主动模式

概述

当zabbix-server监控主机过多时候,由于server端去搜集信息,zabbix会出现严重的性能问题,比如:

  1. 当监控端到一个量级的时候,web操作界面很卡,容易出现502;
  2. 图层断裂;
  3. 开启的进程太多,即使item数量减少,以后加一定量的机器也会出现问题。

所以主要往2个优化方面考虑:

  1. 添加proxy节点或者node模式做分布式监控;
  2. 调整agentd为主动模式。

由于第一个方案需要物理节点,所以尝试第二个方案。

主动模式:

主动模式一定要记得设置ServerActive=ServerIP

  1. Agent向Server建立一个TCP连接
  2. Agent请求需要检测的数据列表
  3. Server响应Agent,发送一个Items列表
  4. Agent允许响应
  5. TCP连接完成本次会话关闭
  6. Agent开始周期性地收集数据

一、 被监控端zabbix_agentd.conf的配置调整

1
vim /etc/zabbix/zabbix_agentd.conf
StartAgents=0                #客户端的anent的模式,0表示关闭被动模式,zabbix-agentd不监控本地端口,所以看不到zabbix_agentd进程
#Server=172.16.100.84        #如果设置纯被动模式,应该注释掉这行
ServerActive=172.16.100.84   #主动模式的serverip地址
Hostname=172.16.100.47       #客户端的hostname,不配置则使用主机名
RefreshActiveChecks=120      #被监控端到服务器获取监控项的周期,默认120S
BufferSize=200               #被监控端存储监控信息的空间大小
Timeout=3                    #超时时间

纯主动监控模式下的zabbix agent,只能支持zabbix agent (active)类型的监控项

二、 调整监控模版

  1. 克隆一个temple os linux模版来修改
  2. 全选

  3. 找到最下方的批量更新

  4. 类型打勾,选择主动式,然后更新

  5. 主机修改

  6. 添加完成之后,你会发现zabbix的Z灯不亮,因为服务器是基于被动模式的

  7. 这时候就有相关数据,如果硬盘或网卡监控没有数据

    模板>>主动监控模板名称>>自动发现规则

  8. 选择监控项原型-进去之后一个个点击,修改成主动式监控,在模版修改只,主动就会自动应用

  9. 过会,网卡和硬盘的监控情况就出来了。