1.为什么要学zabbix-proxy
2.zabbix-proxy工作流程
zabbix-proxy作用就是 临时存储数据,且转发,给zabbix-server,也就是采集的监控数据,中转站。
数据流走向就是
zabbix-agent > zabbix-proxy > zabbix-server
3.zabbix-proxy部署
1. 部署一个zabbix-proxy机器
2. 设置zabbix元修改为清华的
rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
sed -i 's#repo.zabbix.com#mirrors.tuna.tsinghua.edu.cn/zabbix#g' /etc/yum.repos.d/zabbix.repo
yum install zabbix-proxy-mysql mariadb-server -y
3. zabbix-proxy 和 zabbix-server配置几乎一样,模拟了一个server角色,去存储agent的数据
systemctl start mariadb.service
mysqladmin password linux0224
mysql -uroot -plinux0224
4.数据库创建,zabbix库,以及mysql账号
# 非交互式的,执行mysql的 SQL语句
mysql -uroot -plinux0224 -e "create database zabbix_proxy character set utf8 collate utf8_bin;"
mysql -uroot -plinux0224 -e "grant all privileges on zabbix_proxy.* to zabbix_proxy@localhost identified by 'linux0224';"
mysql -uroot -plinux0224 -e "flush privileges;"
5. 导入zabbix——poroxy的数据库数据
zcat /usr/share/doc/zabbix-proxy-mysql-4.0.42/schema.sql.gz| mysql -uzabbix_proxy -plinux0224 zabbix_proxy
6.创建proxy配置文件
cat > /etc/zabbix/zabbix_proxy.conf <<'EOF'
ProxyMode=0 # 代理模式,0 主动, 1 被动
Server=10.0.0.71 # 填入zabbix-server地址
ServerPort=10051 # 填入zabbix-server端口
Hostname=zabbix-proxy-72 # 填入主机名
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
DBHost=localhost
DBName=zabbix_proxy
DBUser=zabbix_proxy
DBPassword=linux0224
ConfigFrequency=60 # proxy多久和server同步配置信息
DataSenderFrequency=5 # proxy多久发送一次自己的数据给server
EOF
7.启动,检查
systemctl restart zabbix-proxy.service
[root@zabbix-proxy-72 ~]#netstat -tunlp|grep zabbix
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 1954/zabbix_proxy
tcp6 0 0 :::10051 :::* LISTEN 1954/zabbix_proxy
4.zabbix-agent修改
前置动作
- 关闭自动注册,自动发现等
- 删除现有的主机,查看基于zabbix-proxy模式的agent机器添加,数据采集
# agent是什么 添加模式?
# 自动注册模式,看懂1111
# ServerActive=10.0.0.72
# HostMetadata=Linux
自己for循环批量给 web7 web8 cicd99 jenkins100
[root@zabbix-server-71 ~]#cat zabbix_agentd.conf
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
Server=10.0.0.72
ServerActive=10.0.0.72
HostMetadata=Linux
Include=/etc/zabbix/zabbix_agentd.d/*.conf
[root@zabbix-server-71 ~]#for server in 7 8 99 100;do scp zabbix_agentd.conf [email protected].${server}:/etc/zabbix/ ; done
zabbix_agentd.conf 100% 200 494.5KB/s 00:00
zabbix_agentd.conf 100% 200 444.5KB/s 00:00
zabbix_agentd.conf 100% 200 371.4KB/s 00:00
zabbix_agentd.conf 100% 200 353.2KB/s 00:00
批量重启
for server in 7 8 99 100;do ssh [email protected].${server} "systemctl restart zabbix-agent" ; done
4.2 去zabbix-UI中添加proxy的配置
看最新数据