zabbix6.0升级教程(二):源码包升级
admin
2024-05-01 03:27:13
0


zabbix6.0升级教程(二):源码包升级


目录

  • 概述
    • 1.Server 升级步骤
      • 1.1 停止 Server 服务
      • 1.2 备份当前的 Zabbix 数据库
      • 1.3 备份配置文件、PHP 文件和 Zabbix 程序文件
      • 1.4 安装新的server程序文件
      • 1.5 查看 server 配置参数
      • 1.6 启动新的 Zabbix 程序文件
      • 1.7 安装新的 Zabbix web 界面
      • 1.8 清除浏览器 cookie 和缓存
    • 2.Proxy 升级步骤
      • 2.1 停止 proxy 服务
      • 2.2 备份配置文件和 Zabbix Proxy 旧版本程序
      • 2.3 安装新的 proxy 程序
      • 2.4 查看 proxy 配置参数
      • 2.5 启动新的 Zabbix proxy
    • 3.Agent 升级步骤
      • 3.1 停止 agent 服务
      • 3.2 备份配置文件和 Zabbix agent 程序文件
      • 3.3 安装新的 agent 程序文件
      • 3.4 查看 agent 配置参数
      • 3.5 启动新的 Zabbix agent

概述

Zabbix 6.0升级教程分为两篇,分别介绍二进制包升级及源码包升级。本篇为第二篇,介绍提供使用官方 Zabbix 源码包从 Zabbix 5.4.x 升级到Zabbix 6.0.x 所需的步骤。
尽管升级 Zabbix agent 不是强制性的(但推荐),但 Zabbix server 和 proxy 必须是相同的主版本。因此,在 server-proxy 架构中,Zabbix server 和所有的 proxy 都必须停止并升级。保持 proxy 运行没有任何用处,因为在 proxy 升级期间,它们的旧数据将被丢弃,并且在 proxy 配置与 server 同步之前不会收集新数据。

使用较新的升级的 server 并让较旧但未升级的 proxy 向其发送数据不可能再成功启动。Zabbix 从未推荐或支持这种方法,现在已正式禁用,因为 server 将忽略来自未升级 proxy 的数据。
请注意,proxy 如果使用 SQLite 数据库,升级前来自 proxy 的历史数据将丢失,因为不支持 SQLite 数据库表结构升级并且必须手动删除 SQLite 数据库文件。初次启动 proxy 时如果缺少 SQLite 数据库文件,proxy 会自动创建它。
根据数据库大小,数据库升级到版本 6.0 可能需要很长时间。

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

提供以下升级说明:

从X版本升级阅读完整的升级说明版本之间最重要的变化
5.4.x ·适用于: Zabbix 6.0提高了最低要求的数据库版本; 如果数据库版本过低,Server/proxy 将无法启动; 由于数据库结构更改,审计日志记录丢失。
5.2.x ·适用于: Zabbix 5.4 Zabbix 6.0提高了最低要求的数据库版本; Aggregate 监控项作为单独类型将删除。
5.0.x LTS适用于: Zabbix 5.2 Zabbix 5.4 Zabbix 6.0最低要求的 PHP 版本从 7.2.0 提高到 7.2.5。
4.4.x ·适用于: Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.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删除了 Jabber、Ez 短信媒体类型。
4.0.x LTS适用于: Zabbix 4.2 Zabbix 4.4 Zabbix 5.0 Zabbix 5.2 Zabbix 5.4 Zabbix 6.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强制使用 ‘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.0Zabbix server/前端支持 SQLite 作为数据库; 支持 Perl 兼容正则表达式 (PCRE) 而不是 POSIX 扩展; Zabbix server 必须使用 ‘libpcre’ 和 ‘libevent’ 库; 为不带 ‘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数据库升级可能会很慢,具体取决于历史表的大小。
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 版本从 5.3.0 升级到 5.4.0; agent 配置文件的的 LogFile 参数必须指定。
2.2.x LTS适用于: 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移除了基于节点的分布式监控。
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 版本从 5.1.6 提高到 5.3.0; server 正常工作需要区分大小写的 MySQL 数据库;Zabbix server 需要 utf8 和 utf8_bin 字符集排序规则才能与 MySQL 数据库正常工作。请参阅 数据库创建脚本。 ‘mysqli’ 需要 PHP 扩展而不是 ‘mysql’。

你可能还想参考 6.0 的其他 需求 。

在升级期间运行两个并行 SSH 会话可能会很方便,其中一个执行升级步骤,另一个监视 server/proxy 日志。例如,在第二个 SSH 会话中运行tail -f zabbix_server.logtail -f zabbix_proxy.log 实时显示最新的日志文件条目和可能的错误。这对于生产实例可能很关键。

1.Server 升级步骤

1.1 停止 Server 服务

停止 Zabbix server 服务并确认不再有新的数据写入数据库。

1.2 备份当前的 Zabbix 数据库

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

1.3 备份配置文件、PHP 文件和 Zabbix 程序文件

备份 Zabbix 程序文件、配置文件和 PHP 文件目录。

1.4 安装新的server程序文件

查看从源代码编译 Zabbix Server 的 说明 。

