监控——zabbix——zabbix_proxy重装(包含zabbix_proxy实现)

简介

Zabbix代理可以代表Zabbix服务器收集性能和可用性数据。这样,代理可以承担一些收集数据的负担,并减轻Zabbix服务器的负担。
此外,当所有代理和代理都报告给一台Zabbix服务器并且集中收集所有数据时,使用代理是实现集中式和分布式监视的最简单方法。

Zabbix代理可用于:

  • 监控远程位置的相关设备和主机
  • 监视通讯不可靠的,网络不稳定的位置
  • 监视数千个设备时,使用 Proxy 进行分布式监控。
  • 简化分布式监控的维护
    在这里插入图片描述

上图中,Proyx 仅需要一个与Zabbix服务器的TCP连接即可。这样,您只需配置一个防火墙规则,就可以轻松绕过防火墙。

注意:Zabbix代理必须使用单独的数据库。将其指向Zabbix服务器数据库将破坏配置。

代理收集的所有数据都存储在本地,然后再传输到服务器。这样,不会由于与服务器的任何临时通信问题而丢失任何数据。代理配置文件中的 ProxyLocalBuffer 和 ProxyOfflineBuffer 参数控制数据在本地保留多长时间。

zabbix proxy 是一个数据收集器,它不计算触发器、不处理事件、不发送报警。

注意: 使用 agent active 模式,一定要记住在 agent 的配置文件参数 ServerActive 加上 proxy 的 IP 地址。

只需实现 zabbix_proxy 从 四、 开始即可

一、zabbix_proxy 的 client 迁移至别的 proxy

1、zabbix_server端web修改client端代理为1.11

因为迁移过程中也需要获取client数据,迁移过程也可先暂时关闭告警信息

配置——>主机——>对应的主机名称——>代理修改为1.11——>更新

2、登录至 zabbix_agent 端更换 server

