2 Debian/Ubuntu

概览

本节提供了从Zabbix 6.4.x 升级到Zabbix 7.0.x 最新版本的指导,使用官方Zabbix Debian/Ubuntu软件包进行升级。

在升级前,请查阅相关升级说明,并确保您的系统满足Zabbix 7.0的要求

考虑在升级过程中运行两个并行的SSH会话:一个用于执行升级步骤,另一个用于监控server/proxy日志。 例如,在第二个会话中运行tail -f zabbix_server.logtail -f zabbix_proxy.log,以实时查看最新的日志条目和可能的错误。 这对于生产实例至关重要。

有关在Zabbix 7.0.x小版本间升级(例如,从7.0.1到7.0.3)的指导,请参阅在小版本间升级

升级程序

1 停止 Zabbix 进程

停止 Zabbix 服务器以确保没有新数据插入数据库:

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/apache2/conf-enabled/zabbix.conf /opt/zabbix-backup/

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

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

在进行升级之前,卸载您当前的 Zabbix 仓库包:

rm -Rf /etc/apt/sources.list.d/zabbix.list

在下载新包之前,您可能还需要手动从工作目录中移除任何旧的 Zabbix 包(例如,rm zabbix-release_latest+debian12_all.deb),以防止包管理器在升级过程中重用过时的版本。

然后,安装最新的仓库配置包,以确保与最新包的兼容性,并包含任何最近的安全补丁或错误修复。

Debian 12 上,运行:

wget https://repo.zabbix.com/zabbix/7.0/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb
       dpkg -i zabbix-release_latest+debian12_all.deb

对于更旧的 Debian 版本,将上面的链接替换为 Zabbix 仓库 中的正确链接。但是,请注意,这些版本的包可能不包含所有 Zabbix 组件,从包升级这些组件时,考虑升级您的操作系统。有关包含组件的列表,请参阅 Zabbix 仓库

Ubuntu 24.04 上,运行:

wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu24.04_all.deb
       dpkg -i zabbix-release_latest+ubuntu24.04_all.deb

Ubuntu 22.04 上,运行:

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

对于更旧的 Ubuntu 版本,将上面的链接替换为 Zabbix 仓库 中的正确链接。但是,请注意,这些版本的包可能不包含所有 Zabbix 组件,从包升级这些组件时,考虑升级您的操作系统。有关包含组件的列表,请参阅 Zabbix 包

您可能会看到关于 Zabbix 仓库配置的提示:

配置文件 '/etc/apt/sources.list.d/zabbix.list'
       ==> 自安装后被删除(由您或脚本删除)。
       ==> 包提供者已发布更新版本。
       您想如何处理它?您的选项是:
       Y 或 I :安装包维护者的版本
       N 或 O :保留当前已安装的版本
       D :显示版本之间的差异
       Z :启动 shell 来检查情况
       默认操作是保留您的当前版本。
       *** zabbix.list (Y/I/N/O/D/Z) [默认=N] ?

输入 Y(或 I)来安装包维护者版本的 Zabbix 仓库配置。

然后,更新仓库信息:

apt update

5 升级 Zabbix 组件

要升级 Zabbix 组件,请运行:

apt install --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent
  • 如果使用 PostgreSQL,将命令中的 mysql 替换为 pgsql
  • 如果升级 proxy,将命令中的 server 替换为 proxy
  • 如果升级 Zabbix agent 2,将命令中的 zabbix-agent 替换为 zabbix-agent2 zabbix-agent2-plugin-*

使用 apt install zabbix-agent2 命令升级 Zabbix agent 2 可能会导致错误。 更多信息,请参阅 已知问题

您可能会看到关于 Zabbix server(或 proxy)配置的提示:

配置文件 '/etc/zabbix/zabbix_server.conf'
       ==> 自安装以来已被修改(由您或脚本修改)。
       ==> 包分发商已提供更新版本。
       您希望如何处理?您的选项是:
       Y 或 I  : 安装包维护者的版本
       N 或 O  : 保留当前已安装的版本
       D       : 显示版本之间的差异
       Z       : 启动 shell 来检查情况
       默认操作是保留您的当前版本。
       *** zabbix_server.conf (Y/I/N/O/D/Z) [默认=N] ?

输入最适合您情况的选项。 例如,输入 D 来比较当前和新配置,然后决定是否要安装包维护者的版本(YI)。

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

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

查阅相关的升级说明,检查是否需要对配置参数进行任何更改。

对于新的可选参数,请参阅新功能页面。

7 启动 Zabbix 进程

启动升级后的 Zabbix 组件:

systemctl start zabbix-server
       systemctl start zabbix-proxy
       systemctl start zabbix-agent
       systemctl start zabbix-agent2
8 清除网页浏览器的Cookie和缓存

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

在次要版本间升级

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

首先,更新仓库信息:

apt update

然后,要升级所有Zabbix组件,运行:

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