在监控大量服务器时,如果将所有的请求都发送到一个zabbix server上,将会对我们的zabbix server造成很大的压力,我们在规划多个区域或机房进行监控的时候,会考虑到使用zabbix proxy 来代理zabbix server 的部分功能。zabbix server 通过管理多个代理来对所有服务器进行监控。

zabbix proxy 安装配置

zabbix proxy 的安装配置也很简单,如果有官方的yum 源,直接yum 安装即可。需要注意的是,zabbix proxy 需要配置数据库,对于受监控的客户端来说,它就是一个zabbix server 的角色,只不过与他直接交互的不是zabbix server,而是zabbix proxy。

安装zabbix proxy:

yum install -y zabbix-proxy-mysql  mariadb mariadb-server

与配置server 相同,配置好数据库后,需要导入数据表:

create database zabbix_proxy character set utf8 collate utf8_bin;grant all on zabbix_proxy.* to zabbix_proxy@192.168.20.55 identified by 'zabbix_proxy';cd /usr/share/doc/zabbix-proxy-mysql-3.0.13/zcat schema.sql.gz| mysql -h 192.168.20.55 -uzabbix_proxy -pzabbix_proxy zabbix_proxy

配置zabbix proxy:

# grep '^[a-Z]'/etc/zabbix/zabbix_proxy.conf  Server=192.168.20.50                   # zabbix server IP 地址Hostname=zabbix-proxyLogFile=/var/log/zabbix/zabbix_proxy.logLogFileSize=0PidFile=/var/run/zabbix/zabbix_proxy.pidDBHost=192.168.20.55                    # zabbix proxy数据库地址DBName=zabbix_proxyDBUser=zabbix_proxyDBPassword=zabbix_proxySNMPTrapperFile=/var/log/snmptrap/snmptrap.logTimeout=4ExternalScripts=/usr/lib/zabbix/externalscriptsLogSlowQueries=3000

启动zabbix proxy:

 systemctl start zabbix-proxy

web界面配置zabbix proxy 

在web界面添加proxy:

选择模式,添加proxy主机:

配置zabbix agent

连接zabbix proxy 的 zabbix agent 配置:

# grep '^[a-Z]'/etc/zabbix/zabbix_agentd.confPidFile=/var/run/zabbix/zabbix_agentd.pidLogFile=/var/log/zabbix/zabbix_agentd.logLogFileSize=0Server=192.168.20.55                      # zabbix proxy 地址  ServerActive=192.168.20.55Hostname=agent1Include=/etc/zabbix/zabbix_agentd.d/

启动zabbix  agent:

systemctl start zabbix-agent

在web 界面添加主机,修改主机为使用proxy, zabbix-proxy: