8 升级步骤

概述

该部分提供 Zabbix 7.0 升级信息:

查看 升级说明 对于高可用 (HA) 集群 servers。

Zabbix agent 建议升级但不强制

强烈建议升级 Zabbix proxy 。Zabbix server 完全支持相同主版本的 proxy 。Zabbix server 也支持 不早于 上一个 LTS 版本的 proxy,但功能受限(数据采集,执行 远程命令, 立即执行)。配置更新被禁用并且旧的配置被 过期 proxy 使用。

Proxy 早于上一个 Zabbix server 版本或新于 Zabbix server 主版本都不支持。 Zabbix server 将忽略来自不受支持的 proxy 的数据,并且与 Zabbix server 的所有通信都将失败并带有警告。 更多信息,请查看 版本兼容性.

为了尽量减少升级过程中的停机时间和数据丢失,建议停止、升级并启动 Zabbix server 和 然后一个接一个地停止、升级和启动 Zabbix proxy。 在 server 停机期间,运行的 proxy 将继续数据采集。 一旦 server 启动并运行, 过期 proxy 将发送数据给新的 server(proxy 配置信息不会更新),并且保留部分功能。 在 Zabbix server 停机期间的问题告警通知,将在 升级的server运行后生成。

如果 Zabbix proxy 首次启动并且 SQLite 数据库文件丢失,proxy 将自动创建。

Note 如果 Zabbix proxy 使用 SQLite3,并且在启动时检测到现有数据库文件 版本早于要求的,自动删除数据库文件 并且创建一个新的文件。 然后,存储在 SQLite 数据库文件的历史数据将丢失。如果 Zabbix proxy 版本早于数据库文件版本,Zabbix 将记录错误信息并且退出。

如果数据库文件较大,升级至 7.0 版本将花费较长时间。

可以从 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 7.0.x。

要从更早期版本升级,请参阅 2.0 及更早版本的 Zabbix 文档。

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

如下升级笔记可用:

升级从阅读完整升级笔记版本之间最重要的变化
6.4.x为:
Zabbix 7.0
最低PHP版本要求从 7.4.0 提升至 8.0.0。
异步 Agent, HTTP agent and SNMP walk[oid] 检查 poller。
proxy单独数据库表
Windows agent 配置文件默认路径变化。
Oracle DB 不支持。
6.2.x为:
Zabbix 6.4
Zabbix 7.0
最低MySQL版本要求从 8.0.0 提升至 8.0.30。
‘libevent_pthreads’ 库被 Zabbix server/proxy 需要。
一旦升级完成并且启动,Zabbix proxy 对应的 SQLite3 会自动删除旧版本数据库。 (包含所有历史数据)并且创建一个新的文件。
6.0.x LTS为:
Zabbix 6.2
Zabbix 6.4
Zabbix 7.0
最低PHP版本要求从 7.2.5 提升至 7.4.0。
S服务监控进行了重大修改。
在升级过程中需要创建确定性触发器。如果为 MySQL/MariaDB 启用了二进制日志记录,则需要超级用户权限或设置变量/配置参数 log_bin_trust_function_creators = 1。查看 数据库创建脚本 有关如何设置变量的说明。
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版本要求从 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版本要求从 5.4.0 提升至 7.2.0。
最低数据库版本要求提升。
Zabbix PHP 文件目录更改。
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
更早版本proxy 不再将数据发送给升级后的 server。
更新的agent 不再工作当 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’ 库必须。
删除了对纯文本协议的支持,并且必须使用请求头。
1.4 版本之前的 Zabbix agent 不再支持。
被动模式 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/frontend 不再支持SQLite 作为后台数据库。
支持Perl 兼容性的正则表达式 (PCRE) 替代 POSIX 扩展。
‘libpcre’ 和 ‘libevent’ 库在 Zabbix server 中必需。
为没有“nowait”标志的用户参数、远程命令和 system.run[] 监控项以及 Zabbix server 执行的脚本添加退出代码检查。
Zabbix Java gateway 必须升级以便支持新功能。
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版本要求从 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版本要求从 5.1.6 提升至 5.3.0.
正常 server 工作所需的区分大小写的 MySQL 数据库;MySQL 需要字符集 utf8 和 utf8_bin 校验集,以便 Zabbix server 正常工作。查看 数据库创建脚本.
‘mysqli’ PHP 扩展需要以代替 ‘mysql’。