跳到主要内容

从 v1 升级至 v2

未自定义使用外部对象存储​

针对未自定义使用外部对象存储的 file v1 环境,先检查 file v1 数据目录下的 .minio.sys/format.json 文件,如 format 字段中含 xl 或 xl-single,就可以参考平滑更新的方式升级,否则就需要通过迁移更新形式进行版本升级。

平滑更新​

  1. 先停止 file v1 服务

  2. 重命名 /data/file 目录为 /data/minio (实际路径注意修改)

  3. 参考 minio 部署文档,部署 minio 服务

    • 本质上就是:部署的新 minio 服务,minio 服务复用 file v1 的数据
  4. 部署 file v2 服务使用 minio 对象存储

迁移更新​

  1. 参考 minio 部署文档,部署 minio 服务

  2. 进入 minio 容器(如是集群,进入任意一容器即可)

  3. 配置老 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
  4. 给 minio 创建四个 bucket

    mc mb minio_new/mdmedia
    mc mb minio_new/mdoc
    mc mb minio_new/mdpic
    mc mb minio_new/mdpub
  5. 同步 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 参数,除非遇到某些文件无法导出,在遇到无法导出问题时请做好记录并联系技术支持

  6. 迁移完成后部署 file v2 服务使用 minio 对象存储

自定义了使用外部对象存储​

针对在 file v1 版本中已经自定义了使用外部对象存储环境,升级到 file v2 版本过程就简单许多,整体步骤如下:

  1. 下载 file v2 版本的镜像

  2. 修改源 file.yaml 文件,将 images 版本号指定为 v2 的镜像版本号

  3. 修改源 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

  4. 重启 file 服务