一.什么是Zabbix proxy分布式监控配置
Zabbix proxy是在大规模分布式监控场景中,采用的一种用以分担server端压力的分层结构,Proxy只负责一定区域内的数据采集工作,可以代替zabbix server检索客户端的数据,然后定期将数据一次性发送给server,极大的减轻了server的负载压力,使得可以支持更大规模的监控需求,非常简便的实现了集中式、分布式监控。
Zabbix主要由zabbix server和zabbix agent组成
- server端负责从agent端收集监控数据,并存储在数据库中,同时对数据进行分析展示,并触发相关报警
- agent端负责监控数据的采集,并发送给server端
而数据的采集方式除了在被监控主机上部署agent程序外,还可通过ICMP/IPMI/SNMP等协议对网络设备进行监控,同时配置web监控方式可以监控web页面的下载速率和响应时间等重要参数
zabbix proxy 使用场景:
- 监控远程区域设备
- 监控本地网络不稳定区域
- 当 zabbix 监控上千设备时,使用它来减轻 server 的压力
- 简化 zabbix 的维护
环境说明(企业中):
zabbix-server 处于外网,zabbix-agent 处于各个地方的内网,所有内网都是互通的。其中有一台内网服务器既可以和内网通信,也可以和外网进行通信。
通过zabbix proxy的搭建,zabbix server可以远程从proxy获取到数据,这里的环境相当于zabbix server具有一个公网ip地址,zabbix agent只具有内网地址,zabbix proxy具有外网地址和内网地址,搭建zabbix proxy使zabbix server能通过proxy远程获取到zabbix agent的数据
图来自网络
注意事项:
-
zabbix proxy 仅仅需要一条 tcp 连接到 zabbix server,所以防火墙上仅仅需要加上一条规则即可
-
zabbix proxy 数据库必须和 server 分开,否则数据会被破坏
-
proxy 收集到数据之后,首先将数据缓存在本地,然后在一定的时间之后传递给 zabbixserver,这样就不会因为服务器的任何临时通信问题而丢失数据。这个时间由 proxy配置文件中参数 ProxyLocalBuffer 和 ProxyOfflineBuffer 决定
Zabbix server数据库直接更新,最新配置的proxy可能会比Zabbix server新,而Zabbix server的配置由于 CacheUpdateFrequency 的原因而无法快速更新。因此,proxy收集发送Zabbix server数据可能会被忽略
zabbix proxy 是一个数据收集器,它不计算触发器、不处理事件、不发送报警
二:Zabbix proxy 分布式监控的部署
主机 | 服务 |
---|