1.5 查看 server 配置参数

有关 强制更改 的详细信息,请参阅升级说明。
有关新增的可选参数,请参阅 6.0新变化 。

1.6 启动新的 Zabbix 程序文件

启动新的程序文件。检查日志以确认程序文件是否成功启动。
Zabbix server 会自动升级数据库。服务启动时,Zabbix server 会报告当前的(包括强制和可选)和所需要的数据库版本。如果当前强制版本比要求的版本低,Zabbix Server 会自动执行所要求的数据库版本升级补丁。数据库升级进度(百分比)被写入 Zabbix server 的日志。当日志出现 “database upgrade fully completed” 表示数据库升级成功。如果有任何补丁升级失败,Zabbix server 将不会启动。如果当前强制数据库版本比要求的更新,Zabbix server 也不会启动。仅当当前强制数据库版本对应于所需数据库版本时,Zabbix server 才会启动。
8673:20161117:104750.259 current database version (mandatory/optional): 03040000/03040000 8673:20161117:104750.259 required mandatory version: 03040000
在启动 server 服务之前:
• 确保数据库用户有足够的权限(创建表、删除表、创建索引、删除索引);
• 确保您有足够的可用磁盘空间。

1.7 安装新的 Zabbix web 界面

要求的最低 PHP 版本是 7.2.5。可参阅 安装说明。

1.8 清除浏览器 cookie 和缓存

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

2.Proxy 升级步骤

2.1 停止 proxy 服务

停止 proxy 服务

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

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

2.3 安装新的 proxy 程序

参考从源码编译安装 Zabbix proxy 的 说明 。

2.4 查看 proxy 配置参数

此版本没有对 proxy 的 参数 做强制性变更。

2.5 启动新的 Zabbix proxy

启动新的 Zabbix proxy 服务。检查日志以确认是否升级成功。
Zabbix proxy 会自动升级数据库。数据库升级与启动 Zabbix server 服务类似。

3.Agent 升级步骤

升级 agent 不是强制性的。只有在需要使用新功能时才需要升级 agent。
本节的升级过程适用于升级 Zabbix agent 和 Zabbix agent2。

3.1 停止 agent 服务

停掉 Zabbix agent 服务。

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

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

3.3 安装新的 agent 程序文件

参考源码编译安装 Zabbix agent 的 说明。

3.4 查看 agent 配置参数

在此版本中,agent 和 agent2 的参数都没有强制更改部分。

3.5 启动新的 Zabbix agent

启动新的 Zabbix agent 服务。检查日志以确认启动成功。

注:次版本之间的升级

升级 6.0.x 的次版本(例如从 6.0.1 到 6.0.3)时,需要对 server/proxy/agent 执行与主版本升级步骤相同的操作。唯一的区别是,在次版本之间进行升级时,不会对数据库进行任何更改。


排版: 何翠婷
初审: 玩具熊
复审: 林浩如

以上就是zabbix 6.0源码包升级过程,另二进制包升级过程见上一篇。本文内容来源于乐维社区|专注运维技术分享。
参考资料:
zabbix6.0从源码包升级

相关内容

热门资讯

方舟生存进化手游利兹鱼驯服方法... 在《方舟:生存进化》手游中,利兹鱼是海洋生态链顶端的巨型史前掠食者,其存在本身即构成高风险高回报的战...
2026重温童年经典游戏推荐:... 童年时光里那些简单却令人上瘾的游戏,至今仍深深印刻在许多人的记忆深处。它们或许没有精美的3D建模,也...
纪念碑谷3第二关详细通关攻略与... 作为一款以视觉艺术与空间逻辑见长的经典解谜作品,《纪念碑谷3》延续了系列标志性的极简美学与错视结构设...
2026年最受欢迎的经典狙击题... 今天想体验沉浸式狙击射击乐趣?以下几款高自由度、拟真度强的单机狙击手游,均支持真实环境交互——风速变...
老爹系列游戏大全:热门安卓免费... 老爹系列模拟经营游戏以高度还原的门店运营体验和轻松诙谐的视听风格,长期受到安卓玩家青睐。该系列主打自...
逸剑风云决手机版劝阻消寒光任务... 《逸剑风云决》手机版“劝阻肖寒光”任务全流程详解:主线推进与完美路线关键节点梳理随着主线“烟尘回响”...
方舟生存进化手游琥珀获取方法大... 《方舟:生存进化》手游中,琥珀是驱动游戏进程的核心资源之一。它不仅可用于加速建筑建造、驯养恐龙、研发...
方舟生存进化手游联机教程:手把... 《方舟:生存进化》手游支持单人沉浸式冒险,也支持多人联机协作,玩家可与好友组队探索遍布史前生物的原始...
智能手表App下载通用版推荐 ... 智能手表配对复杂、功能受限?别再为兼容性问题困扰!以下五款主流健康与运动类APP均支持多品牌智能穿戴...
方舟生存进化手游狮鹫驯服方法与... 在《方舟:生存进化》手游中,狮鹫是地图高海拔区域最具威慑力与实用价值的飞行生物之一。它常年栖息于雪峰...