简介:
zabbix proxy 可以代替 zabbix server 收集性能和可用性数据,然后把数据汇报给 zabbix server,并且在一定程度上分担了zabbix server 的压力.
zabbix-proxy使用场景:
1.监控远程区域设备
2.监控本地网络不稳定区域
3.当 zabbix 监控上千设备时,使用它来减轻 server 的压力
4.简化分布式监控的维护
111.png
实验架构
2222.png这里zabbix server端和zabbix agent已经是安装完成的,主要是安装zabbix proxy
zabbix proxy安装
1.前提是先关闭防火墙和selinux
2.安装zabbix proxy,在192.168.45.102执行以下命令
添加zabbix软件仓库
rpm -ivh http://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
安装zabbix-proxy
yum install -y zabbix-proxy
3.因为zabbix proxy是会手机agent的数据,所以也需要数据库
1.安装mariadb
yum install -y mariadb mariadb-server
2.启动和开机启动mariadb
systemctl start mariadb
systemctl enable mariadb
3.进入数据库进行配置和账号密码设置
mysql -uroot
MariaDB [(none)]> create database zabbix_proxy character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on zabbix_proxy.* to zabbix_proxy@localhost identified by 'password';
MariaDB [(none)]> \q
4.导入表结构,对于Zabbix proxy 数据库, 只需要导入 schema.sql (不需要 images.sql 和 data.sql)
zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix_proxy -ppassword zabbix_proxy
5.配置zabbix-proxy
编辑配置文件vim /etc/zabbix/zabbix_proxy.conf
ProxyMode=0 #0为主动, 1为被动
Server=192.168.45.101 #zabbix server服务器的地址或主机名
Hostname=my_proxy #代理服务器名称, 需要与zabbix server添加代理时候的proxy name是一致的!
DBHost=localhost #数据库服务器地址
DBName=zabbix_proxy
DBUser=zabbix_proxy
DBPassword=password
DBPort=3306
下面是一些常用的配置参数,非必要
ProxyLocalBuffer=3 #数据同步到server,数据还会保存多久,单位小时
ProxyOfflineBuffer=24 #未提交的数据保存多长时间
HeartbeatFrequency=60 #心跳间隔检测时间, , 默认60秒, 范围0-3600秒, 被动模式不使用
ConfigFrequency=5 #间隔多久从zabbix server 获取监控信息
DataSenderFrequency=5 #数据发送时间间隔, 默认为1秒, 范围为1-3600秒, 被动模式不使用
StartPollers=10 #启动的线程数, 与客户端的数据保持一致
6.启动已经安装好的zabbix-agent,发送数据给zabbix-proxy,并配置zabbix-agent(IP:192.168.45.103这台主机)
在IP:192.168.45.103这台主机上编辑配置文件vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.45.102 #这里填写proxy的地址,因为是由proxy来收集数据的
Hostname=192.168.45.103 #这里填被监控的主机名字(我这里就直接写的zabbix-agent主机的ip地址)
7.启动和开机启动zabbix-proxy和zabbix-agent
在安装了zabbix-proxy的IP:192.168.45.102的主机上
systemctl start zabbix-proxy
systemctl enable zabbix-proxy
在安装了zabbix-agent的IP:192.168.45.103的主机上
systemctl start zabbix-agent
systemctl enable zabbix-agent
8.接下来就是在zabbix-server的web端设置并添加代理了
1.png
2.png
3.png
4.png
5.png
6.png
7.png
8.png
注意:有时候会没有获取到数据,这个是因为proxy启动了,但是zabbix 的server端没有创建代理,解决方法重启一下zabbix proxy就可以了,也有可能是因为防火墙打开的或者防火墙没有放开10050端口所致
重启zabbix-proxy
systemctl restart zabbix-proxy
关闭防火墙
systemctl stop firewalld
放开10050端口和10051端口
zabbix-server放开10051端口
firewall-cmd --zone=public --remove-port=10051/tcp 重启后失效
firewall-cmd --zone=public --remove-port=10051/tcp --permanent 重启后不失效(永久失效)
zabbix-proxy放开10051端口
firewall-cmd --zone=public --remove-port=10051/tcp 重启后失效
firewall-cmd --zone=public --remove-port=10051/tcp --permanent 重启后不失效(永久失效)
zabbix-agent放开10050端口
firewall-cmd --zone=public --remove-port=10050/tcp 重启后失效
firewall-cmd --zone=public --remove-port=10050/tcp --permanent 重启后不失效(永久失效)
网友评论