Zabbix 6.0 LTS 在 Ubuntu 24.04 上的安装与配置笔记
核心思路
- 安装数据库 (MySQL/MariaDB)
- 安装 Zabbix 仓库和核心组件
- 在数据库中为 Zabbix 创建库和用户
- 导入 Zabbix 初始数据库结构
- 配置 Zabbix Server 连接数据库
- 配置 Web 前端 (Nginx + PHP)
- 启动服务并完成网页安装向导
详细步骤
第1步:提升为 root 权限
sudo -s
第2步:【补充步骤】安装 MySQL 数据库服务器
官网指南假设数据库已存在,这是最常见的问题点。
# 安装 MySQL 服务器
apt install mysql-server -y
# 运行安全安装脚本,设置 root 密码等重要安全选项
mysql_secure_installation
按照提示操作:设置 root 密码、移除匿名用户、禁止 root 远程登录、删除测试数据库等。
第3步:安装 Zabbix 仓库
# 下载 Zabbix 6.0 的仓库配置包
wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_6.0+ubuntu24.04_all.deb
# 安装该配置包
dpkg -i zabbix-release_latest_6.0+ubuntu24.04_all.deb
# 更新软件包列表以加载 Zabbix 仓库信息
apt update
第4步:安装 Zabbix 组件
# 安装核心组件:Server(使用MySQL)、Web前端、Agent、Nginx配置和SQL脚本
apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent
第5步:创建 Zabbix 数据库和用户
连接到 MySQL,执行以下 SQL 命令。请将 'password' 替换为你自己设置的强密码。
mysql -uroot -p
-- 创建数据库,使用推荐的字符集
CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
-- 创建专门用于连接此数据库的用户
CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'password';
-- 授予该用户对 zabbix 数据库的所有权限
GRANT ALL PRIVILEGES ON zabbix.* TO 'zabbix'@'localhost';
-- 此设置允许Zabbix在数据库中创建存储函数,导入schema所必需
SET GLOBAL log_bin_trust_function_creators = 1;
-- 退出 MySQL
QUIT;
第6步:导入初始数据库架构和数据
# 使用 zcat 解压 SQL 脚本并通过 mysql 命令导入
# 系统会提示输入上一步为 'zabbix' 用户设置的密码
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
第7步:【重要】禁用函数创建器设置
出于安全考虑,导入完成后应关闭之前的全局设置。
mysql -uroot -p
SET GLOBAL log_bin_trust_function_creators = 0;
QUIT;
第8步:配置 Zabbix Server 连接数据库
编辑配置文件,填入数据库密码。
# 使用 nano 或 vim 编辑配置文件
nano /etc/zabbix/zabbix_server.conf
找到 DBPassword= 这一行,取消注释并填写密码:
DBPassword=password
保存并退出编辑器。
第9步:配置 Zabbix Web 前端 (Nginx)
编辑 Nginx 配置文件,取消注释并修改 listen 和 server_name。
nano /etc/zabbix/nginx.conf
找到并修改(示例配置):
# listen 80; 改为你想要的端口,例如 8080 或 80
listen 8080;
# server_name example.com; 改为你的服务器IP或域名
server_name your_server_ip;
保存并退出。
(可选)如果使用 80 以外的端口(如8080),需确保防火墙开放该端口。
(可选)如果使用 80 端口,需确保系统没有其他程序(如Apache)占用。
第10步:启动所有服务并设置开机自启
# 重启相关服务以使配置生效
systemctl restart zabbix-server zabbix-agent nginx php8.3-fpm
# 设置这些服务在系统启动时自动运行
systemctl enable zabbix-server zabbix-agent nginx php8.3-fpm
第11步:通过 Web UI 完成安装
打开浏览器,访问你配置的地址:
http://your_server_ip:8080/
或(如果使用端口80)
http://your_server_ip/
按照网页安装向导的提示操作:
- Welcome -> Check of pre-requirements 全部应为 OK。
- Configure DB connection -> 输入数据库连接信息:
- Database type:
MySQL - Database host:
localhost - Database port:
0(默认) - Database name:
zabbix - User:
zabbix - Password:
(你的zabbix数据库用户密码)
- Settings -> 设置 Server name 和 Default theme。
- Summary -> 确认安装摘要。
- Finish -> 下载配置文件
zabbix.conf.php并将其放入/usr/share/zabbix/conf/目录。 - 使用默认账号登录管理后台:
- Username:
Admin - Password:
zabbix
故障排除要点
- 页面无法访问:
- 检查防火墙是否放行了
8080(或你设置的)端口:ufw status - 确认 Nginx 是否正常运行:
systemctl status nginx
- 数据库连接错误:
- 检查
/etc/zabbix/zabbix_server.conf中的DBPassword是否正确。 - 确认 MySQL 服务是否启动:
systemctl status mysql
- 502 Bad Gateway:
- 检查 PHP-FPM 服务是否启动:
systemctl status php8.3-fpm
- Web安装向导卡在第5步:
- 手动将下载的
zabbix.conf.php上传到服务器上的/usr/share/zabbix/conf/目录,并确保权限正确(通常属于www-data用户)。