本节提供了从Zabbix 5.4.x成功upgrade到Zabbix 6.0.x最新version所需的步骤,使用适用于Debian/Ubuntu的官方Zabbix软件包。
虽然升级Zabbix agents不是强制性的(但建议进行),但Zabbix服务器和proxies必须保持same major version。因此,在服务器-proxy设置中,Zabbix server和所有proxies必须停止并升级。在服务器升级期间保持proxies运行不再带来任何好处,因为在proxy升级期间,其旧数据将被丢弃,并且在proxy配置与服务器同步之前不会收集新数据。
请注意,对于使用SQLite数据库的proxies,升级前的proxies历史数据将丢失,因为不支持SQLite数据库升级,并且必须手动删除SQLite数据库file。当proxy首次启动且SQLite数据库file缺失时,proxy会自动创建它。
根据数据库大小,升级到version 6.0可能需要很长时间。
升级前请务必阅读相关的升级说明!
以下升级说明可供参考:
升级自 | 阅读完整升级说明 | 版本间最重要的变更 |
---|---|---|
5.4.x | 适用于: Zabbix 6.0 |
最低要求的数据库版本提升; server/proxy在数据库过旧时将无法启动; 由于数据库结构变更导致审计日志记录丢失。 |
5.2.x | 适用于: Zabbix 5.4 Zabbix 6.0 |
最低要求的数据库版本提升; 聚合监控项作为单独类型被移除。 |
5.0.x LTS | 适用于: Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 |
最低要求的PHP version从7.2.0提升至7.2.5。 |
4.4.x | 适用于: Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 |
放弃对IBM DB2的支持; 最低要求的PHP version从5.4.0提升至7.2.0; 最低要求的数据库版本提升; 更改了Zabbix PHP file目录。 |
4.2.x | 适用于: Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 |
移除了Jabber、Ez Texting媒体类型。 |
4.0.x LTS | 适用于: Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 |
旧版proxies无法再向升级后的服务器报告数据; 新版agents无法再与旧版Zabbix server协同工作。 |
3.4.x | 适用于: Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 |
'libpthread'和'zlib'库现为必需; 放弃对纯文本协议的支持,头部现为必需; 不再支持1.4之前的version Zabbix agents; 被动proxy配置中的Server参数现为必需。 |
3.2.x | 适用于: Zabbix 3.4 Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 |
放弃对Zabbix server/前端使用SQLite作为后端数据库; 支持Perl兼容正则表达式(PCRE)而非POSIX扩展; 'libpcre'和'libevent'库为Zabbix server必需; 为用户参数、远程命令和system.run[] 监控项(不带'nowait' flag)以及Zabbix server执行的脚本添加了退出代码检查; Zabbix Java网关需升级以支持新功能。 |
3.0.x LTS | 适用于: Zabbix 3.2 Zabbix 3.4 Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 |
数据库升级可能较慢,取决于历史表大小。 |
2.4.x | 适用于: Zabbix 3.0 Zabbix 3.2 Zabbix 3.4 Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 |
最低要求的PHP version从5.3.0提升至5.4.0 必须指定LogFile agent参数 |
2.2.x LTS | 适用于: Zabbix 2.4 Zabbix 3.0 Zabbix 3.2 Zabbix 3.4 Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 |
移除了基于节点的分布式监控 |
2.0.x | 适用于: Zabbix 2.2 Zabbix 2.4 Zabbix 3.0 Zabbix 3.2 Zabbix 3.4 Zabbix 4.0 Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.0 |
最低要求的PHP version从5.1.6提升至5.3.0; MySQL数据库需区分大小写以正常工作; 字符集utf8和utf8_bin排序规则是Zabbix server与MySQL数据库正常工作的必需条件。参见mysqlmariadb. 需要'mysqli' PHP扩展而非'mysql数据库' |
您可能还想查看6.0的requirements。
在升级过程中,run两个并行的SSH会话可能会很方便,一个执行升级步骤,另一个监控server/proxy日志。例如,在第二个SSH会话中runtail -f zabbix_server.log
或tail -f zabbix_proxy.log
,实时显示最新的日志file条目和可能的错误。这对于生产环境实例可能至关重要。
有关在Zabbix 6.0.x小版本间升级的说明(例如从6.0.1升级到6.0.3),请参阅小版本间升级。
停止 Zabbix server 以确保没有新数据插入数据库.
如果升级 Zabbix proxy, agent, 或 agent 2, 也停止这些组件:
systemctl stop zabbix-proxy systemctl stop zabbix-agent systemctl stop zabbix-agent2
这是一个非常重要的步骤。请确保您已备份数据库。当升级过程失败时(如磁盘空间不足、断电或任何意外问题),备份将起到关键作用。
备份 copy Zabbix二进制文件、配置文件和PHP file 目录
配置文件:
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/
在升级前,请先卸载当前的仓库软件包:
然后安装最新的仓库配置包,以确保与新版本软件包的兼容性,并包含最新的安全补丁或错误修复。
在 Debian 12 上,run:
wget https://repo.zabbix.com/zabbix/6.0/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian12_all.deb
dpkg -i zabbix-release_latest+debian12_all.deb
在 Debian 11 上,run:
wget https://repo.zabbix.com/zabbix/6.0/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian11_all.deb
dpkg -i zabbix-release_latest+debian11_all.deb
在 Debian 10 上,run:
wget https://repo.zabbix.com/zabbix/6.0/debian/pool/main/z/zabbix-release/zabbix-release_latest+debian10_all.deb
dpkg -i zabbix-release_latest+debian10_all.deb
对于更旧的 Debian 版本,请将上述链接替换为 Zabbix repository 中正确的链接。 但请注意,这些版本的软件包可能不包含所有 Zabbix 组件。 有关包含的组件列表,请参阅 Zabbix packages。
在 Ubuntu 24.04 上,run:
wget https://repo.zabbix.com/zabbix/6.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 上,run:
wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu22.04_all.deb
dpkg -i zabbix-release_latest+ubuntu22.04_all.deb
在 Ubuntu 20.04 上,run:
wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu20.04_all.deb
dpkg -i zabbix-release_latest+ubuntu20.04_all.deb
在 Ubuntu 18.04 上,run:
wget https://repo.zabbix.com/zabbix/6.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_latest+ubuntu18.04_all.deb
dpkg -i zabbix-release_latest+ubuntu18.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 仓库配置 version。
然后,update 仓库信息:
apt update
要升级Zabbix组件,您可以run类似以下命令:
mysql
替换为pgsql
server
替换为proxy
zabbix-agent
替换为zabbix-agent2 zabbix-agent2-plugin-*
使用apt install zabbix-agent2
命令升级Zabbix agent 2可能会导致错误。 更多信息请参阅已知问题。
您可能会看到关于Zabbix server(或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
可以比较当前配置与新配置,然后决定是否安装软件包维护者的version(Y
或I
)。
然后,要升级Apache下的Web前端并重启Apache,请run:
Debian 10(buster)/Ubuntu 18.04(bionic)/Raspbian 10(buster)之前的发行版不提供Zabbix前端6.0所需的PHP 7.2或更新版本。 有关在旧版发行版上安装Zabbix前端的信息,请参阅information。
请务必查阅Upgrade notes以确认是否需要调整配置参数。
启动更新后的Zabbix组件。
systemctl start zabbix-server systemctl start zabbix-proxy systemctl start zabbix-agent systemctl start zabbix-agent2
升级后,您可能需要clear网页浏览器cookies和网页浏览器缓存以使Zabbix网页界面正常工作。
可以在Zabbix 6.0.x小版本之间进行升级(例如从6.0.1升级到6.0.3)。
首先,update仓库信息:
然后,要升级Zabbix小version,请run:
若仅升级Zabbix server小version,请run:
若仅升级Zabbix agent小version,请run:
或针对Zabbix agent 2:
apt install --only-upgrade 'zabbix-agent2*'