zabbix proxy安装步骤

说明:

zabbix_proxy安装 zabbix proxy_数据库

  Zabbix Proxy使用的是独立的数据库实例,如果放在一起数据容易遭到破坏;Proxy仅仅是一个数据采集的作用,其他的依然是依靠Server端实现,这就会造成一个现象,如果Proxy出现断连,就不会再出现告警了。

zabbix proxy应用场景

  • agent在一个网段,server在另一个网段,这个时候需要一台能够连接server网段的机器来将agent的数据跨越内外网传输过去
  • 减轻server的服务器压力

1、配置SELinux和防火墙将SELinux设置为宽松模式并配置防火墙

sed -i.bak "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
setenforce 0
firewall-cmd --permanent --add-port=10051/tcp
firewall-cmd --permanent --add-port=10051/udp

2、添加zabbix阿里源,用脚本

环境依然是CentOS 7,Zabbix Proxy在CentOS7上目前支持5.2版本。

替换阿里云Zabbix源

shell脚本  zabbix_aliyun.sh

#!/bin/bash

echo -e "请给出要安装的zabbix版本号,建议使用4.x的版本  \033[31musage:./zabbix_aliyun.sh 4.0|4.4|4.5|5.0 \033[0m"
echo "例如要安装4.4版本,在命令行写上 ./zabbix_aliyun.sh 4.4"
if [ -z $1 ];then
    exit
fi
VERSION=$1
if [ -f /etc/yum.repos.d/zabbix.repo ];then
    rm -rf /etc/repos.d/zabbix.repo
fi
rpm -qa | grep zabbix-release && rpm -e zabbix-release
rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/$VERSION/rhel/7/x86_64/zabbix-release-$VERSION-1.el7.noarch.rpm
sed -i "s@zabbix/.*/rhel@zabbix/$VERSION/rhel@g" /etc/yum.repos.d/zabbix.repo
sed -i 's@repo.zabbix.com@mirrors.aliyun.com/zabbix@g' /etc/yum.repos.d/zabbix.repo
[ $? -eq 0 ] && echo "阿里云的zabbix源替换成功" || exit 1
yum clean all
yum makecache fast

然后执行命令:

bash zabbix_aliyun.sh 5.2

 接着yum安装zabbix-proxy

yum -y install zabbix-proxy-mysql

 这里可以插入图片

3、安装数据库并初始化

 

cd /usr/local/src/
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
yum -y install mysql-server
####启动数据库并设置为开机启动#### 
systemctl start mariadb && systemctl enable mariadb 
####初始化数据库,主要是修改数据库密码和删除测试库实例#### 
mysql_secure_installation

这里插入图片

完成数据库初始化

mysql -uroot -p“密码” 
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;

 

这里实战时候导入图片

创建数据库实例

导入架构文件

这里需要注意一个点,需要编辑架构文件,指定上面创建的数据库实例名称。

ll /usr/share/doc/zabbix-proxy-mysql-5.2.3/schema.sql.gz  #这个是数据库模板

####导入数据库模板#### 

zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -u DBUser -p DBPassword DBname

4、修改Proxy配置文件

打开配置文件

vim /etc/zabbix/zabbix_proxy.conf

 更改一下几项

Server=10.0.0.10           #<===指定zabbix server的ip地址或主机名
Hostname=zabbix-proxy-1.35       #<===重要:定义监控代理的主机名,需和zabbix server前端配置时指定的节点名相同
LogFile=/tmp/zabbix_proxy.log       #<===指定日志文件的位置
PidFile=/tmp/zabbix_proxy.pid       #<===pid文件的位置
DBName=zabbix_proxy          #<===数据库名
DBUser=zabbix             #<===连接数据库的用户
DBPassword=123456         #<===连接数据库用户的密码
ConfigFrequency=60         #<===zabbix proxy从zabbix server取得配置数据的频率
DataSenderFrequency=60       #<===zabbix proxy发送监控到的数据给zabbix server的频率

启动zabbix proxy服务

systemctl start zabbix-proxy && systemctl enable zabbix-proxy

 

 

5、Zabbix Server前端配置

这里之后放入图片

创建代理

 这里之后放入图片

填入配置文件里的参数和proxy的IP地址

 这里之后放入图片

添加正常

 这里之后放入图片

查看日志并且用zabbix_get命令检测是否能获取数据

tail /var/log/zabbix/zabbix_proxy.log

 

  使用Proxy方法创建主机,并选择代理

 这里之后放入图片

老套路,选择ICMP模板测试

这里之后放入图片

添加监控仪表

这里之后放入图片

6、总结

zabbix proxy由proxy客户端和proxy数据库组成。它的的安装相对简单,配置文件相对复杂,相当于一个阉割版的zabbix server。zabbix proxy分布式部署只有采集数据功能,所以在一定程度上降低了server的I/O、内存等压力,并不完全独立。5.2新增了本地缓存以及掉线后数据会持续采集的功能,增强了分布式的可用性。