1 从源码升级

概述

本节介绍使用官方 Zabbix 源将 Zabbix 7.2.x 成功升级到 Zabbix 7.4.x 所需的步骤。

升级前请务必阅读相关的升级说明!

您还可以查看 7.4 的要求。

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

服务器升级过程

1 停止服务器

停止 Zabbix 服务器,以确保没有新数据写入数据库。

2 备份现有的 Zabbix 数据库

这是非常重要的一步。 请确保已备份数据库。 如果升级过程失败(磁盘空间不足、断电或任何意外问题),备份将有所帮助。

3 备份配置文件、PHP 文件和 Zabbix 二进制文件

备份 Zabbix 二进制文件、配置文件和 PHP 文件目录。

4 安装新的服务器二进制文件

使用这些说明从源代码编译 Zabbix 服务器。

5 查看服务器配置参数

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

有关新增的可选参数,请参阅新增功能页面。

6 启动新的 Zabbix 二进制文件

启动新的二进制文件。
检查日志文件,确认二进制文件是否已成功启动。

Zabbix 服务器将自动升级数据库。
启动时,Zabbix 服务器会报告当前的数据库版本(必需版本和可选版本)以及所需的数据库版本。
如果当前必需版本低于所需版本,Zabbix 服务器会自动执行所需的数据库升级补丁。
数据库升级的开始状态和进度(百分比)会写入 Zabbix 服务器日志文件。
升级完成后,日志文件中会写入“数据库升级已完全完成”消息。
如果任何升级补丁失败,Zabbix 服务器将无法启动。
如果当前必需的数据库版本高于所需版本,Zabbix 服务器同样无法启动。
只有当当前必需的数据库版本与所需的必需版本一致时,Zabbix 服务器才会启动。

8673:20161117:104750.259 current database version (mandatory/optional): 03040000/03040000
8673:20161117:104750.259 required mandatory version: 03040000

启动服务器之前:

  • 确保数据库用户具有足够的权限(创建表、删除表、创建索引、删除索引)
  • 确保有足够的可用磁盘空间。
7 安装新的 Zabbix 前端

所需的最低 PHP 版本为 8.0.0。 如有需要,请进行更新,并按照安装说明操作。

升级后,您可能需要清除 Web 浏览器 Cookie 和缓存,才能使 Zabbix 前端正常工作。

Proxy 升级过程

1 停止 proxy

停止 Zabbix proxy。

2 备份配置文件和 Zabbix Proxy 旧版本程序

备份配置文件和 Zabbix Proxy 旧版本程序。

3 安装新的 proxy 二进制文件

使用这些说明从源代码编译 Zabbix proxy。

4 查看 proxy 配置参数

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

有关新增的可选参数,请参阅新增功能页面。

5 启动新的 Zabbix proxy

启动新的 Zabbix proxy。
检查日志文件,确认 proxy 是否已成功启动。

Zabbix proxy 将自动升级数据库。
数据库升级过程与启动 Zabbix 服务器 时类似。

agent 升级流程

升级 agent 不是强制性的。 只有在需要访问新功能时,才需要升级 agent。

本节介绍的升级过程可用于升级 Zabbix agent 和 Zabbix agent 2。

1 停止 agent

停止 Zabbix agent。

2 备份配置文件和 Zabbix agent 程序文件

备份配置文件和 Zabbix agent 程序文件。

3 安装新的 agent 二进制文件

使用这些说明从源代码编译 Zabbix agent。

或者,您也可以从 Zabbix 下载页面下载预编译的 Zabbix agent。

4 查看 agent 配置参数

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

有关新增的可选参数,请参阅新增功能页面。

5 启动新的 Zabbix agent

启动新的 Zabbix agent。
检查日志文件,确认 agent 是否已成功启动。

次要版本之间的升级

在 7.4.x 的次要版本之间升级时(例如,从 7.4.1 升级到 7.4.3),需要对服务器/proxy/agent 执行与主要版本之间升级时相同的操作。

唯一的区别是,在次要版本之间升级时,不会对数据库进行任何更改。