---
url: /v6.2/minio-upgrade.md
---
# MINIO 升级

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

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

* [单机/集群部署升级](#单机集群部署升级)
* [容器部署升级](#容器升级部署)
* [k8s 部署升级](#k8s-部署升级)

## 单机/集群 部署

### 升级前验证

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"
```

> \[!TIP] 提示
> 默认情况下无需特别声明此变量，仅当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 ## 升级操作
```

![](/images/metaslave/minio_upgrade_sucess.png)
出现上面提示显示您的 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
```

3. 升级前操作

```shell
# 停止hengshi服务
docker-compose stop hengshi

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

# 启动minio-upgrade
docker-compose up -d hengshi-minio
```

4. 执行升级操作

```shell
# 确保minio-upgrade容器状态为Up，才能继续执行升级操作。
docker exec -it hengshi-minio bash -c "/opt/hengshi/bin/hengshi-sense-bin upgrade minio"
```

![](/images/metaslave/minio_upgrade_sucess.png) 5. 出现上面提示表示您的 minio 对象存储升级完成

### 版本回滚

1. 升级过程中出现异常信息，请执行下述操作完成版本回滚操作
2. 确认 env 配置文件信息，HSHOME 地址信息

```shell
cd $HSHOME #进去到 HSHOME 配置的目录下
cd hsdata
rm -rf minio_data
mv minio_data_bak minio_data
```

3. 回滚完成后恢复 .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
```

4. 升级前操作

```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

```

5. 执行下列升级操作

```shell
# 确保minio-upgrade容器状态为Up，才能继续执行升级操作。
kubectl -n hengshi exec -it minio-0 -- bash -c "/opt/hengshi/bin/hengshi-sense-bin upgrade minio"
```

![](/images/metaslave/minio_upgrade_sucess.png) 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
```

2. 回滚完成后恢复 minio.yaml 文件中镜像 tag 到旧版本
