文档基于2025-10-10日社区最终版构建     
切换到英文版    进入演示系统    进入交流社区

MinIO Documentation

升级 MinIO 租户

以下过程使用 Kustomize 或 Helm 升级单个 MinIO 租户。 MinIO 建议在生产租户升级之前,先在较低环境(如开发或 QA 租户)中测试升级。

重要

对于使用早于RELEASE.2024-03-30T09-41-56Z正在运行AD/LDAP已启用,必须阅读发布说明RELEASE.2024-04-18T19-09-19Z在开始此过程之前。 您必须按照链接版本中记录的额外步骤作为升级过程的一部分。

使用 Kustomize 升级租户

以下过程使用 Kustomize 和kubectlCLI. 如果您使用Helm, 使用使用 MinIO Helm Chart 升级租户改为使用过程。

要使用 Kustomize 升级租户:

如果租户是通过 Operator Console 部署的,在升级前需要执行额外步骤来创建基础配置文件。

如果租户是使用 Kustomize 部署的,基础配置就是您现有的kustomization来自原始租户部署的文件。

根据租户的部署方式选择下面的选项卡:

  1. 创建基础配置文件:

    1. 在合适的目录中,使用以下命令将当前租户配置保存到文件中:kubectl get:

      kubectl get tenant/my-tenant -n my-tenant-ns -o yaml > my-tenant-base.yaml
      

      替换my-tenantmy-tenant-ns使用要升级的租户的名称和命名空间。

      编辑文件以删除以下行:

      • creationTimestamp:

      • resourceVersion:

      • uid:

      • selfLink:(如果存在)

      例如,删除高亮显示的行:

      metadata:
        creationTimestamp: "2024-05-29T21:22:20Z"
        generation: 1
        name: my-tenant
        namespace: my-tenant-ns
        resourceVersion: "4699"
        uid: d5b8e468-3bed-4aa3-8ddb-dfe1ee0362da
      
    2. 在同一目录下,创建一个kustomization.yaml内容类似于以下内容的文件:

      apiVersion: kustomize.config.k8s.io/v1beta1
      kind: Kustomization
      
      resources:
      - my-tenant-base.yaml
      
      patches:
      - path: upgrade-minio-tenant.yaml
      

      如果您使用了不同的文件名kubectl get上一步的输出,替换my-tenant-base.yaml使用该文件的名称。

  1. 您可以使用以下方式升级租户:kustomization将原始部署中的文件作为基础配置。 如果您不再拥有这些文件,请按照 Operator Console-Deployed Tenant 选项卡中的说明操作。

  1. 创建一个upgrade-minio-tenant.yaml内容类似于以下内容的文件:

apiVersion: minio.min.io/v2
kind: Tenant

metadata:
  name: my-tenant
  namespace: my-tenant-ns

spec:
  image: minio/minio:MINIOLATEST

This file instructs Kustomize to upgrade the tenant using the specified image. The name of this file,upgrade-minio-tenant.yaml必须匹配patches.pathfilename specified in thekustomization.yaml上一步中创建的文件。

替换my-tenantmy-tenant-ns使用要升级的租户的名称和命名空间。 指定要升级到的 MinIO 版本在image:.

或者,您可以根据本地流程直接更新基础配置。 参考Kustomize Documentation欲了解更多信息。

  1. 从与上述文件相同的目录中,将更新后的配置应用到租户kubectl apply:

kubectl apply -k ./

输出类似于以下内容:

tenant.minio.min.io/my-tenant configured

使用 MinIO Helm Chart 升级租户

此过程使用 Helm Charts 升级现有的 MinIO 租户。

如果您使用 Kustomize 部署了租户,请使用使用 Kustomize 升级租户改为使用过程。

  1. 验证现有的 MinIO 租户安装。

    使用kubectl get all -n TENANT_NAMESPACE验证所有租户 Pod 和服务的健康状态与运行状况。

    使用helm list查看命名空间中已安装图表的命令:

    helm list -n TENANT_NAMESPACE
    

    结果应类似于以下内容:

    NAME            NAMESPACE         REVISION        UPDATED                                 STATUS          CHART           APP VERSION
    CHART_NAME      TENANT_NAMESPACE  1               2023-11-01 15:49:58.810412732 -0400 EDT deployed        tenant-5.0.x   v5.0.x
    
  2. 更新 Operator 代码库

    使用helm repo update minio-operator要更新 MinIO Operator 仓库。 如果您为 MinIO Operator 仓库设置了不同的别名,请在命令中指定该别名。 您可以使用helm repo list查看您已安装的代码库。

    使用helm search要检查更新 Operator 仓库后的最新可用 Chart 版本:

    helm search repo minio-operator
    

    响应应类似于以下内容:

    NAME                            CHART VERSION   APP VERSION     DESCRIPTION
    minio-operator/minio-operator   4.3.7           v4.3.7          A Helm chart for MinIO Operator
    minio-operator/operator         OPERATOR          vOPERATOR         A Helm chart for MinIO Operator
    minio-operator/tenant           OPERATOR          vOPERATOR         A Helm chart for MinIO Operator
    

    Theminio-operator/minio-operator是一个遗留图表,应该在正常情况下安装。

  3. 运行helm upgrade

    Helm 使用最新的 chart 来升级 Tenant:

    helm upgrade -n minio-tenant \
      CHART_NAME minio-operator/tenant
    

    命令执行结果应该返回成功,并伴随一个版本号的提升REVISION值。

  4. 验证租户升级

    检查所有服务和 Pod 是否在线并正常运行。