Skip to content

MINIO 升级

背景说明:随着 HENGSHI SENSE 服务版本的不断升级,HENGSHI SENSE 内部 对象存储(minio)组件版本也在不断升级,可以选择继续维持当前版本、也可以选择升级到内置最新版本。

本文介绍如何升级 Minio 操作,以及升级过程中出现问题如果回滚数据库版本操作。

单机/集群 部署

升级前验证

HENGSHI 默认内置的版本为"2022-10-24T18-35-07Z", 可通过 ls ${HENGSHI_HOME}/lib 目录下确认当前使用的版本

shell
$ ls -al /opt/hengshi/lib/
...
minio -> minio-2022-10-24T18-35-07Z-linux-64
minio-2022-10-24T18-35-07Z-linux-64
...

版本升级

在hengshi-sense-env.sh文件中增加NEW_MINIO_VERSION 变量

shell
export NEW_MINIO_VERSION="2025-03-12"

提示

默认情况下无需特别声明此变量,仅当lib目录下有多个MINIO版本时才需要指定升级到某个版本

执行前需要从hengshi升级包内将minio新版本拷贝到当前部署的lib目录下 例如;

shell
cp -a hengshi-sense-[version]/lib/minio-2025-03-12T18-04-18Z-linux-64 {HENGSHI_HOME}/lib/
shell
cd {HENGSHI_HOME}
bin/hengshi-sense-bin stop hengshi ## 停止hengshi服务
bin/hengshi-sense-bin start minio ## 保证 minio 升级操作前,服务处于运行状态。
bin/hengshi-sense-bin upgrade minio ## 升级操作

出现上面提示显示您的 minio 数据库已经升级完成

版本回滚

  1. 升级过程中出现异常信息,请执行下述操作完成版本回滚操作
shell
cd {HENGSHI_HOME}
rm -rf minio-data
mv minio_data_bak minio_data
cd /opt/hengshi/lib
rm -rf minio
ln -s minio-2022-10-24T18-35-07Z minio

容器 部署

升级前验证

请联系售后人员,确认当前 minio 版本信息,升级 minio 版本信息。

版本升级

  1. 升级 Minio 服务版本,需要使用升级镜像 hengshi-sense:minio-upgrade 进行升级操作
  2. 修改.env 文件,HS_IMAGE_TAG=$TAG 将$TAG 配置成 minio-upgrade 升级镜像 tag
  3. 修改 docker-compose.yaml 文件,在 minio 服务下 增加如下配置 ,注意 2022-10-24 是当前 minio 版本编号
text
environment:
      MINIO_VERSION: 2022-10-24
  1. 升级前操作
shell
# 停止hengshi服务
docker-compose stop hengshi

# 停止minio服务
docker stop hengshi-minio
docker rm -f hengshi-minio

# 启动minio-upgrade
docker-compose up -d hengshi-minio
  1. 执行升级操作
shell
# 确保minio-upgrade容器状态为Up,才能继续执行升级操作。
docker exec -it hengshi-minio bash -c "/opt/hengshi/bin/hengshi-sense-bin upgrade minio"

5. 出现上面提示表示您的 minio 对象存储升级完成

版本回滚

  1. 升级过程中出现异常信息,请执行下述操作完成版本回滚操作
  2. 确认 env 配置文件信息,HSHOME 地址信息
shell
cd $HSHOME #进去到 HSHOME 配置的目录下
cd hsdata
rm -rf minio_data
mv minio_data_bak minio_data
  1. 回滚完成后恢复 .env 文件中镜像 tag 到旧版本

k8s 部署

升级前验证

请联系售后人员,确认当前 minio 版本信息,升级 minio 版本信息。

版本升级

  1. 升级 Minio 服务版本,需要使用升级镜像 hengshi-sense:minio-upgrade 进行升级操作
  2. 修改 minio.yaml 中 image: registry.hengshi.org/hengshi-sense:xxx 镜像版本为 hengshi-sense:minio-upgrade-xx
  3. 修改 configmap.yaml 配置参数 增加如下配置,注意 2022-10-24信息是当前 minio 版本编号
text
MINIO_VERSION: 2022-10-24
  1. 升级前操作
shell
# 停止hengshi服务
kubectl -n hengshi scale deployment hengshi-sense --replicas=0

# 停止minio服务
kubectl -n hengshi scale sts metadb --replicas=0

# 启动metadb-upgrade服务(请确认minio.yaml中的镜像地址已经修改)
kubectl -n hengshi apply minio.yaml
kubectl -n hengshi scale sts minio --replicas=1
  1. 执行下列升级操作
shell
# 确保minio-upgrade容器状态为Up,才能继续执行升级操作。
kubectl -n hengshi exec -it minio-0 -- bash -c "/opt/hengshi/bin/hengshi-sense-bin upgrade minio"

5. 出现上面提示表示您的 metadb 数据库升级完成

版本回滚

  1. 升级过程中出现异常信息,请执行下述操作完成版本回滚操作
shell
kubectl -n hengshi exec -it minio-0 -- /bin/bash
cd /opt/hengshi
rm -rf minio-data
mv minio-data_bak minio-data
  1. 回滚完成后恢复 minio.yaml 文件中镜像 tag 到旧版本

衡石分析平台使用手册