一、Proxy的好处
代替Server去本地局域网采集Agent数据;如果Proxy和Server网络断了,采集到的数据存在Proxy本地数据库,网络恢复后批量上传,监控数据不丢失;实现大规模分布式监控。
二、proxy部署
新开一个虚拟机做proxy,下载安装下载Zabbix 6.0 LTS for Rocky Linux 9, MySQL
rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-latest-6.0.el9.noarch.rpm
dnf clean all
dnf install zabbix-proxy-mysql zabbix-sql-scripts
yum install -y mysql-server
数据库创建,Proxy使用独立数据库zabbix_proxy
mysql> create database zabbix_proxy character set utf8mb4 collate utf8mb4_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;
导入Proxy初始化表结构,一定要等待,不要中途退出,否则得重新来过
[root@server4 ~]# cat /usr/share/zabbix-sql-scripts/mysql/proxy.sql | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix_proxy
Enter password:
导入完成后关闭临时参数
mysql> set global log_bin_trust_function_creators = 0;
修改Proxy主配置文件
[root@server4 ~]# vim /etc/zabbix/zabbix_proxy.conf
# Zabbix Server地址
Server=192.168.159.141
# Proxy名称,后续Web页面添加代理时必须完全一致,大小写敏感!
Hostname=Zabbix proxy
# Proxy数据库密码,和上面mysql创建账号密码保持一致
DBPassword=password# JavaGateway配置(如需监控JMX Java程序才启用)
JavaGateway=192.168.159.141
JavaGatewayPort=10052
StartJavaPollers=5
[root@server4 ~]# systemctl enable --now zabbix-proxy
server2和server3上修改文件
[root@server2 ~]# vim /etc/zabbix/zabbix_agentd.conf
# Proxy地址,被动模式参数
Server=192.168.159.144
# 主动模式:Agent主动上报数据给Proxy
ServerActive=192.168.159.144
[root@server2 ~]# systemctl restart zabbix-agent
zabbix页面,管理——proxy创建——server2和server3选择Zabbix proxy代理
三、Grafana数据可视化
下载安装Grafana,并启动
rpm -ivh grafana-enterprise_12.4.8_31135008312_linux_amd64.rpm
systemctl enable --now grafana-server.service
浏览器登录,默认是配置IP地址的3000端口
默认账号:admin/admin,首次登录强制修改密码,也可以选择暂时跳过。
安装Zabbix数据源插件,侧边栏【插件】,搜索Zabbix; 安装官方Zabbix插件;
安装好后,点击启用,然后去添加数据源,zabbix,URL填写Zabbix API地址:http://192.168.159.141/zabbix/api_jsonrpc.php
选择用户密码登录,会方便一点
保存然后测试成功后可以添加可视化
添加面板,随意选择,比如查看内存剩余量
也可以查看cpu使用情况
导入仪表盘,官方网站如下
Grafana dashboards | Grafana Labs
选择自己想要的仪表盘模板导入,需要填写正确的id,可以在官网下载JSON文件进行上传