Akemi

Zabbix-Proxy

2024/09/17

Zabbix-proxy是Zabbix监控系统中的一个重要组成部分,它在大型或分布式网络环境中扮演着关键角色,用于代替Zabbix Server收集性能和可用性数据,并将这些数据汇报给Zabbix Server

也就是说,他是多个网络或地区zabbix架构中的中间节点

环境说明

1
2
3
4
5
6
7
8
9
CentOS7.9
Zabbix 5.0

192.168.10.171 zabbix-server
192.168.10.172 zabbix-proxy

待添加主机:
192.168.10.161 web1
192.168.10.165 nginx2

安装zabbix-proxy

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
1.从zabbix官网搞zabbix-proxy的rpm包,添加源
wget https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-proxy-mysql-5.0.0-1.el7.x86_64.rpm
yum install -y zabbix-proxy-mysql-5.0.0-1.el7.x86_64.rpm

2.安装与配置本地数据库
# 安装
yum -y install mariadb-server.x86_64
systemctl enable mariadb.service --now

# 配置
mysql_secure_installation
...
create database zabbix_proxy character set utf8 collate utf8_bin;
grant all privileges on zabbix_proxy.* to 'zabbix_proxy'@'localhost' identified by '123456';
flush privileges;
exit;

# 导入zabbix表
zcat /usr/share/doc/zabbix-proxy-mysql-5.0.0/schema.sql.gz | mysql -uzabbix_proxy -p123456 zabbix_proxy

3.配置zabbix-proxy
cp /etc/zabbix/zabbix_proxy.conf /etc/zabbix/zabbix_proxy.conf.bak
cat >/etc/zabbix/zabbix_proxy.conf<<EOF
Server=192.168.10.171
Hostname=zabbix_proxy
ServerPort=10051
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
DBName=zabbix_proxy
DBUser=zabbix_proxy
DBPassword=123456
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
StatsAllowedIP=127.0.0.1
EOF

systemctl restart zabbix-proxy.service

web创建代理

进入管理-proxy-创建proxy-添加

代理名称: zabbix_proxy
代理模式: 主动模式
代理地址: 192.168.10.172

重启zabbix-proxy服务

server日志:
30655:20240917:211645.808 sending configuration data to proxy “zabbix_proxy” at “192.168.10.172”, datalen 3662, bytes 1299 with compression ratio 2.8

创建agent与连接proxy

客户端

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
cp -a /etc/yum.repos.d /etc/yum.repos.d.backup
rm -f /etc/yum.repos.d/*
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
rpm -Uvh zabbix-release-5.0-1.el7.noarch.rpm
yum clean all
yum makecache
yum -y install zabbix-agent2
systemctl enable zabbix-agent2 --now
cat >/etc/zabbix/zabbix_agent2.conf<<EOF
PidFile=/var/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=0
Server=192.168.10.172
ServerActive=192.168.10.172
Include=/etc/zabbix/zabbix_agent2.d/*.conf
ControlSocket=/tmp/agent.sock
HostnameItem=system.hostname
HostMetadataItem=system.hostname
EOF
systemctl restart zabbix-agent2.service

服务器端(正常流程)

进入配置-主机-创建主机

注意勾选:由Proxy代理程序监测 zabbix_proxy

注意——重启代理服务

服务器端(使用自动注册)

进入配置-动作-创建动作

注意——重启代理服务

CATALOG
  1. 1. 安装zabbix-proxy
  2. 2. web创建代理
  3. 3. 创建agent与连接proxy