RockyLinux9.7部署Zabbix7.0LTS(server)
RockyLinux9.7部署Zabbix7.0LTS(server)
官方文档:https://www.zabbix.com/download?zabbix=7.0&os_distribution=rocky_linux&os_version=9&components=server_frontend_agent&db=mysql&ws=nginx
1.服务器信息
安装服务器信息:
| 主机名 | IP | 操作系统 |
|---|---|---|
| zabbix-server | 192.168.109.200 | Rocky Linux 9.7 |
2.安装MySQL
2.1 准备软件包并安装
创建软件目录:
mkdir -p /software/mysql
官网下载软件包并解压至软件目录:
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.45-1.el9.x86_64.rpm-bundle.tar
tar xf mysql-8.0.45-1.el9.x86_64.rpm-bundle.tar -C /software/mysql
如果服务器网络不好,可以先下载软件包再上传至服务器。
进入软件目录并安装软件:
cd /software/mysql/
rpm -ivh mysql-community-* --force --nodeps
2.2 启动MySQL服务
启动 MySQL 服务并设置开机自启:
systemctl enable --now mysqld
查看服务状态及端口监听:
systemctl status mysqld
netstat -anutp|grep 3306
2.3 登录数据库并修改密码
数据库安装启动成功后,会生成一个临时密码,我们仅能使用该密码登录数据库,也没有操作的权限,必须修改密码。
查看临时密码:
cat /var/log/mysqld.log |grep password
使用临时密码登录数据库并修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Abc123!!';
quit;
默认情况下,设置密码需要足够的长度和复杂度,测试过程中,我们如果想要设置简单的密码,可以在设置完密码后,修改密码复杂度:
set global validate_password.policy=0;
# 0:简单密码,小写字母、数字、字符一类即可,1:中等密码:小写和大写字母、数字、字符任意三种,2:强密码:小写和大写字母、数字、字符都要包含。
set global validate_password.length=6;
再次修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
quit;
2.4 常见错误
2.4.1 缺失libaio库文件
错误信息:
error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
解决方式:
dnf install -y libaio
因为执行过一次数据库初始化操作,所以数据目录 /var/lib/mysql 目录中已有数据文件,再次启动数据库还是会报错(日志目录为 /var/log/mysqld.log ),这时需要将数据目录删除再重新启动数据库服务即可。
3.安装Zabbix
3.1 准备软件仓库
添加 Zabbix 软件仓库:
rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rocky/9/x86_64/zabbix-release-latest-7.0.el9.noarch.rpm
dnf clean all
修改仓库源地址为清华源:
sed -i 's#repo.zabbix.com#mirrors.tuna.tsinghua.edu.cn/zabbix#g' /etc/yum.repos.d/zabbix*.repo
3.2 安装Zabbix组件
安装 Zabbix 的 server、frontend、agent等组件:
dnf install -y zabbix-server-mysql zabbix-web-mysql zabbix-nginx-conf zabbix-sql-scripts zabbix-selinux-policy zabbix-agent
3.3 创建和配置数据库
登录 MySQL 创建 Zabbix 所需数据库:
create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user zabbix@localhost identified by 'Abc123!!';
grant all privileges on zabbix.* to zabbix@localhost;
set global log_bin_trust_function_creators = 1;
quit;
导入初始化数据(需要输入设置的密码):
zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix
再次登录 MySQL 关闭 log_bin_trust_function_creators:
set global log_bin_trust_function_creators = 0;
quit;
3.4 修改配置文件
在配置文件中设置数据库密码:
vim /etc/zabbix/zabbix_server.conf
DBPassword=Abc123!!
3.5 设置访问端口及域名
如果修改端口和域名,修改 /etc/nginx/conf.d/zabbix.conf 文件内容(默认注释):
# listen 8080;
# server_name example.com;
3.6 重启Zabbix服务
重启 Zabbix 服务并设置开机自启:
systemctl restart zabbix-server zabbix-agent nginx php-fpm
systemctl enable zabbix-server zabbix-agent nginx php-fpm
4.Web初始化配置
在浏览器输入访问:
http://192.168.109.200







5.中文设置及乱码解决
5.1 中文设置
Web 界面选择中文:

5.2 乱码解决
设置中文后,我们会发现图标中有部分中文乱码(小方框)不能正常显示。错误界面:


我们可以将 Windows 电脑上的楷体字体拷贝到服务器的 /usr/share/zabbix/assets/fonts 目录,修改字体指向配置为 simkai:
vim /usr/share/zabbix/include/defines.inc.php
define('ZBX_GRAPH_FONT_NAME', 'simkai'); // font file name
重新刷新页面后即可解决乱码问题。正常页面:

6.错误排查
如果服务端有异常,可以通过日志进行排错:
tail -f /var/log/zabbix/zabbix_server.log