作为一个适用于中大型或超大型的监控软件,分布式部署必然必不可少,同样Zabbix添加了Zabbix Proxy增强了其扩展能力,这让Zabbix在大型IT环境中有了一席之地,特别是在分区和混合云环境发挥了很大的作用,往往不需要放开过多的权限,就可以辐射更多的监控区域,并且共用一套前端,也大大的减小运维人员的使用成本。

正文
正文之前
1.Zabbix Proxy使用的是独立的数据库实例,如果放在一起数据容易遭到破坏;
2.Proxy仅仅是一个数据采集的作用,其他的依然是依靠Server端实现,这就会造成一个现象,如果Proxy出现断连,就不会再出现告警了。
安装阿里源
环境依然是CentOS 7.6,注意Zabbix Proxy在CentOS7上支持5.2版本。
添加源
cat <<EOF > /etc/yum.repos.d/zabbix.repo
[zabbix]
name=Zabbix Official Repository - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.2/rhel/7/\$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
[zabbix-non-supported]
name=Zabbix Official Repository non-supported - \$basearch
baseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/7/\$basearch/
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
gpgcheck=1
EOF
添加 gpgkey
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591
curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX \
-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX
安装Zabbix Proxy
yum -y install zabbix-proxy-mysql
安装Zabbix Proxy
安装数据库并初始化
####安装数据库####
yum -y install mariadb-server vim
####启动数据库并设置为开机启动####
systemctl start mariadb && systemctl enable mariadb
####初始化数据库,主要是修改数据库密码和删除测试库实例####
mysql_secure_installation
安装数据库和相关工具

完成数据库初始化
创建Proxy库实例
mysql -uroot -pxiaoyu123
create database zabbix_proxy character set utf8 collate utf8_bin;
create user zabbix_proxy@localhost identified by 'xiaoyu123';
grant all privileges on zabbix_proxy.* to zabbix_proxy@localhost;
quit;
创建数据库实例
导入架构文件
这里需要注意一个点,需要编辑架构文件,指定上面创建的数据库实例名称。
vim /usr/share/doc/zabbix-proxy-mysql-5.2.3/schema.sql.gz
####在首行添加该语句####
use zabbix_proxy
####导入架构####
zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix_proxy -pxiaoyu123
首行加入use zabbix_proxy,否则会出现找不到数据库
修改Proxy配置文件
vim /etc/zabbix/zabbix_proxy.conf
修改Zabbix Server地址

修改Hostname

修改为正确的数据库名字和用户名

添加该用户密码

增加本地缓存时间,防止出现网络阻塞数据传输异常(可选)

设置拉取Server配置频率,我这里设置为5S
启动zabbix proxy服务
systemctl start zabbix-proxy && systemctl enable zabbix-proxy
Zabbix Server前端配置

创建代理
填入配置文件里的参数和proxy的IP地址

添加正常

日志正常
使用Proxy方法

创建主机,并选择代理

老套路,选择ICMP模板测试

进入主机查看最新数据

数据已经获取成功,Proxy工作正常
总结
Zabbix Proxy的安装相对比较简单,但其配置文件并不简单,相当于一个阉割版的Zabbix Server,如果想要研究的更加深刻,需要详细的去测试每一项的功能,并应用在实际的生产环境中,分布式部署由于只是采集数据功能,所以只是在一定程度上降低了Server的I/O、内存等压力,并不是完全独立,另外5.2新增了本地缓存以及掉线后数据会持续采集的功能,增强了分布式的可用性。最后还是那句话,监控领域长路漫漫,绝非一朝一夕,大量的测试和验证才是真理。下期见!
原文地址:https://www.toutiao.com/i6912327525486051843/