需求:生产环境的zabbix版本为2.2.11(RPM包安装),由于一个高危漏洞,需要升级到2.2.14来修复。请参考连接

http://bobao.360.cn/news/detail/3462.html



由于是2.2小版本升级,而2.2.14版本对PHP版本没有要求,所以不需要升级数据库和PHP。

以下是升级过程


1、停止zabbix server上的相关服务

停止zabbix-server、zabbix-agent、zabbix-java-gateway、httpd服务


2、数据备份

创建存放备份文件的目录

mkdir -p /zabbix_dir/{commands,scripts}

为防止升级失败后,需要备份以下数据:


a、二进制文件(zabbix命令):小版本的升级的话可以不用备份,因为命令没有 差异

cp /usr/bin/zabbix* /zabbix_bk/commands


b、启动脚本   

 cp /etc/init.d/zabbix* /zabbix_bk/scripts


c、php文件(/usr/share/zabbix)

cp -R --parents /usr/share/zabbix/ /zabbix_bk


d、/etc/zabbix下的所有配置文件

cp -R --parents /etc/zabbix/ /zabbix_bk/


e、httpd配置文件

cp -R --parents /etc/httpd/conf.d/ /zabbix_bk/


f、数据库备份

注意:zabbix数据库备份可以备份整个/var/lib/zabbix目录下所有数据,但是文件比较大,很占空间。不建议这么做。所以我们这里只备份zabbix的表文件,历史数据和趋势数据的表不备份。

mysqldump -uzabbix -pzabbix --opt --skip-lock-tables --flush-logs --database zabbix --ignore-table=zabbix.history --ignore-table=zabbix.history_log --ignore-table=zabbix.history_str --ignore-table=zabbix.history_text --ignore-table=zabbix.history_uint --ignore-table=zabbix.trends --ignore-table=zabbix.trends_uint > zabbix.sql

--ignore-table跳过不需要备份的表

为了安全起见,最好将备份好的数据库文件导入到其他机器上,看看是否正常



3、升级安装zabbix-server

yum -y update zabbix-server

升级其他组件

yum -y update zabbix-web-mysql zabbix-agent zabbix-sender zabbix-java-gateway zabbix zabbix-web zabbix-get


4、启动服务

启动zabbix-server、zabbix-agent、zabbix-java-gateway


登录zabbix web UI上检查版本

wKiom1e1kCjSVSmCAAN5zgfRiPk095.png