Zabbix 5.0 升级到 6.0LTS

Zabbix 6.0 LTS 已经发布了一段时间了,面对那么香的新鲜功能,回头看看自己 Zabbix 5.0 版本,果断升级进行尝鲜!

一、环境介绍

升级到 Zabbix 6.0 是有环境要求的,主要是 PHPMySQL 的版本,以下升级后的组件必备版本。

升级前升级后
系统CentOS 7.3CentOS 7.3
PHP7.2.217.4.30(实际>=7.2.5)
MySQL5.7.278.0.28
Zabbix-server5.0.96.0.8

二、升级PHP

1、添加EPEL和REMI仓库

# yum -y install epel-release
# wget https://rpms.remirepo.net/enterprise/remi-release-7.rpm --no-check-certificate
# yum -y localinstall remi-release-7.rpm

2、安装PHP 7.4

# yum -y install yum-utils
# yum repolist all |grep php
# yum-config-manager --enable remi-php74
# yum install php php-cli php-fpm php-mysqlnd php-zip php-devel php-gd php-mcrypt php-mbstring php-curl php-xml php-pear php-bcmath php-json php-redis
# rpm -qa|grep php

三、升级数据库

1、数据导出导入

1. 1 mydumper 导出

mydumper 命令可以快速导出数据库文件,其他使用命令可参考最下面网址

# mydumper   -u root  -p xxx -B zabbix --less-locking --threads 8 -F 256 --triggers --events  --routines -v 3 --outputdir /data/bak/mysql/0915 > /tmp/dumper.log 2>&1

1.2 修改字符集编码

cd /data/bak/mysql/0915
sed -i '/InnoDB/s/CHARSET=utf8/CHARSET=utf8mb4/g' ./*schema.sql
sed -i '/InnoDB/s/COLLATE=utf8_bin/COLLATE=utf8mb4_bin/g' ./*schema.sql
---
sed -i 's/CHARACTER SET utf8/CHARACTER SET utf8mb4/g' zabbix-schema-create.sql
sed -i 's/utf8_bin/utf8mb4_bin/g' zabbix-schema-create.sql

1.3 myloader 导入

# myloader   -h 10.10.137.39 -u test -p 123456  --threads 24 -q  30000 -v 3  --directory  /data/bak/mysql/0915 > /tmp/loader.log 2>&1

1.4 创建Zabbix用户

MySQL8 用户密码加密方式跟之前不一样,所以需要额外设置,否则会连接失败。按照如下设置即可。

> create user 'zabbix'@'%' identified by 'xxx'; 
> ALTER USER 'zabbix'@'% IDENTIFIED WITH mysql_native_password BY 'xxx';
> flush privileges;

2、主从同步

# 获取备份时的binlog位点信息
# /data/bak/mysql/0915
# cat metadata 
Started dump at: 2022-09-19 17:29:54
SHOW MASTER STATUS:
	Log: mysql-bin.000035
	Pos: 772796394

master 创建主从同步专用账号

> GRANT REPLICATION SLAVE ON *.* TO 'repl'@'10.0.1.7' identified by 'repl@xxx';
> flush privileges;

slave上开启主从同步

> change master to master_host='10.10.69.60',master_port=3306,master_user='repl',master_password='repl@YfeUOI0bL',master_log_file='mysql-bin.000035',master_log_pos=772796394; 
> start slave;

四、升级Zabbix

1、配置备份

# cp -r /usr/share/zabbix  /usr/share/zabbix_20220921
# cp -r /etc/zabbix  /etc/zabbix/web_20220921

2、编译安装

# yum install mysql-devel unixODBC-devel net-snmp-devel libssh2-devel OpenIPMI-devel libevent-devel curl curl-devel -y

# wget https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.8.tar.gz 
# tar xf zabbix-6.0.8.tar.gz && cd zabbix-6.0.8
# ./configure --prefix=/usr/local/zabbix-server --enable-server --enable-java --enable-ipv6 --with-mysql --with-libxml2 --with-unixodbc --with-net-snmp --with-ssh2 --with-openipmi --with-openssl --with-libcurl --with-libxml2
# make && make install

3、PHP控制台文件

正常情况下,源码安装后是没有 webzabbix 目录的,所以我们是找一台机器安装同版本RPM 的包来获取到这两个文件夹。

# yum zabbix-web-mysql zabbix-nginx-conf -y

4、修改数据库配置

# vim /etc/zabbix/web/zabbix.conf.php
......

# vim /etc/zabbix/zabbix_server.conf
......

5、启动脚本

启动可以直接使用命令行启动也可以加入做成服务启动,这样便于管理。

# /usr/local/zabbix-server/sbin/zabbix_server -c /etc/zabbix/zabbix_server.conf
# cat /usr/lib/systemd/system/zabbix-server.service
[Unit]
Description=Zabbix Server
After=syslog.target
After=network.target
After=mysql.service
After=mysqld.service
After=mariadb.service
After=postgresql.service
After=pgbouncer.service
After=postgresql-9.4.service
After=postgresql-9.5.service
After=postgresql-9.6.service
After=postgresql-10.service
After=postgresql-11.service
After=postgresql-12.service

[Service]
Environment="CONFFILE=/etc/zabbix/zabbix_server.conf"
EnvironmentFile=-/etc/sysconfig/zabbix-server
Type=forking
Restart=on-failure
PIDFile=/run/zabbix/zabbix_server.pid
KillMode=control-group
ExecStart=/usr/local/zabbix-server/sbin/zabbix_server -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
TimeoutSec=0

[Install]
WantedBy=multi-user.target

# systemctl daemon-reload
# systemctl start zabbix-server

Reference:

https://www.zabbix.com/documentation/6.2/en/manual/installation/upgrade/packages/rhel_centos
https://blog.csdn.net/qq_25854057/article/details/103730083

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Zabbix 5.0 升级Zabbix 6.0 的过程可以分为几个主要步骤,但请注意,这是一个概括,具体操作可能需要根据你的环境和Zabbix版本的具体差异进行调整。以下是通用的大致步骤: 1. **备份当前环境**: 在开始升级之前,确保对当前Zabbix服务器的数据、配置文件以及相关的日志进行备份,以防升级过程中出现问题。 2. **检查兼容性**: 确认Zabbix 5.0是否满足升级Zabbix 6.0的系统要求,比如操作系统、数据库版本等。 3. **更新软件包**: 使用Zabbix官方提供的升级脚本或者工具(如zabbix-upgrade.sh)更新Zabbix服务器和客户端到最新版本,以准备迁移到新版本。 4. **停机维护**: 在业务低峰期,关闭Zabbix服务器的服务,确保升级过程不会影响监控。 5. **数据库迁移**: 根据官方文档中的指示,更新数据库结构,确保数据兼容性。可能需要手动执行SQL脚本或者使用提供的工具进行迁移。 6. **配置文件迁移**: Zabbix 6.0的配置文件格式可能有所变化,旧的配置文件可能需要手动调整或通过升级脚本来转换。 7. **安装并启动新版本**: 安装新的Zabbix服务器,配置好网络、数据库和其他必要的设置,然后启动服务。 8. **验证新版本功能**: 登录新的Zabbix界面,检查监控和报警是否正常,用户权限和配置是否正确。 9. **迁移旧数据**: 如果需要,将旧版本的监控数据、事件历史等导入到新版本中。 10. **清理和测试**: 清理旧版本的残留文件,进行彻底的测试以确保新版本运行良好。 11. **更新客户端**: 如果有Zabbix客户端也需要升级,更新到Zabbix 6.0的相应版本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值