zabbix proxy 分布式监控配置

一、什么是zabbix-proxy:

  • Zabbix proxy是在大规模分布式监控场景中,采用的一种用以分担server端压力的分层结构, proxy可以代替zabbix server检索客户端的数据,然后把数据汇报给zabbix server,极大的减轻了server的负载压力,使得可以支持更大规模的监控需求,非常简便的实现了集中式、分布式监控

zabbix proxy 分布式监控配置_第1张图片

二、主机环境

主机 IP 角色
server1 172.25.19.1 zabbix - server
proxy 172.25.19.2 proxy
server3 172.25.19.3 zabbix - agent

三、zabbix proxy的配置

  • 此实验是在zabbix监控平台搭建好,并且有一个agent(server3),将之前的环境清除干净(包括关闭自动发现等等)
  1. 首先关闭proxy的agent(没有配置的可以不做此步骤)
[root@proxy ~]# systemctl stop zabbix-agent
  1. 在三个主机中都添加proxy的解析
[root@proxy ~]# vim /etc/hosts
172.25.19.2   proxy
[root@server1 ~]# vim /etc/hosts
172.25.19.2   proxy
[root@server3 ~]# vim /etc/hosts
172.25.19.2   proxy
  1. 先在网页创建proxy
    管理—>agent代理程序—>创建代理
    zabbix proxy 分布式监控配置_第2张图片
    zabbix proxy 分布式监控配置_第3张图片

  2. 在proxy(172.25.19.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
  1. 配置数据库
##安装数据库
[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        ##导入数据库
  • 查看数据库zabbix proxy 分布式监控配置_第4张图片
  1. 编辑proxy的zabbix-proxy的配置文件
[root@proxy ~]# vim /etc/zabbix/zabbix_proxy.conf
 30 Server=172.25.19.1     # proxy端的ip
 39 ServerPort=10051       # proxy的主机名
 49 Hostname=proxy
173 DBName=zabbix_proxy     # 数据库名称
188 DBUser=zabbix          # 数据库用户
196 DBPassword=westos     # 数据库密码
329 JavaGateway=172.25.19.1
337 JavaGatewayPort=10052
345 StartJavaPollers=5
  1. 打开服务,查看端口10051是否开启,并查看相应日志看是否接收正常
[root@proxy ~]# systemctl start zabbix-proxy
[root@proxy ~]# netstat -antlp | grep :10051

[root@proxy ~]# cat /var/log/zabbix/zabbix_proxy.log       ##查看proxy端的日志,是否接受成功(received)
  3038:20190310:151052.719 received configuration data from server at "172.25.19.1", datalen 3511

[root@server1 4.0]# cat /var/log/zabbix/zabbix_server.log        ##查看server端的日志,是否发送成功(sending)
  1263:20190310:151053.526 sending configuration data to proxy "proxy" at "172.25.19.2", datalen 3511
  1. 在agent端重新指向ip到proxy
[root@server3 bin]# vim /etc/zabbix/zabbix_agentd.conf
 98 Server=172.25.19.2   ##proxy端的ip
139 ServerActive=172.25.19.2
  1. 浏览器添加proxy
    zabbix proxy 分布式监控配置_第5张图片
    点击server3主机:添加agent代理接口,并由agent代理程序监测
    在这里插入图片描述
    zabbix proxy 分布式监控配置_第6张图片
    添加好之后,再次刷新网页,状态可能是灰色
    在这里插入图片描述
  2. 再次重启刷新配置文件,重启各端服务
[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   ##没有任何报错就成功了
  1. 再次刷新页面,就成功了
    在这里插入图片描述

你可能感兴趣的:(Linux,zabbix,proxy,分布式监控配置)