此实验是在zabbix监控平台搭建好,并且有一个agent(server3),将之前的环境清除干净(包括关闭自动发现等等)
一。zabbix-proxy简介:
Zabbix proxy是在大规模分布式监控场景中,采用的一种用以分担server端压力的分层结构, proxy可以代替zabbix server检索客户端的数据,然后把数据汇报给zabbix server,极大的减轻了server的负载压力,使得可以支持更大规模的监控需求,非常简便的实现了集中式、分布式监控
二。主机环境
主机 IP 角色
server1 172.25.26.1 zabbix - server
proxy 172.25.26.2 proxy
server3 172.25.26.3 zabbix - agent
三。zabbix proxy的配置
1.首先关闭proxy(server2)的agent(没有配置的可以不做此步骤)
[root@proxy ~]# systemctl stop zabbix-agent
2.在三个主机中都添加proxy的解析
[root@proxy ~]# vim /etc/hosts
172.25.26.2 proxy
[root@server1 ~]# vim /etc/hosts
172.25.26.2 proxy
[root@server3 ~]# vim /etc/hosts
172.25.26.2 proxy
3.先在网页创建proxy
管理—>agent代理程序—>创建代理
4.在proxy(172.25.26.2)安装zabbix-proxy以及依赖性软件
[root@proxy ~]# yum install -y zabbix-proxy-mysql-4.0.5-1.el7.x86_64.rpm fping-3.10-1.el7.x86_64.rpm
5.配置数据库
##安装数据库
[root@proxy ~]# yum install -y mariadb mariadb-server
[root@proxy ~]# systemctl start mariadb
[root@proxy ~]# mysql
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec)
MariaDB [(none)]> create database zabbix_proxy character set utf8 collate utf8_bin; ## 创建代理需要的数据库zabbix_proxy
Query OK, 1 row affected (0.00 sec)
MariaDB [(none)]> grant all privileges on zabbix_proxy.* to zabbix@localhost identified by 'westos'; #数据库授权
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> quit
Bye
[root@proxy ~]# cd /usr/share/doc/zabbix-proxy-mysql-4.0.5/
[root@proxy zabbix-proxy-mysql-4.0.5]# zcat schema.sql.gz | mysql zabbix_proxy ##导入数据库
5.编辑proxy的zabbix-proxy的配置文件
[root@proxy ~]# vim /etc/zabbix/zabbix_proxy.conf
30 Server=172.25.26.1 # server端的ip
39 ServerPort=10051 # proxy的主机名
49 Hostname=proxy
173 DBName=zabbix_proxy # 数据库名称
188 DBUser=zabbix # 数据库用户
196 DBPassword=westos # 数据库密码
329 JavaGateway=172.25.26.1
337 JavaGatewayPort=10052
345 StartJavaPollers=5
6.打开服务,查看端口10051是否开启,并查看相应日志看是否接收正常
[root@proxy ~]# systemctl start zabbix-proxy
[root@proxy ~]# netstat -antlp | grep :10051
[root@proxy ~]# cat /var/log/zabbix/zabbix_proxy.log ##查看proxy端的日志,是否接受成功(received)
2482:20190517:011155.864 received configuration data from server at "172.25.26.1", datalen 3511
[root@server1 4.0]# cat /var/log/zabbix/zabbix_server.log ##查看server端的日志,是否发送成功(sending)
25486:20190517:011156.215 sending configuration data to proxy "proxy" at "172.25.26.2", datalen 3511
7.在agent端重新指向ip到proxy
[root@server3 bin]# vim /etc/zabbix/zabbix_agentd.conf
98 Server=172.25.26.2 ##proxy端的ip
139 ServerActive=172.25.26.2
8.浏览器添加proxy
点击server3主机:添加agent代理接口,并由agent代理程序监测
添加好之后,再次刷新网页,状态可能是灰色
解决方法:
(1)重启刷新配置文件,重启各端服务
[root@server1 4.0]# zabbix_server -R config_cache_reload
[root@proxy ~]# systemctl restart zabbix-proxy
[root@server3 bin]# systemctl restart zabbix-agent
[root@server3 bin]# cat /var/log/zabbix/zabbix_agentd.log ##没有任何报错就成功了
(2)再次刷新页面,就成功了