zabbix升级5.4


概述

升级来自Zabbix5.0.x至Zabbix5.2.x使用官方的Zabbix来源。

虽然升级zabbix代理不是强制性的(但建议),但zabbix服务器和代理必须是同一主要版本。因此,在服务器代理设置中,必须停止并升级zabbix服务器和所有代理。保持代理运行将不再带来任何好处,因为在代理升级期间,它们的旧数据将被丢弃,在代理配置与服务器同步之前不会收集新的数据。

不再可能启动升级服务器,并让较旧的、但尚未升级的代理向较新的服务器报告数据。这种从未被Zabbix推荐或支持的方法,现在在从5.2之前的任何版本升级到5.2(或更高版本)时被正式禁用,因为服务器将忽略来自未升级的代理的数据。

注意,对于代理上的SQLite数据库,升级前来自代理的历史数据将丢失,因为不支持SQLite数据库升级,并且必须手动删除SQLite数据库文件。当代理第一次启动并且SQLite数据库文件丢失时,代理会自动创建它。

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

在升级之前,一定要阅读相关的升级笔记!

5.0.x适用于: 萨比克斯5.2最低要求的PHP版本从7.2.0提高到7.2.5。
4.4.x适用于: 萨比克斯5.0 萨比克斯5.2对IBMDB 2的支持下降; 最低要求的PHP版本从5.4.0提高到7.2.0; 提高了最低要求的数据库版本; 更改了ZabbixPHP文件目录。
4.2.x适用于: 萨比克斯4.4 萨比克斯5.0 萨比克斯5.2删除Jabber,ez短信媒体类型。
4.0.X LTS适用于: 萨比克斯4.2 萨比克斯4.4 萨比克斯5.0 萨比克斯5.2旧的代理不再能够向升级的服务器报告数据; 较新的代理将不再能够使用旧的Zabbix服务器。
3.4.x适用于: 萨比克斯4.0 萨比克斯4.2 萨比克斯4.4 萨比克斯5.0 萨比克斯5.2‘libp线程’和‘zlib’库现在是强制性的; 支持纯文本协议删除和头是强制性的; 前1.4版Zabbix代理不再支持; 被动代理配置中的Server参数现在是强制性的。
3.2.x适用于: 萨比克斯3.4 萨比克斯4.0 萨比克斯4.2 萨比克斯4.4 萨比克斯5.0 萨比克斯5.2SQLite对Zabbix服务器/前端后端数据库的支持被删除; 支持Perl兼容的正则表达式(PCRE),而不是POSIX扩展; “libpcre”和“libeVENT”库是Zabbix服务器必需的; 退出代码检查添加的用户参数,远程命令和系统.运行[]项,没有‘NoWait’标志,以及Zabbix服务器执行脚本; 必须升级Zabbix Java网关以支持新功能。
3.0.x LTS适用于: 萨比克斯3.2 萨比克斯3.4 萨比克斯4.0 萨比克斯4.2 萨比克斯4.4 萨比克斯5.0 萨比克斯5.2数据库升级可能很慢,这取决于历史表的大小。
2.4.x适用于: 萨比克斯3.0 萨比克斯3.2 萨比克斯3.4 萨比克斯4.0 萨比克斯4.2 萨比克斯4.4 萨比克斯5.0 萨比克斯5.2最低要求的PHP版本从5.3.0提高到5.4.0 必须指定logfile代理参数。
2.2.x LTS适用于: 萨比克斯2.4 萨比克斯3.0 萨比克斯3.2 萨比克斯3.4 萨比克斯4.0 萨比克斯4.2 萨比克斯4.4 萨比克斯5.0 萨比克斯5.2删除基于节点的分布式监视
2.0.x适用于: 萨比克斯2.2 萨比克斯2.4 萨比克斯3.0 萨比克斯3.2 萨比克斯3.4 萨比克斯4.0 萨比克斯4.2 萨比克斯4.4 萨比克斯5.0 萨比克斯5.2最低要求的PHP版本从5.1.6提高到5.3.0; 正确的服务器工作需要区分大小写的MySQL数据库;Zabbix服务器需要字符集UTF 8和UTF 8_bin排序规则才能与MySQL数据库正常工作。看见数据库创建脚本. 需要“mysqli”PHP扩展而不是“MySQL”

