从 v1 升级至 v2
未自定义使用外部对象存储
针对未自定义使用外部对象存储的 file v1 环境,先检查 file v1 数据目录下的 .minio.sys/format.json
文件,如 format
字段中含 xl
或 xl-single
,就可以参考平滑更新的方式升级,否则就需要通过迁移更新形式进行版本升级。
平滑更新
-
先停止 file v1 服务
-
重命名 /data/file 目录为 /data/minio (实际路径注意修改)
-
参考 minio 部署文档,部署 minio 服务
- 本质上就是:部署的新 minio 服务,minio 服务复用 file v1 的数据
-
部署 file v2 服务使用 minio 对象存储
迁移更新
-
参考 minio 部署文档,部署 minio 服务
-
进入 minio 容器(如是集群,进入任意一容器即可)
-
配置老 file 服务与新 minio 服务连接信息
mc alias set minio_old http://10.206.0.6:9001 storage RjfxxxxxxxxxihTkE
mc alias set minio_new http://10.206.0.6:9011 mingdao T7RxxxxxxxxxxdRky -
给 minio 创建四个 bucket
mc mb minio_new/mdmedia
mc mb minio_new/mdoc
mc mb minio_new/mdpic
mc mb minio_new/mdpub -
同步 file 服务中的数据到 minio 中
mc mirror minio_old/mdmedia minio_new/mdmedia
mc mirror minio_old/mdoc minio_new/mdoc
mc mirror minio_old/mdpic minio_new/mdpic
mc mirror minio_old/mdpub minio_new/mdpub-
如遇无法迁移的相关错误,可以添加
--watch
参数忽视错误继续执行迁移,如:mc mirror --watch minio_old/mdmedia minio_new/mdmedia
-
一般情况下不需要使用
watch
参数,除非遇到某些文件无法导出,在遇到无法导出问题时请做好记录并联系技术支持
-
-
迁移完成后部署 file v2 服务使用 minio 对象存储
自定义了使用外部对象存储
针对在 file v1 版本中已经自定义了使用外部对象存储环境,升级到 file v2 版本过程就简单许多,整体步骤如下:
-
下载 file v2 版本的镜像
-
修改源 file.yaml 文件,将 images 版本号指定为 v2 的镜像版本号
-
修改源 file.yaml 文件,将
MINIO_ACCESS_KEY
与MINIO_SECRET_KEY
变量名称,对应改为ENV_ACCESS_KEY_FILE
与ENV_SECRET_KEY_FILE
,变量值无需改动-
MINIO_ACCESS_KEY
-->ENV_ACCESS_KEY_FILE
-
MINIO_SECRET_KEY
-->ENV_SECRET_KEY_FILE
-
-
重启 file 服务