Zabbix是运维常用的开源监控工具,支持服务器、网络设备、应用程序等多场景监控。本文基于CentOS 8系统,详细拆解Zabbix Server(监控端)和Zabbix Agent(被控端)的部署步骤,所有命令可直接复制执行,新手也能快速上手。
一、部署前准备(Server端+Agent端通用)
1. 关闭防火墙与SELinux
避免端口拦截或权限限制,执行以下命令:
关闭防火墙并禁用开机自启
systemctl stop firewalld && systemctl disable firewalld
临时关闭SELinux(立即生效)
setenforce 0
永久关闭SELinux(重启后生效)
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
2. 配置YUM源(确保依赖安装顺畅)
安装epel源(补充依赖包)
dnf install -y epel-release
清理并更新YUM缓存
dnf clean all && dnf makecache
二、Zabbix Server部署(监控端核心步骤)
1. 安装Zabbix官方源
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/8/x86_64/zabbix-release-7.0-2.el8.noarch.rpm
2. 安装Zabbix Server及依赖组件
需安装数据库(MariaDB)、Web服务(Apache)、PHP环境等,命令如下:
dnf install -y zabbix-server-mysql zabbix-web-mysql zabbix-apache-conf zabbix-sql-scripts mariadb-server php php-mysqlnd
3. 配置MariaDB数据库
Zabbix需依赖数据库存储监控数据,步骤如下:
启动MariaDB并设置开机自启
systemctl start mariadb && systemctl enable mariadb
初始化数据库(设置root密码,按提示操作)
mysql_secure_installation
操作说明:回车→输入y设置root密码→输入密码(如Zabbix@123)→重复密码→后续全部输入y
登录数据库并创建Zabbix专属库和用户
mysql -u root -p
输入上面设置的root密码,进入数据库命令行后执行以下SQL
create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user 'zabbix'@'localhost' identified by 'Zabbix@123';
grant all privileges on zabbix.* to 'zabbix'@'localhost';
flush privileges;
exit;
导入Zabbix初始数据库脚本
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -u zabbix -p zabbix
输入Zabbix用户密码(Zabbix@123),等待导入完成(约1-2分钟)
4. 配置Zabbix Server核心文件
编辑Zabbix Server配置文件,指定数据库信息
vim /etc/zabbix/zabbix_server.conf
找到以下参数并修改(去掉注释符#,填写对应值)
DBName=zabbix
DBUser=zabbix
DBPassword=Zabbix@123 与数据库中Zabbix用户密码一致
保存退出(vim操作:按ESC→输入:wq→回车)
5. 启动Zabbix Server与Apache服务
启动服务
systemctl start zabbix-server httpd
设置开机自启
systemctl enable zabbix-server httpd
验证服务状态(无error则正常)
systemctl status zabbix-server httpd
6. 完成Web界面初始化
- 浏览器访问:
http://Zabbix ServerIP/zabbix(如http://192.168.1.100/zabbix) - 进入安装向导,点击“Next step”,检查依赖项全部通过后继续
- 数据库配置页面:填写密码(Zabbix@123),其他默认,点击“Next step”
- 服务器详情页面:自定义主机名(如Zabbix-Monitor-Server),点击“Next step”
- 确认配置信息,点击“Next step”→“Finish”完成安装
- 登录界面:默认账号
Admin,密码zabbix
三、Zabbix Agent部署(被控端,需监控的服务器)
1. 安装Zabbix Agent(同Server端源)
安装Zabbix官方源(若已安装可跳过)
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/8/x86_64/zabbix-release-7.0-2.el8.noarch.rpm
安装Zabbix Agent
dnf install -y zabbix-agent
2. 配置Zabbix Agent(指向Server端)
编辑Agent配置文件
vim /etc/zabbix/zabbix_agentd.conf
修改核心参数(按实际环境调整)
Server=192.168.1.100 Zabbix Server的IP地址
ServerActive=192.168.1.100 主动模式下Server的IP
Hostname=Web-Server-01 被控端主机名(需与Server端配置一致)
保存退出
3. 启动Agent并验证
启动Agent服务
systemctl start zabbix-agent
设置开机自启
systemctl enable zabbix-agent
验证服务状态
systemctl status zabbix-agent
验证10050端口是否监听(Agent默认端口)
netstat -tuln | grep 10050
四、Server端添加被控端主机(Web界面操作)
- 登录Zabbix Web界面(Admin/zabbix)
- 进入【配置】→【主机】→【创建主机】
- 基本信息配置:
- 主机名称:与Agent配置文件中
Hostname一致(Web-Server-01) - 可见名称:自定义(如“北京机房-Web服务器01”)
- 群组:选择“Linux servers”(或自定义群组)
- 主机名称:与Agent配置文件中
- 接口配置:
- 类型:Zabbix agent
- IP地址:被控端实际IP(如192.168.1.101)
- 端口:10050(默认)
- 模板关联:
- 点击【模板】→【选择】,搜索“Template OS Linux by Zabbix agent”
- 选中模板后点击“添加”,关联基础监控项(CPU、内存、磁盘等)
- 点击页面底部【添加】,完成主机添加
- 验证:进入【监测】→【最新数据】,选择被控端主机,能看到数据则部署成功