[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
Server=172.28.1.11				# 修改至其他的proxy

[root@localhost ~]# systemctl restart zabbix-agent.service
[root@localhost ~]# exit

二、zabbix_proxy服务器还原环境

1、原版本记录

# zabbix_proxy版本
[root@zabbix_proxy ~]# zabbix_proxy -V
zabbix_proxy (Zabbix) 5.0.15
Revision 40fb64d970 30 August 2021, compilation time: Aug 30 2021 12:31:32

Copyright (C) 2021 Zabbix SIA
License GPLv2+: GNU GPL version 2 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it according to
the license. There is NO WARRANTY, to the extent permitted by law.

This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit (http://www.openssl.org/).

Compiled with OpenSSL 1.0.1e-fips 11 Feb 2013
Running with OpenSSL 1.0.1e-fips 11 Feb 2013

# mysql版本
[root@zabbix_proxy ~]# mysql -V
mysql  Ver 14.14 Distrib 5.7.35, for Linux (x86_64) using  EditLine wrapper

2、卸载原zabbix程序

[root@zabbix_proxy ~]# yum remove -y zabbix-proxy-mysql.x86_64
[root@zabbix_proxy ~]# yum remove -y zabbix-release.noarch
[root@zabbix_proxy ~]# yum remove -y zabbix-agent.x86_64
[root@zabbix_proxy ~]# yum remove -y zabbix-get.x86_64

3、清除mysql数据

[root@zabbix_proxy ~]# systemctl start mysqld		# 迁移zabbix-proxy-web完停的 
[root@zabbix_proxy ~]# mysql -uroot -p
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| itop               |
| mysql              |
| performance_schema |
| sql_submeter       |
| sys                |
| zabbix_proxy       |
+--------------------+
7 rows in set (0.00 sec)

mysql> drop database zabbix_proxy;				# !!!此命令三思而后行!!!

mysql> drop user zabbix@localhost;
mysql> flush privileges;

[root@zabbix_proxy mysql]# pwd			# 清理ibdata1
/var/lib/mysql
[root@zabbix_proxy mysql]# rm -rf ibdata1
[root@zabbix_proxy mysql]# rm -rf ib_logfile0
[root@zabbix_proxy mysql]# rm -rf ib_logfile1

[root@zabbix_proxy ~]# systemctl restart mysqld			# 重启mysql
[root@zabbix_proxy ~]# du -sh *				# 此时发现ibdata1变成想要的大小了
12M	ibdata1
48M	ib_logfile0
48M	ib_logfile1
……

三、zabbix_proxy部署

1、安装zabbix_proxy

[root@zabbix_proxy ~]# yum -y install zabbix-proxy-mysql.x86_64
[root@zabbix_proxy ~]# yum -y install zabbix-get.x86_64

2、数据库准备

为 Proxy 搭建单独的 MysQL 数据库服务器,并创建逻辑库、授权的用户

mysql> mysql -uroot -p
mysql> create database zabbix_proxy character set utf8 collate utf8_bin;
mysql> create user zabbix@localhost identified by 'password';
mysql> grant all privileges on zabbix_proxy.* to zabbix@localhost;
mysql> quit;

导入初始表结构

[root@zabbix_proxy ~]# zcat /usr/share/doc/zabbix-proxy-mysql-5.0.21/schema.sql.gz | mysql -uzabbix -p zabbix_proxy 

3、配置 zabbix_proxy

[root@zabbix_proxy ~]# egrep -v "^#|^$" /etc/zabbix/zabbix_proxy.conf 
Server=172.28.1.2								# 真正的服务端IP(zabbix server的IP)可写proxy IP
ServerPort=10051 								# 根据个人需要修改,一般可以不改,默认端口是10051,要实现转发的话使用这个选项(zabbix server)
ListenPort=10051 								# zabbix-proxy服务监听的端口,默认就好
Hostname=zabbix_proxy_172.28.1.12				# proxy的hostname,在web端网页配置时需要用到
LogFile=/var/log/zabbix/zabbix_proxy.log		# Proxy代理端日志路径
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid		# PID文件的路径
SocketDir=/var/run/zabbix
DBHost=172.28.1.12								# Proxy端数据库主机名,也可以使用ip
DBName=zabbix_proxy								# Proxy端数据库名称
DBUser=zabbix									# Proxy端数据库用户
DBPassword=password								# Proxy端数据库密码
ProxyLocalBuffer=48
ProxyOfflineBuffer=48
ConfigFrequency=300								# 同步配置文件的时间
StartPollers=500								# Proxy程池数量
StartPollersUnreachable=20
StartTrappers=300
StartPingers=20
StartDiscoverers=100							# Proxy端自动发现主机的线程数量
VMwareCacheSize=256M
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
CacheSize=1G									# 内存缓存配置
StartDBSyncers=50								# 同步数据线程数
HistoryCacheSize=32M							# 历史数据缓存大小
HistoryIndexCacheSize=32M
Timeout=4										# 超时时间
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000								# 慢查询日志记录,单位为毫秒
StatsAllowedIP=127.0.0.1

更多配置说明请查看官方文档:官方zabbix_proxy.conf

4、启动 zabbix_proxy

[root@zabbix_proxy ~]# systemctl start zabbix-proxy.service

四、配置 zabbix_agent 主机(proxy下)

[root@localhost ~]# yum -y install zabbix_agent
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
Server=172.28.1.12				# 修改至代理
# 假如开启了 agent 的主动模式,这里也是代理的 IP
ServerActive=172.28.1.12

[root@localhost ~]# systemctl restart zabbix-agent.service
[root@localhost ~]# exit

五、zabbix_server 端添加 zabbix_proxy

登录 zabbix_server web 端——>管理——>agent 代理程序——>创建代理(右上角)——>agent 代理程序名称(要和proxy的配置文件中hostname一致)——>主动模式——>代理地址——>描述——>添加
在这里插入图片描述在这里插入图片描述

六、zabbix_server 端添加一个被 proxy 监控主机

配置——>主机——>创建主机——>“最下边有一个:”由agent代理程序检测,选中对应的代理即可——>添加
在这里插入图片描述

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值