Zabbix proxy是在大规模分布式监控场景中,采用的一种用以分担server端压力的分层结构, proxy可以代替zabbix server检索客户端的数据,然后把数据汇报给zabbix server,极大的减轻了server的负载压力,使得可以支持更大规模的监控需求,非常简便的实现了集中式、分布式监控
实验环境:
主机 | IP | 服务 |
---|---|---|
jing1 | 172.25.7.101 | zabbix-server |
jing2 | 172.25.7.102 | proxy |
jing3 | 172.25.7.103 | zabbix-agent |
实验(注意:做此实验之前需要做zabbix使用JMX监控tomcat):
1.在jing1和jing2和jing3中更改解析:
jing1、jing2、jing3: vim /etc/hosts
2.关闭proxy的zabbix-agent服务:
[root@jing2 ~]# systemctl stop zabbix-agent
3.在浏览器中创建proxy:
4.安装zabbix-proxy以及依赖性包
[root@jing2 ~]# yum install zabbix-proxy-mysql-4.0.5-1.el7.x86_64.rpm fping-3.10-1.el7.x86_64.rpm -y
5.配置数据库
[root@jing2 ~]# yum install mariadb-server -y
[root@jing2 ~]# systemctl start mariadb
[root@jing2 ~]# mysql
##创建代理需要的数据库zabbix_proxy
MariaDB [(none)]> create database zabbix_proxy character set
#数据库授权
MariaDB [(none)]> grant all privileges on zabbix_proxy.* to zabbix@localhost identified by 'westos';
MariaDB [(none)]> exit
[root@jing2 ~]# cd /usr/share/doc/zabbix-proxy-mysql-4.0.5/
##导入数据库
[root@jing2 zabbix-proxy-mysql-4.0.5]# zcat schema.sql.gz | mysql zabbix_proxy
##查看数据库
[root@jing2 zabbix-proxy-mysql-4.0.5]# mysql -uzabbix -predhat zabbix_proxy
MariaDB [zabbix_proxy]> show databases;
MariaDB [zabbix_proxy]> exit
6.编辑proxy中的zabbix-proxy中的配置文件并开启proxy服务
[root@jing2 ~]# vim /etc/zabbix/zabbix_proxy.conf
30 Server=172.25.66.1 #proxy端的ip
39 ServerPort=10051 #proxy的主机名
49 Hostname=proxy
173 DBName=zabbix_proxy #数据库名称
188 DBUser=zabbix #数据库用户
196 DBPassword=redhat #数据库密码
329 JavaGateway=172.25.66.1
337 JavaGatewayPort=10052
345 StartJavaPollers=5
[root@jing2 ~]# systemctl start zabbix-proxy
7.查看端口10051是否开启,并查看相应的日至是否接收正常
[root@jing2 ~]# netstat -antlp | grep :10051
#在proxy端查看日至,是否接收成功(接收成功的结果为3490:20190516:205221.291 received configuration data from server at “172.25.7.101”, datalen 3511)
[root@jing2 ~]# cat /var/log/zabbix/zabbix_proxy.log
#在server端查看日至,是否发送成功(发送成功的结果为1247:20190516:205220.478 sending configuration data to proxy “proxy” at “172.25.66.2”, datalen 3511)
[root@jing1 ~]# cat /var/log/zabbix/zabbix_server.log
8.在jing3端(zabbix-agent)将ip设置指向proxy
[root@ jing3 ~]# vim /etc/zabbix/zabbix_agentd.conf
98 Server=172.25.7.102
139 ServerActive=172.25.7.102