zabbix-proxy就是zabbix-server的狗头军师,负责将底下小弟(agent)的监控数据收集并上报给老大哥(server)。
什么场景需要用到zabbix-proxy?刚当上老大时手下两三个小弟,人数少的可怜随随便便就能管好小弟了,但随着帮会不断扩充,小弟们越收越多,还在异地开启了分帮会,这个时候老大怎么管这么多小弟呢,老大表示光靠我一个人亚历山大啊,于是乎老大就打算找点狗头军师,由狗头军师们来管理好自己分区的小弟,再由狗头军师们汇报给老大,老大只需要管理好几个狗头军师,就能管理好整个帮会!
用人话就是机器太多,机器不在一个区域,机器网络不稳定都可以用到zabbix-proxy。
由于zabbix proxy 仅仅需要一条 tcp 连接到 zabbix server,所以防火墙上仅仅需要加上一条规则即可。
zabbix-proxy操作模拟环境准备
三台虚拟机
| 服务器功能 | 服务器外网 |
|---|---|
| zabbix-server | 192.168.1.111 |
| zabbix-proxy | 192.168.1.112 |
| zabbix-agent2 | 192.168.1.113 |
zabbix-proxy部署
#1.安装proxy,以及数据库(数据库用来存储agent2发来的数据,并最终发给server) yum install zabbix-proxy-mysql zabbix-get -y yum install mariadb-server mariadb -y systemctl enable mariadb #设置开机自启 #2.启动数据库,配置数据库用户,存储zabbix-agent2信息 mysql -uroot -p create database zabbix_proxy character set utf8 collate utf8_bin; #针对zabbix用户所有权限在zabbix_proxy数据库里 grant all privileges on zabbix_proxy.* to zabbix@'localhost' identified by 'zabbix'; #刷新 flush privileges; #3.导入zabbix_proxy数据库信息 #查看yum安装路径 rpm -ql zabbix-proxy-mysql /usr/share/doc/zabbix-proxy-mysql-5.0.15/schema.sql.gz #将sql.gz文件导入mysql(zcat命令用于不真正解压缩文件,就能显示压缩包中文件的内容) zcat /usr/share/doc/zabbix-proxy-mysql-5.0.15/schema.sql.gz |mysql -uzabbix -pzabbix zabbix_proxy #4.配置zabbix-proxy配置文件 sed -i.ori '162a DBPassword=zabbix' /etc/zabbix/zabbix_proxy.conf sed -i 's#Server=127.0.0.1#Server=192.168.1.111#' /etc/zabbix/zabbix_proxy.conf sed -i 's#Hostname=Zabbix proxy#Hostname=zabbix-proxy' /etc/zabbix/zabbix_proxy.conf #5.检查代理服务器的配置文件 grep '^[a-Z]' /etc/zabbix/zabbix_proxy.conf #6.启动代理服务 systemctl restart zabbix-proxy
zabbix-agent2部署
1.修改zabbix_agent配置文件 vi /etc/zabbix/zabbix_agent2.conf Server=192.168.1.112 //proxy地址 ServerActive=192.168.1.112 //proxy地址 Hostname=zabbix-agent2 //当前主机名 2.查看配置文件 grep '^[a-Z]' /etc/zabbix/zabbix_agent2.conf 3.重启服务 systemctl restart zabbix-agent2
web界面配置
重启zabbix-proxy服务 systemctl restart zabbix-proxy.service



