Skip to content

分布式zabbix-proxy监控

拓扑结构表

主机名 IP 主机角色 linux版本
zabbix-server 192.168.242.61 server Rocky9.4
zabbix-proxy 192.168.242.62 proxy Rocky9.4
zabbix-agent 192.168.242.63 agent CentOS7

准备工作

配置域名解析(三台全做)

vi /etc/hosts

192.168.242.61    zabbix-server
192.168.242.62    zabbix-proxy
192.168.242.63    zabbix-agent

zabbix-server安装

rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rocky/9/x86_64/zabbix-release-7.0-
5.el9.noarch.rpm
dnf clean all

# 安装Zabbix server, frontend
dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy
# 安装数据库
dnf install mysql-server -y
systemctl start mysqld
systemctl enable mysqld
# 安装zabbix中文包
dnf install glibc-langpack-zh -y

初始化数据库

设置初始密码(Server@123)
mysql_secure_installation
# 自己翻译修改,密码策略记得选择1(中等)
# mysql -uroot -p
mysql> create database zabbix character set utf8mb4 collate utf8mb4_bin;
mysql> create user zabbix@localhost identified by 'Server@123';
mysql> grant all privileges on zabbix.* to server@localhost;
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;

# 导入数据
gunzip /usr/share/zabbix-sql-scripts/mysql/server.sql.gz
mysql --default-character-set=utf8mb4 -u server -p zabbix < /usr/share/zabbix-sql-scripts/mysql/server.sql

配置PHP

vi /etc/nginx/conf.d/zabbix.conf
server {
        listen          8080;
        server_name     localhost;
        ……

配置zabbix-server

vi /etc/zabbix/zabbix_server.conf

DBUser=server
DBPassword=Server@123

image-20241228234814190

启动zabbix-server

systemctl restart zabbix-server nginx php-fpm
systemctl enable zabbix-server nginx php-fpm

# 默认用户名是Admin,密码是zabbix

zabbix-proxy安装

# 配置yum源
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rocky/9/x86_64/zabbix-release-7.0-5.el9.noarch.rpm
dnf clean all
# 安装proxy
dnf install zabbix-proxy-mysql zabbix-sql-scripts zabbix-selinux-policy -y
# 安装数据库
dnf install mysql-server -y
systemctl start mysqld
systemctl enable mysqld

初始化mysql

设置初始密码(Zabbix@123)
mysql_secure_installation
# 自己翻译修改,密码策略记得选择1(中等)

# 配置Zabbix Proxy库和用户并设置对应的权限
# mysql -uroot -p
mysql> create database zabbix_proxy character set utf8mb4 collate utf8mb4_bin;
mysql> create user zabbix@localhost identified by 'Zabbix@123';
mysql> grant all privileges on zabbix_proxy.* to zabbix@localhost;
mysql> set global log_bin_trust_function_creators = 1;
mysql> quit;


# 导入初始数据

cat /usr/share/zabbix-sql-scripts/mysql/proxy.sql | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

修改zabbix-proxy配置文件

vi /etc/zabbix/zabbix_proxy.conf
# 修改如下配置
DBPassword=Zabbix@123
Server=自己zabbix-server服务器地址
Hostname=代理服务器hostname
DBName=创建的数据库名称

image-20241228220929394

zabbix-agent安装

rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/7/x86_64/zabbix-release-latest-7.0.el7.noarch.rpm
yum clean all

# 安装zabbix-agent
yum install zabbix-agent
systemctl restart zabbix-agent
syatemctl enload zabbix-aget

修改zabbix-agent配置

vi /etc/zabbix/zabbix_agentd.conf

客户端配置文件/etc/zabbix/zabbix_agentd.conf 
Server地址填写proxy的
Server_active也是proxy的
Hostname改成agent本机的(注意图中主机名Z大写是错的)
改完配置要重启服务
systemctl restart zabbix-agent

image-20241228224611443

访问192.168.242.61:8080进行配置

配置prox

image-20241229112201230

配置数据采集的主机

image-20241229112211127

结果如下

image-20241229111816351

image-20241229111835516

Comments