Zabbix 7.0 LTS 完整安装教程

内容分享1小时前发布 DunLing
0 0 0

前置环境要求

  1. 系统:CentOS Stream9 / Ubuntu22.04
  2. 数据库:MariaDB 10.5+ / MySQL8.0
  3. Web:Nginx + PHP8.2/8.3
  4. 内存:最低 2C4G,监控 100 台以上提议 8G+
  5. 防火墙放行:80、10050、10051 端口

方案一:CentOS Stream9 安装 Zabbix7.0(MySQL/Nginx)

1. 关闭 SELinux、防火墙放行端口

# 临时关闭selinux
setenforce 0
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

# 防火墙放行端口
firewall-cmd --add-service=http --permanent
firewall-cmd --add-port=10050/tcp --permanent
firewall-cmd --add-port=10051/tcp --permanent
firewall-cmd --reload

2. 安装 MariaDB 数据库

dnf install mariadb-server -y
systemctl enable --now mariadb
# 数据库安全初始化(设置root密码)
mysql_secure_installation
# 一路操作:回车→N→设置root密码→Y→Y→Y→Y

3. 导入 Zabbix 官方 YUM 源

rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/9/x86_64/zabbix-release-latest-7.0.el9.noarch.rpm
dnf clean all && dnf makecache

4. 安装 Zabbix 全套组件

dnf install zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-agent -y

5. 创建 Zabbix 数据库与账号

mysql -uroot -p
# 执行下面SQL
CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
CREATE USER zabbix@localhost IDENTIFIED BY 'Zabbix@123456';
GRANT ALL ON zabbix.* TO zabbix@localhost;
SET GLOBAL log_bin_trust_function_creators = 1;
quit;

6. 导入 Zabbix 初始化数据表

zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
# 输入密码 Zabbix@123456 等待导入完成

# 导入完毕关闭函数权限
mysql -uroot -p -e "SET GLOBAL log_bin_trust_function_creators = 0;"

7. 配置 Zabbix 服务端数据库密码

vi /etc/zabbix/zabbix_server.conf
# 修改参数
DBPassword=Zabbix@123456

8. 配置 Nginx 前端

vi /etc/nginx/conf.d/zabbix.conf
# 修改监听端口、域名
listen 80;
server_name _; # 改为服务器IP或域名
# 注释撤销 listen 与 server_name 两行注释

9. 设置 PHP 时区(关键,否则前端报错)

vi /etc/php-fpm.d/zabbix.conf
# 修改
php_value[date.timezone] = Asia/Shanghai

10. 启动所有服务并开机自启

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

11. Web 页面初始化向导

浏览器访问:http://服务器IP

  1. Next step:环境检测,全部 OK 继续
  2. Database 配置:
  3. 数据库类型:MySQL
  4. Host:localhost
  5. 库名:zabbix
  6. 用户:zabbix
  7. 密码:Zabbix@123456
  8. Zabbix server 名称:自定义(如 Zabbix-Monitor)
  9. 完成安装,生成配置文件保存到服务器
  10. 默认账号:Admin /zabbix

方案二:Ubuntu 22.04 安装 Zabbix7.0

1. 更新系统、放行防火墙

apt update && apt upgrade -y
ufw allow http
ufw allow 10050/tcp
ufw allow 10051/tcp

2. 安装 MariaDB

apt install mariadb-server -y
systemctl enable --now mariadb
mysql_secure_installation

3. 添加 Zabbix APT 源

wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest_7.0+ubuntu22.04_all.deb
dpkg -i zabbix-release_latest_7.0+ubuntu22.04_all.deb
apt update

4. 安装组件

apt install zabbix-server-mysql zabbix-frontend-php zabbix-nginx-conf zabbix-sql-scripts zabbix-agent -y

5. 创建数据库(同 CentOS SQL)

mysql -uroot -p
CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;
CREATE USER zabbix@localhost IDENTIFIED BY 'Zabbix@123456';
GRANT ALL ON zabbix.* TO zabbix@localhost;
SET GLOBAL log_bin_trust_function_creators = 1;
quit;

6. 导入初始化数据

zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
mysql -uroot -p -e "SET GLOBAL log_bin_trust_function_creators = 0;"

7. 修改服务端密码

vi /etc/zabbix/zabbix_server.conf
DBPassword=Zabbix@123456

8. Nginx 与 PHP 时区

vi /etc/nginx/conf.d/zabbix.conf
listen 80;
server_name _;

vi /etc/php/8.3/fpm/pool.d/zabbix.conf
php_value[date.timezone] = Asia/Shanghai

9. 启动服务

systemctl restart zabbix-server zabbix-agent nginx php8.3-fpm mariadb
systemctl enable zabbix-server zabbix-agent nginx php8.3-fpm mariadb

10. 访问页面

http://服务器IP,后续向导同上


方案三:Docker Compose 快速部署(测试环境推荐)

无需配置环境,一键启动 MySQL+Zabbix 服务端 + Web

# 1. 安装docker、docker-compose
apt install docker.io docker-compose -y || dnf install docker docker-compose -y
systemctl enable --now docker

# 2. 拉取官方代码
git clone https://github.com/zabbix/zabbix-docker.git
cd zabbix-docker
git checkout 7.0

# 3. 启动MySQL版本Zabbix
docker compose -f compose.yaml up -d

# 4. 访问 http://服务器IP:8080
# 默认账号 Admin/zabbix

常见问题排错

  1. 前端 PHP 时区报错
  2. 确认date.timezone = Asia/Shanghai,重启 php-fpm
  3. zabbix-server 启动失败
  4. 查看日志:tail -f /var/log/zabbix/zabbix_server.log,大致率数据库密码错误
  5. 监控主机无法连通
  6. 被控机器安装 zabbix-agent,放行 10050 端口,主动模式填写 ServerIP
  7. 中文乱码
  8. 上传微软雅黑字体到/usr/share/zabbix/assets/fonts/,修改前端字体配置文件

被控主机 Agent 安装(Linux 客户端)

# CentOS
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/9/x86_64/zabbix-release-latest-7.0.el9.noarch.rpm
dnf install zabbix-agent -y
vi /etc/zabbix/zabbix_agentd.conf
Server=Zabbix服务端IP
ServerActive=Zabbix服务端IP
Hostname=本机主机名
systemctl restart zabbix-agent
© 版权声明

相关文章

暂无评论

none
暂无评论...