1 红帽企业版 Linux

概述

本节提供有关使用适用于 Red Hat Enterprise Linux 或其衍生版本(包括 AlmaLinux、CentOS Stream、Oracle Linux 和 Rocky Linux)的官方 Zabbix 安装包,将 Zabbix 从 6.4.x 升级到最新版本 version 的 7.0.x 的操作说明。

在 Zabbix 7.0 之前,RHEL 及其衍生发行版使用的是统一的安装包。 从 7.0 开始,RHEL 及其上述每个衍生版本分别使用独立的安装包,以避免可能出现的二进制不兼容问题。

升级前,请查阅相关的 upgrade notes,并确保您的系统满足 Zabbix 7.0 的 requirements

建议在升级过程中开启两个并行的 SSH 会话:一个用于执行升级步骤,另一个用于监控 server/proxy 日志。 例如,在第二个会话中使用 run tail -f zabbix_server.logtail -f zabbix_proxy.log 实时查看最新的日志条目和可能的错误信息。 对于生产环境实例,此操作尤为关键。

有关在 Zabbix 7.0.x 次版本之间(例如从 7.0.1 升级到 7.0.3)进行升级的说明,请参阅 次版本间的升级

升级流程

1 停止Zabbix进程

停止 Zabbix server 以确保没有新数据插入到数据库中:

systemctl stop zabbix-server

如果正在升级 Zabbix proxy、agent 或 agent 2,也需要停止这些组件:

systemctl stop zabbix-proxy
       systemctl stop zabbix-agent
       systemctl stop zabbix-agent2
2 备份Zabbix数据库

备份现有的 Zabbix 数据库以防止升级失败(例如,磁盘空间 问题、断电或意外问题)。

3 备份Zabbix配置文件、PHP文件和Zabbix二进制文件

备份现有的Zabbix配置文件、PHP文件和Zabbix二进制文件。

对于配置文件,请运行:

mkdir /opt/zabbix-backup/
       cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/
       cp /etc/httpd/conf.d/zabbix.conf  /opt/zabbix-backup/

对于PHP文件和Zabbix二进制文件,请运行:

cp -R /usr/share/zabbix/ /opt/zabbix-backup/
       cp -R /usr/share/zabbix-* /opt/zabbix-backup/
4 更新仓库配置包

在开始升级前,请update当前仓库软件包至最新的version,以确保与新版本软件包的兼容性,并包含最新的安全补丁或错误修复。

RHEL 9上,run:

rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/9/x86_64/zabbix-release-latest.el9.noarch.rpm

RHEL 8上,run:

rpm -Uvh https://repo.zabbix.com/zabbix/7.0/rhel/8/x86_64/zabbix-release-latest.el8.noarch.rpm

对于较旧的RHEL版本或其衍生版本,请将上述链接替换为Zabbix repository中的正确链接。但请注意,这些版本的软件包可能不包含所有Zabbix组件,若要从软件包升级这些组件,请考虑升级操作系统。有关包含的组件列表,请参阅Zabbix packages

然后清理dnf包管理器的缓存(包括之前安装或更新过程中下载的头部文件、元数据和软件包文件):

dnf clean all

在下次执行dnf操作时,由于旧元数据已被清除,dnf将从仓库重新下载最新的元数据。

另请参阅:rhel包签名密钥过期了解如何在RHEL上更新仓库配置包。

5 升级Zabbix组件

升级 Zabbix 组件,请运行以下命令:

dnf install zabbix-server-mysql zabbix-web-mysql zabbix-agent
  • 如果使用 PostgreSQL,请在命令中将 mysql 替换为 pgsql
  • 如果升级 proxy,请在命令中将 server 替换为 proxy
  • 如果升级 agent 2,请在命令中将 zabbix-agent 替换为 zabbix-agent2 zabbix-agent2-plugin-*

使用 dnf install zabbix-agent2 命令升级 Zabbix agent 2 可能会导致错误。 有关详细信息,请参阅 已知 问题

然后,升级带有 Apache 的 Zabbix 前端并重启 Apache,请运行:

dnf install zabbix-apache-conf
       systemctl restart httpd
6 审查组件配置参数

查看相关的 upgrade notes,检查配置参数是否需要任何更改。

有关新的可选参数,请参阅 What's new 页面。

7 启动Zabbix进程

启动升级后的 Zabbix 组件:

systemctl start zabbix-server
       systemctl start zabbix-proxy
       systemctl start zabbix-agent
       systemctl start zabbix-agent2
8 清除浏览器cookie和缓存

升级后,可能需要clear网页浏览器的Cookie和网页浏览器缓存,以确保Zabbix前端界面正常工作。

小版本间升级

Zabbix 7.0.x 次版本之间可以进行升级(例如,从 7.0.1 升级到 7.0.3)。

要升级所有 Zabbix 组件,请运行以下命令:

dnf upgrade 'zabbix-*'
  • 仅升级 Zabbix server,请将命令中的 'zabbix-*' 替换为 'zabbix-server-*'
  • 仅升级 Zabbix proxy,请将命令中的 'zabbix-*' 替换为 'zabbix-proxy-*'
  • 仅升级 Zabbix agent,请将命令中的 'zabbix-*' 替换为 'zabbix-agent-*'
  • 仅升级 Zabbix agent 2,请将命令中的 'zabbix-*' 替换为 'zabbix-agent2-*'