Debian/Ubuntu

概述

本节提供了使用 Debian/Ubuntu 的 Zabbix 官方软件包,将 Zabbix 7.4.x 升级到最新 Zabbix 8.0.x 版本的说明。

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

建议在升级期间同时运行两个并行的 SSH 会话:一个用于执行升级步骤,另一个用于监控服务器/proxy 日志。
例如,在第二个会话中运行 tail -f zabbix_server.logtail -f zabbix_proxy.log,以实时查看最新的日志条目和可能出现的错误。
这对于生产环境实例来说可能至关重要。

有关在 Zabbix 8.0.x 次要版本之间升级的说明(例如,从 8.0.1 升级到 8.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/
# For Apache:
cp /etc/apache2/conf-enabled/zabbix.conf /opt/zabbix-backup/
# For Nginx:
cp /etc/nginx/conf.d/zabbix.conf /opt/zabbix-backup/
cp /etc/zabbix/nginx.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 13 上,运行:

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

Debian 12 上,运行:

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

对于较旧的 Debian 版本,请将上面的链接替换为 Zabbix repository 中对应的正确链接。 但请注意,这些版本的软件包可能不包含所有 Zabbix 组件,如果要通过软件包升级这些组件,请考虑升级您的操作系统。 有关包含的组件列表,请参见 Zabbix packages

Ubuntu 26.04 上,运行:

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

Ubuntu 24.04 上,运行:

wget https://repo.zabbix.com/zabbix/8.0/release/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/8.0/release/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu22.04_all.deb
dpkg -i zabbix-release_latest+ubuntu22.04_all.deb

对于较旧的 Ubuntu 版本,请将上面的链接替换为 Zabbix repository 中对应的正确链接。 但请注意,这些版本的软件包可能不包含所有 Zabbix 组件,如果要通过软件包升级这些组件,请考虑升级您的操作系统。 有关包含的组件列表,请参见 Zabbix packages

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

Configuration file '/etc/apt/sources.list.d/zabbix.list'
==> Deleted (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
What would you like to do about it ?  Your options are:
Y or I  : install the package maintainer's version
N or O  : keep your currently-installed version
D       : show the differences between the versions
Z       : start a shell to examine the situation
The default action is to keep your current version.
*** zabbix.list (Y/I/N/O/D/Z) [default=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 服务器(或 proxy)配置的提示:

Configuration file '/etc/zabbix/zabbix_server.conf'
==> Modified (by you or by a script) since installation.
==> Package distributor has shipped an updated version.
What would you like to do about it ?  Your options are:
Y or I  : install the package maintainer's version
N or O  : keep your currently-installed version
D       : show the differences between the versions
Z       : start a shell to examine the situation
The default action is to keep your current version.
*** zabbix_server.conf (Y/I/N/O/D/Z) [default=N] ?

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

然后,升级 Zabbix 前端并重启 Web 服务器。

对于 Apache,请运行:

apt install zabbix-apache-conf
systemctl restart apache2

对于 Nginx,请运行:

apt install zabbix-nginx-conf
systemctl restart nginx

对于 Nginx,您可能会看到有关 nginx.conf 配置文件的提示。请输入最适合您情况的选项:

Configuration file '/etc/zabbix/nginx.conf'
 ==> Modified (by you or by a script) since installation.
 ==> Package distributor has shipped an updated version.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.
*** nginx.conf (Y/I/N/O/D/Z) [default=N] ?
6 检查组件配置参数

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

有关新的可选参数,请参见新增内容页面。

如果使用 Nginx 作为 web 服务器,并且在升级过程中重新安装了 /etc/zabbix/nginx.conf 配置文件,请检查该文件,并更新 listenserver_name 指令,使其与 Zabbix 前端配置一致。

7 启动 Zabbix 进程

启动已升级的 Zabbix 组件:

systemctl start zabbix-server
systemctl start zabbix-proxy
systemctl start zabbix-agent
systemctl start zabbix-agent2

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

在次要版本之间升级

可以在 Zabbix 8.0.x 的次要版本之间进行升级(例如,从 8.0.1 升级到 8.0.3)。

首先,更新软件仓库信息:

apt update

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

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