Zabbix是一款开源的企业级网络监控软件,可以监测服务器、网络设备、应用程序等各种资源的状态和性能指标。在大型环境中,如果只有一个Zabbix Server来监控所有的节点,可能会遇到性能瓶颈和数据处理难题。
为了解决这个问题,Zabbix提供了分布式监控的功能,允许多个Zabbix Server之间通过代理和数据共享来协同完成监控任务。其中,zabbix-proxy就是一种可选的代理,它可以缓解Zabbix Server的负担,提高监控效率。
zabbix-proxy可以安装在局域网内的节点上,负责采集这些节点的监控数据,并将数据转发给Zabbix Server。相比于Zabbix Server直接采集数据,zabbix-proxy的优势在于:
需要注意的是,zabbix-proxy仅负责数据采集和转发,不具备数据处理和存储的能力。因此,在使用分布式监控时,需要根据实际情况合理安排Zabbix Server和zabbix-proxy的数量和布局,以满足监控要求和性能需求。
zabbix-server 192.168.231.219
zabbix-proxy 192.168.231.230
zabbix-agent 192.168.231.231
systemctl stop firewalld && setenforce 0
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum clean all
yum -y install zabbix-proxy-mysql
需要时间较长点
- yum -y install mysql-server mysql
-
- 启动数据库,获取密码
- systemctl start mysqld
- grep password /var/log/mysqld.log
-
- 修改密码
- mysqladmin -uroot -p'旧密码' password '新密码'
- # mysql -uroot -p
- password
- 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> set global log_bin_trust_function_creators = 1;
- mysql> quit;
zcat /usr/share/doc/zabbix-proxy-mysql*/schema.sql.gz | mysql -uzabbix -p zabbix_proxy
- # mysql -uroot -p
- password
- mysql> set global log_bin_trust_function_creators = 0;
- mysql> quit;
- vim /etc/zabbix/zabbix_proxy.conf
-
- 全部打开或者修改
- ProxyMode=1 #被动
-
- Server=192.168.231.219 #主的zabbix-server的IP
-
- ServerPort=10051
-
- Hostname=zabbix-proxy
-
- EnableRemoteCommands=1
-
- LogRemoteCommands=1
-
- DBHost=localhost #默认即可
-
- DBName=zabbix_proxy #数据库名字
-
- DBUser=zabbix #远程登录数据库的用户名字
-
- DBPassword=Qianfeng@123
-
- ConfigFrequency=30
-
- DataSenderFrequency=1
输入192.168.231.219/zabbix
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
yum clean all
yum -y install zabbix-agent
- vim /etc/zabbix/zabbix_agentd.conf
-
- Server=192.168.231.230 #proxy的IP
- ServerActive=192.168.231.230
- Hostname=zabbix-agent2
systemctl start zabbix-agent
检查 TCP 端口 是否处于侦听状态。返回 0 - 未侦听;1 - 正在侦听
正常状态为1,当为0时,则不正常 开始触发警报
测试
systemctl stop nginx