这是原厂英文文档的翻译页面. 欢迎帮助我们 完善文档.

Sidebar

Become a monitoring expert!
Sign up for Zabbix training

1 Red Hat 企业版 Linux/CentOS

####概述

本章节提供了使用基于Red Hat Enterprise Linux/CentOS 系统,由官方发布的Zabbix二进制包,将Zabbix版本由5.4.x 成功升级到 6.0.x 所需的步骤升级

虽说 Zabbix agents非强制性进行升级版本(但推荐升级),但 Zabbix server and proxies必须是[相同主版本]。因此,在服务器代理设置中,Zabbix 服务器和所有代理都必须停止其服务并进行升级操作。在Zabbix server 升级期间保持 proxies正常运行并不会带来任何好处,因为在 proxies升级期间,它们的旧数据将被丢弃,并且在proxy配置与server同步前不会采集新数据。

请注意,若Proxy的数据库为SQLite类型,其保留的历史数据会在版本升级完成后全部被删除,因为Zabbix proxies不支持 SQLite 数据库升级并且必须手动删除 SQLite 数据库文件。当第一次启动proxy并且缺少 SQLite 数据库文件时,proxy会自动创建SQLite 数据库文件。

根据数据库大小,数据库版本升级到 6.0 可能需要很长时间。

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

以下为提供升级Zabbix版本说明:

|升级前的版本|阅读完整的升级说明|Zabbix版本升级间最重要的变化| |------------|-----------|------------ --------------------------| |5.4.x|适用于:
Zabbix 6.0|<| |5.2.x|适用于:
Zabbix 5.4
Zabbix 6.0 |提高了最低要求的数据库版本;
将聚合项作为单独的类型删除。| |5.0.x|适用于:
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|放弃对 IBM DB2 的支持;<br >最低要求的 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<br >Zabbix 6.0|旧的代理不再能够向升级的服务器报告数据;
新的代理不再能够与旧的 Zabbix 服务器一起工作。| |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 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;
Zabbix 服务器强制使用“libpcre”和“libevent”库;
为用户参数添加了退出代码检查仪表、远程命令和不带 'nowait' 标志的 system.run[] 项目以及 Zabbix 服务器执行的脚本;
必须升级 Zabbix Java 网关以支持新功能。| |3.0.x LTS|适用于:
Zabbix 3.2
Zabbix 3.4
Zabbix 4.0
Zabbix 4.2
Zabbix 4.4<br >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
LogFile ag ent 参数必须指定| |2.2.x LTS|适用于:
Zabbix 2.4
Zabbix 3.0
Zabbix 3.2
Zabbix 3.4
Zabbix 4.0<br >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.

升级步骤

1 停止 Zabbix 进程

先停止 Zabbix server以确保没有新数据插入数据库中。

 # systemctl stop zabbix-server

若升级Zabbix proxy版本,需也停止Zabbix proxy服务 。

 # systemctl stop zabbix-proxy

::: 重要事项 目前,不再支持启动升级后的server,使用较旧版本且未升级的proxy向其发送数据。考虑到升级后的server会自动忽略未升级proxy发送的数据,因此Zabbix官方禁用此种应用方式。

2 备份当前的数据库

备份当前的数据库是非常重要的一步。升级前请确保是否先备份数据库。若升级失败(如因磁盘空间不足、断电或其他意外导致的升级失败),备份的数据库将大派用场。

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

在升级前请确保备份了Zabbix 二进制文件、配置文件、PHP 文件。

配置文件:

# mkdir /opt/zabbix-backup/
       # cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/
       # cp /etc/httpd/conf.d/zabbix.conf  /opt/zabbix-backup/

PHP 文件和 Zabbix 二进制文件:

# cp -R /usr/share/zabbix/ /opt/zabbix-backup/
       # cp -R /usr/share/doc/zabbix-* /opt/zabbix-backup/
4 升级 Zabbix 软件仓库配置包

在升级之前,必须更新当前的软件仓库包:

 # rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/8/x86_64/zabbix-release-6.0-1.el8.noarch.rpm
5 升级Zabbix组件

运行以下命令以升级 Zabbix 组件:

  # yum upgrade zabbix-server-mysql zabbix-web-mysql zabbix-agent
         

若使用 PostgreSQL 数据库,请在命令中将 mysql 替换为 pgsql。若升级 Zabbix proxy,请在命令中将 server 替换为 proxy。 若升级Zabbix agent 2,请在命令中将 zabbix-agent 替换为 zabbix-agent2

若在RHEL 8上使用Apache 使得正常升级 Web 前端,还需运行如下命令:

 # yum install zabbix-apache-conf 
        

并对此配置文件进行必要的更改

若在RHEL 7上升级 Web frontend ,请参考distribution-specific instructions (安装 PHP 7.2 或更高版本需额外的步骤)。

6 检查 Zabbix 组件配置文件的参数

在新版本中,Zabbix组件的配置文件发生了一些变化,请详见升级说明。 mandatory changes.

7 启动 Zabbix 进程

启动升级后的 Zabbix 组件。

# systemctl start zabbix-server
       # systemctl start zabbix-proxy
       # systemctl start zabbix-agent
       # systemctl start zabbix-agent2
8 清除浏览器的 Cookies 和缓存

待升级完毕后,可能需要清除浏览器的 Cookies 和缓存,以便 Zabbix 的 Web 界面能正常工作。

Zabbix 次要版本之间的升级

如果要升级 Zabbix 6.0.x 的次要版本(例如:从 6.0.1 升级到 6.0.3),是非常容易的

在升级 Zabbix 所有组件的次要版本时,只需运行以下命令:

$ sudo yum upgrade 'zabbix-*'

在升级 Zabbix server 的次要版本时,只需运行以下命令:

 $ sudo yum upgrade 'zabbix-server-*'

在升级 Zabbix agent 的次要版本时,只需运行以下命令:

 $ sudo yum upgrade 'zabbix-agent-*'

在升级 Zabbix agent 2的次要版本时,只需运行以下命令:

 $ sudo yum upgrade 'zabbix-agent2-*'

请注意,在这些命令中也可以使用'update' 而不是 'upgrade'。 两者区别是'upgrade' 将删除过时的软件包,但'update' 将保留它们。