资讯详情

Zabbix 版本升级 - Zabbix 5.0 升级到6.0

文章目录

  • 背景
    • 环境说明:
  • 升级前准备
    • 设置维护模式
    • 停止Zabbix服务
    • 数据备份
    • 数据库备份
    • 单独备份zabbix数据库
    • 全量备份数据库
      • 安装备份工具
      • 全部备份
  • 执行升级
      • 数据库升级
      • Zabbix 升级
  • 异常问题处理
      • 解决方案;

背景

Zabbix 6.0 在 2 月份正式release 了 , 一直想尝试新版带来的提升, 因此,我们准备将当前的生产环境Zabbix 5.0 升级到 6.0 , 所以在这里做一个记录 , 同时也供他人升级参考.

环境说明:

OS: debian10 Zabbix: 5.0 PHP: 7.3.31 mariadb :10.3.34

升级前准备

设置维护模式

升级后防止报警 , 先设置维护模式 , 我在这里设置的维护模式是12小时.

停止Zabbix服务

systemctl stop zabbix-server zabbix-agent apache2

数据备份

sudo su mkdir /opt/zabbix_backup cp  /etc/zabbix/zabbix_server.conf /opt/zabbix_backup/ cp  /etc/apache2/conf-enabled/zabbix.conf /opt/zabbix_backup/ cp -R /usr/share/zabbix/ /opt/zabbix_backup/ cp -R /usr/share/doc/zabbix-* /opt/zabbix_backup/ 

数据库备份

单独备份zabbix数据库

cd /opt/zabbix_backup/ mysqldump -uroot -p zabbix --single-transaction > zabbix_backup.sql 

全量备份数据库

数据库需要再次完全备份, 避免发生事故 , 事实是,事故确实发生了, 有兴趣的可以继续往后看.

针对mariadb 官方推荐备份方式 ,具体使用请参考以下内容。refer部分.

安装备份工具

这里使用 mariadb-backup 全量备份 , 使用下列安装命令;

apt-get install mariadb-backup

全部备份

因为以后升级有问题 , 这里贴出备份恢复命令一次,以备将来使用.

# 完全备份 mkdir /tmp/mariadb-backup mariabackup --backup -user=root --target-dir=/opt/mariadb-backup  # 备份数据 mariabackup --prepare --target-dir=/opt/mariadb-backup  # 恢复数据库 mariabackup --copy-back --target-dir=/opt/mariadb-backup chown -R mysql:mysql /var/lib/mysql 

到此, 数据备份相关工作准备就绪.

执行升级

数据库升级

# 停止服务 systemctl stop mariadb  # 删除 mariadb apt-get remove "mariadb-*"  #删除依赖,10.3以前是galera-3 , 10.4以后是galera-4 apt-get remove galera-3 

# 增加repo 、安装新版本 mariadb 并启动服务 wget https://downloads.mariadb.com/MariaDB/mariadb_repo_setup echo "b9e90cde27affc2a44f9fc60e302ccfcacf71f4ae02071f30d570e6048c28597 mariadb_repo_setup" \     | sha256sum -c - chmod  x mariadb_repo_setup ./mariadb_repo_setup --mariadb-server-version="mariadb-10.5" apt-get update apt-get install -y mariadb-server mariadb-backup systemctl start mariadb 

新版本附带的命令, 用于纠正和识别兼容性问题.

# mariadb-upgrade This installation of MariaDB is already upgraded to 10.5.16-MariaDB. There is no need to run mysql_upgrade again for 10.5.16-MariaDB. You can use --force if you still want to run mysl_upgrade
# 这里提示加force参数进行升级.
#增加force参数升级过程如下
# mysql_upgrade --force
Phase 1/7: Checking and upgrading mysql database
Processing databases
mysql
mysql.column_stats                                 OK
mysql.columns_priv                                 OK
mysql.db                                           OK
# 过程太长,部分过程省略
...
zabbix.valuemaps                                   OK
zabbix.widget                                      OK
zabbix.widget_field                                OK
Phase 7/7: Running 'FLUSH PRIVILEGES'
OK
# 版本验证
# mariadb -V
mariadb  Ver 15.1 Distrib 10.5.16-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

Zabbix 升级

dpkg --purge zabbix-release

wget https://repo.zabbix.com/zabbix/6.0/debian/pool/main/z/zabbix-release/zabbix-release_6.0-1+debian10_all.deb
dpkg -i zabbix-release_6.0-1+debian10_all.deb
apt-get update
apt-get install --only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent
# 升级过程中遇到回答问题的选项一律选 N 回车即可 
# 版本验证

# zabbix_server -V
zabbix_server (Zabbix) 6.0.5

# 设置自启动
# Start Zabbix 6.0
systemctl enable zabbix-server mariadb.service

异常问题处理

问题描述 ; 升级后出现数据库版本不match

在这里插入图片描述

解决方案;

systemctl stop zabbix-server zabbix-agent apache2

systemctl stop mariadb.service

mv -f /var/lib/mysql/* /var/lib/mysql-files/

mariabackup --copy-back --target-dir=/opt/mariadb-backup
chown -R mysql:mysql /var/lib/mysql
mysql_upgrade --force

systemctl stop zabbix-server zabbix-agent apache2

经过以上处理后 , 通过查看zabbix_server.log可以发现 ,

#省略上下文
...
1871:20220608:143935.311 optional patches were found
1871:20220608:143935.311 starting automatic database upgrade
1871:20220608:143935.315 completed 0% of database upgrade
1871:20220608:143935.319 completed 1% of database upgrade
1871:20220608:143935.332 completed 2% of database upgrade
1871:20220608:143935.343 completed 3% of database upgrade
1871:20220608:143935.353 completed 4% of database upgrade
...
1871:20220608:143951.503 completed 96% of database upgrade
1871:20220608:143951.563 completed 97% of database upgrade
1871:20220608:143951.571 completed 98% of database upgrade
1871:20220608:143951.576 completed 99% of database upgrade
1871:20220608:143951.581 completed 100% of database upgrade
1871:20220608:143951.581 database upgrade fully completed
1871:20220608:143951.584 database could be upgraded to use primary keys in history tables
2054:20220608:143951.594 starting HA manager
2054:20220608:143951.601 HA manager started in active mode
1871:20220608:143951.608 server #0 started [main process]
...

至此 , Zabbix 升级问题处理完成 , 在此以作记录供他人升级参考.

MariaDB Backup: https://mariadb.com/docs/reference/cs10.5/cli/mariadb-backup/

标签: 2e302电容柜用

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台