zabbix的代理

当被监控的主机群组和zabbix-server的主机不在同一个地点是,间隔了2道防火墙不能通信,这时需要用到代理整合被监控端的数据然后“穿过”防火墙,发送到zabbix-server。

在这里插入图片描述
数据不直接发送到zabbix-server而是发送到代理,代理统一发送到另一地机房的防火墙,在防火墙做端口映射,就可以发送到了。

并且这时是主动模式,proxy可能是多个,用主动模式业算是降低了zabbix-server的压力。

配置zabbix-proxy:

1、安装软件的源,并安装软件。
zabbix-proxy-mysql zabbix-get zabbix-java-gateway mariadb-server mariadb这堆
2、然后导入数据库。
3、配置proxy。
4、修改被监控的主机的服务端地址。

1、安装源和软件。

[root@localhost ~]# rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm 
warning: zabbix-release-3.4-2.el7.noarch.rpm: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:zabbix-release-3.4-2.el7         ################################# [100%]

[root@localhost ~]# yum install zabbix-proxy-mysql zabbix-get zabbix-java-gateway mariadb-server mariadb -y

2、导入数据库。

[root@localhost yum.repos.d]# systemctl restart mariadb 
[root@localhost yum.repos.d]# systemctl enable mariadb 
Created symlink from /etc/systemd/system/multi-user.target.wants/mariadb.service to /usr/lib/systemd/system/mariadb.service.



MariaDB [(none)]> create database zabbix_proxy character set utf8 collate utf8_bin;
创建数据库并指定字符集

MariaDB [(none)]> grant all on zabbix_proxy.* to zabbix@'localhost' identified by '000000';
创建用户分配权限
MariaDB [(none)]> flush privileges;
刷新权限列表
[root@localhost ~]# cd /usr/share/doc/zabbix-proxy-mysql-3.4.15/
[root@localhost zabbix-proxy-mysql-3.4.15]# gunzip schema.sql.gz
[root@localhost zabbix-proxy-mysql-3.4.15]# mysql zabbix_proxy < schema.sql

MariaDB [(none)]> use zabbix_proxy 
MariaDB [zabbix_proxy]> show tables;
140 rows in set (0.01 sec)

3、 修改javagateway的配置文件和proxy配置文件。
大体上和zabbix-server的配置文件类似,只有小地方不同

[root@localhost zabbix-proxy-mysql-3.4.15]# vim /etc/zabbix/zabbix_java_gateway.conf
LISTEN_IP="0.0.0.0"
LISTEN_PORT=10052
START_POLLERS=50
 [root@localhost zabbix-proxy-mysql-3.4.15]# vim /etc/zabbix/zabbix_proxy.conf
 13 ProxyMode=0
	//主动式,zabbix-proxy主动将监控数据传给zserver
 24 Server=172.16.12.64
	//指定zabbix-server的IP,或者填防火墙的IP
 33 ServerPort=10051
	//指定zabbix-server的端口,防火墙上某个端口
 43 Hostname=SY-zabbix-proxy
	//zabbix-proxy的名字,唯一的	可以是地区加名字

156 DBHost=localhost
	//数据库的地址
167 DBName=zabbix_proxy
	//数据库名字
182 DBUser=zabbix
	//数据库的用户
190 DBPassword=000000
	//数据库用户的密码
197 DBSocket=/var/lib/mysql/mysql.sock
	//套接字文件的位置
204 DBPort=3306
	//数据库端口


244 ConfigFrequency=3
253 DataSenderFrequency=1
	//zabbix-proxy向zabbix-server发送数据的时间间隔,秒。默认3600秒,但是我为了快速的看到效果改成3秒了。


323 JavaGateway=localhost
331 JavaGatewayPort=10052
339 StartJavaPollers=50
	//zabbix-server和java之间的连接数量
	//START_POLLERS >= StartJavaPollers

启动服务

[root@localhost zabbix-proxy-mysql-3.4.15]# systemctl restart zabbix-java-gateway
[root@localhost zabbix-proxy-mysql-3.4.15]# systemctl enable zabbix-java-gateway
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-java-gateway.service to /usr/lib/systemd/system/zabbix-java-gateway.service.
[root@localhost zabbix-proxy-mysql-3.4.15]# systemctl restart zabbix-proxy 
[root@localhost zabbix-proxy-mysql-3.4.15]# systemctl enable zabbix-proxy 
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-proxy.service to /usr/lib/systemd/system/zabbix-proxy.service.

4、修改被监控的主机
然后修改agent的配置文件。

我已经有很多个直接连zabbix-server的agent了,所以别的就不需要修改,只要修改这两项。

Server=172.16.12.70 	//这个是zabbix-proxy代理的IP
ServerActive=172.16.12.70:10051 	//这个也改成proxy的地址

agent指向代理。

创建代理项
在这里插入图片描述这里的agent代理程序名称写在proxy配置文件中的hostname。
模式改为主动模式。
下边的主机在主机中添加。

修改主机中的这个位置。

在这里插入图片描述
这个位置就选择刚刚创建的agent代理程序。

然后就可以看到数据图形了。

在这里插入图片描述刚画出来很少。单确实是出来了。

PS:代理时主动向zabbix-server发送数据,但是proxy本身也有数据库,可以看到软件安装时安装了zabbix-proxy-mysql,这个和服务端装的那个软件很像,服务端的是zabbix-server-mysql。就差了中间的proxy。
做了代理的agent和server数据流向是这样的,先流向proxy存储起来,等到时间达到一定程度,就是上边配置文件中的向server端发送数据的时间间隔,便将存储在proxy数据库中的数据发送到server中,然后擦掉本地数据。并且发送过程是主动模式,这样做就降低了server的压力,毕竟不用不断的向proxy发请求数据嘛,而且默认一个小时向server端发一次数据,也是为了这个原因。

  • 0
    点赞
  • 0
    收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值