Table of Contents

7 升级流程

概述

本节提供有关 Zabbix 7.0 的升级信息:

相关说明:

升级 Zabbix agents 是推荐的,但不是强制性的。

升级 Zabbix proxies 是强烈推荐的。Zabbix server 完全支持相同主版本的 proxies version。 作为服务器。Zabbix server 还支持不早于 Zabbix server 上一个 LTS 版本的 proxies 版本,但功能有限(数据采集、执行 remote commands immediate item value checks)。配置 update 也将被禁用,并且 支持的-zabbix-proxies proxies 仅适用于旧版配置。

不支持早于 Zabbix server 上一个 LTS 版本 version 或者新于 Zabbix server 主版本 version 的 Proxies。Zabbix server 将忽略来自不受支持的 proxies 的数据,并且所有与 Zabbix server 的通信都将失败,并显示警告。有关更多信息,请参见 支持的-zabbix-proxies

为了在升级期间尽量减少停机时间和数据丢失,建议依次停止、升级并启动 Zabbix server,然后再停止、升级并启动 Zabbix proxies。在服务器停机期间,正在运行的 proxies 将继续进行数据收集。一旦服务器重新启动并运行,支持的-zabbix-proxies proxies 将把数据发送到较新的服务器(尽管 proxy 配置不会更新),并将继续部分运行。在 Zabbix server 停机期间的问题通知,只有在升级后的服务器启动后才会生成。

如果 Zabbix proxy 是首次启动且 SQLite 数据库 file 不存在,proxy 会自动创建该数据库。

注意,如果 Zabbix proxy 使用 SQLite3,并且在启动时检测到现有数据库 file 的 version 版本比所需版本旧,它将自动 ****delete** 数据库 file 并 create 一个新的数据库。因此,存储在 SQLite 数据库 file 中的历史数据将会丢失。如果 Zabbix proxy 的 version 版本比数据库 file 的版本旧,Zabbix 将记录错误并退出。

根据数据库大小,升级数据库至 version 7.0 版本可能需要较长时间。

可以直接从以下版本升级到 Zabbix 7.0.x:Zabbix 6.4.x、6.2.x、6.0.x、5.4.x、
5.2.x、5.0.x、4.4.x、4.2.x、4.0.x、3.4.x、3.2.x、
3.0.x、2.4.x、2.2.x 以及 2.0.x。
如需从更早版本升级,请查阅 Zabbix 2.0 及更早版本的文档。

请注意,如果外部软件与升级后的 Zabbix 版本不兼容,则升级后可能会影响 Zabbix 中的一些第三方软件集成。

以下是可用的升级注意事项:

从以下版本升级 阅读完整的升级说明 版本间最重要的变更
6.4.x 对于:
Zabbix 7.0
最低所需 PHP version 从 7.4.0 提升至 8.0.0。
支持 agent、HTTP agent 和 SNMP walk[oid] 检查的异步轮询器。
为 proxies 单独创建数据库表。
Windows agent 配置的默认位置 file 已更改。
Oracle 数据库已弃用。
旧的数值(float)值类型已移除。
6.2.x 对于:
Zabbix 6.4
Zabbix 7.0
最低所需 MySQL version 从 8.0.0 提升至 8.0.30。
对于 Zabbix server/proxy 需要 'libevent_pthreads' 库。
升级后首次启动时,使用 SQLite3 的 Zabbix proxy 会自动删除旧的数据库 version(包括所有历史数据)并创建新的数据库。
6.0.x LTS 对于:
Zabbix 6.2
Zabbix 6.4
Zabbix 7.0
最低所需 PHP version 从 7.2.5 提升至 7.4.0。
服务监控已大幅重构。
升级过程中需要创建确定性触发器。如果 MySQL/mariadb 启用了二进制日志记录,则需要超级用户权限或设置变量/配置参数 log_bin_trust_function_creators = 1。请参阅 mysqlmariadb 获取设置该变量的说明。
5.4.x 对于:
Zabbix 6.0
Zabbix 6.2
Zabbix 6.4
Zabbix 7.0
最低所需数据库版本已提升。
如果数据库版本过旧,server/proxy 将无法启动。
由于数据库结构变更,审计日志记录可能丢失。
5.2.x 对于:
Zabbix 5.4
Zabbix 6.0
Zabbix 6.2
Zabbix 6.4
Zabbix 7.0
最低所需数据库版本已提升。
聚合 监控项 已作为单独类型移除。
5.0.x LTS 对于:
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Zabbix 6.2
Zabbix 6.4
Zabbix 7.0
最低所需 PHP version 从 7.2.0 提升至 7.2.5。
密码哈希算法从 MD5 更改为 bcrypt。
4.4.x 对于:
Zabbix 5.0
Zabbix 5.2
Zabbix 5.4
Zabbix 6.0
Zabbix 6.2
Zabbix 6.4
Zabbix 7.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
Zabbix 6.2
Zabbix 6.4
Zabbix 7.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
Zabbix 6.2
Zabbix 6.4
Zabbix 7.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
Zabbix 6.2
Zabbix 6.4
Zabbix 7.0
'libpthread' 和 'zlib' 库现在为必需项。
已移除对明文协议的支持,必须使用头部信息。
不再支持 pre-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 6.2
Zabbix 6.4
Zabbix 7.0
已移除对 Zabbix server/前端使用 SQLite 作为后端数据库的支持。
支持 Perl 兼容正则表达式(PCRE)代替 POSIX 扩展。
对于 Zabbix server,'libpcre' 和 'libevent' 库为必需项。
为用户参数、远程命令和 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
Zabbix 6.2
Zabbix 6.4
Zabbix 7.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
Zabbix 6.2
Zabbix 6.4
Zabbix 7.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
Zabbix 6.2
Zabbix 6.4
Zabbix 7.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
Zabbix 6.2
Zabbix 6.4
Zabbix 7.0
最低所需 PHP version 从 5.1.6 提升至 5.3.0。
为确保服务器正常工作,MySQL 数据库必须区分大小写;字符集 utf8 和 utf8_bin 排序规则是 Zabbix server 正常工作所必需的。请参阅 mysqlmariadb
需要 'mysqli' PHP 扩展,代替 'mysql数据库'。