服务器升级过程

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 web界面

所需的最低PHP版本是7.2.5。如有需要,更新并跟进安装说明.

8清除web浏览器cookie和缓存

升级之后,您可能需要清除Web浏览器cookie和Web浏览器缓存,这样Zabbix Web界面才能正常工作。

代理升级过程

1停止代理

阻止Zabbix代理。

2备份配置文件和zabbix代理二进制文件

创建Zabbix代理二进制文件和配置文件的备份副本。

3安装新的代理二进制文件

用这些指令从源编译Zabbix代理。

4检查代理配置参数

此版本对代理没有强制更改。参数.

5启动新的zabbix代理

启动新的Zabbix代理。检查日志文件以查看代理是否已成功启动。

Zabbix代理将自动升级数据库。数据库升级与启动时类似。Zabbix服务器.

代理升级过程

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

本节中描述的升级过程可用于升级zabbix代理和zabbix代理2。

1停止剂

阻止Zabbix探员。

2备份配置文件和zabbix代理二进制文件

创建Zabbix代理二进制文件和配置文件的备份副本。

3安装新的代理二进制文件

用这些指令从源编译Zabbix代理。

或者,您可以从Zabbix下载页面.

4审查代理配置参数

在此版本中没有强制更改,也没有代理也不去代理2参数。

5启动新的Zabbix代理

启动新的Zabbix代理。检查日志文件以查看代理是否已成功启动。

在次要版本之间进行升级

在5.2.x的次要版本之间进行升级(例如从5.2.1升级到5.2.3)时,需要对服务器/代理/代理执行与在主要版本之间升级期间相同的操作。唯一的区别是,在小版本之间升级时,不会对数据库进行任何更改。

yum 升级方式

升级程序

1停止Zabbix过程

停止Zabbix服务器以确保没有新的数据插入到数据库中。

# systemctl stop zabbix-server

如果升级代理,也请停止代理。

# systemctl stop zabbix-proxy

不再可能启动升级服务器,并让较旧的、但尚未升级的代理向较新的服务器报告数据。Zabbix从未推荐或支持这种方法,但在从4.4之前的任何版本升级到5.0(或更高版本)时,该方法现在被正式禁用,因为服务器将忽略来自未升级代理的数据。

2备份现有的Zabbix数据库

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

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更新存储库配置包

要继续升级,必须更新当前的存储库包。

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

要升级Zabbix组件,可以运行以下内容:

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

如果使用PostgreSQL,则替换mysql带着pgsql在命令里。如果升级代理,则替换server带着proxy在命令里。如果升级代理2,则替换zabbix-agent带着zabbix-agent2在命令里。

使用apache升级web前端论RHEL 8正确,也可以运行:

# yum install zabbix-apache-conf 

并做出必要的变化这份文件。

升级web前端论RHEL 7跟随分配专用指令(安装PHP7.2或更高版本需要额外的步骤)。

6检查组件配置参数

有关的详细信息,请参阅升级说明。强制性变更.

7启动Zabbix进程

启动更新的Zabbix组件。

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

升级之后,您可能需要清除Web浏览器cookie和Web浏览器缓存,这样Zabbix Web界面才能正常工作。

在次要版本之间进行升级

可以在5.2.x的次要版本之间进行升级(例如,从5.2.1升级到5.2.3)。小版本之间的升级很容易。

要执行Zabbix小版本升级,需要运行:

$ sudo yum upgrade 'zabbix-*'

若要执行Zabbix服务器小版本升级,请运行:

$ sudo yum upgrade 'zabbix-server-*'

若要执行Zabbix代理小版本升级,请运行:

$ sudo yum upgrade 'zabbix-agent-*'

或者,对于Zabbix代理2:

$ sudo yum upgrade 'zabbix-agent2-*'

请注意,您也可以在这些命令中使用“更新”而不是“升级”。而‘升级’将删除过时的软件包,‘更新’将保留他们。


文章作者: 一抹忘忧
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 一抹忘忧 !
  目录