升级 MinIO Operator
您可以随时升级 MinIO Operator,而不会影响您管理的 MinIO Tenants。
作为升级过程的一部分,Operator 可能会更新并重启租户以支持 MinIO 自定义资源定义 (CRD) 的变更。 这些变更不需要任何操作员或管理员采取行动,也不会影响租户运行。
本页介绍如何从 Operator 5.0.15 升级到 OPERATOR。 参见升级 MinIO Operator 4.5.8 及更高版本至 5.0.15有关在开始此过程前升级到 Operator 5.0.15 的说明。
Operator 6.0.0 弃用 Operator Console
从 Operator 6.0.0 开始,MinIO Operator Console 已被弃用并移除。
您可以继续使用标准的 Kubernetes 方法(如 Kustomize 或 Helm)来管理和部署 MinIO 租户。
升级 MinIO Operator 5.0.15 到 OPERATOR
重要
Operator 6.0.0 弃用了 MinIO Operator Console 并从 MinIO Operator CRD 中移除了相关资源。 这包括移除 Operator Console 资源,例如服务和 Pod。
今后请使用 Kustomization 或 Helm 来管理租户。
以下过程使用 Kustomize 升级 MinIO Operator。 对于使用 Operator 5.0.0 至 5.0.14 的部署,请遵循升级 MinIO Operator 4.5.8 及更高版本至 5.0.15执行此升级前的步骤。
如果您使用以下方式安装了Operator:Helm, 使用使用 Helm 升级改为使用说明。
(可选)将每个 MinIO Tenant 更新至最新的稳定版 MinIO 版本。
定期升级MinIO可确保您的租户拥有最新功能和性能改进。 在应用到生产租户之前,请在较低环境(如开发或QA租户)中测试升级。 参见升级 MinIO 租户有关升级 MinIO 租户的流程说明。
验证现有的 Operator 安装。 使用
kubectl get all -n minio-operator验证所有 Operator pod 和服务的健康状态与运行状况。如果您将 Operator 安装到了自定义命名空间,请将该命名空间指定为
-n <NAMESPACE>.You can verify the currently installed Operator version by retrieving the object specification for an operator pod in the namespace. The following example uses the
jq从...中筛选必要信息的工具kubectl:kubectl get pod -l 'name=minio-operator' -n minio-operator -o json | jq '.items[0].spec.containers'
输出类似于以下内容:
{ "env": [ { "name": "CLUSTER_DOMAIN", "value": "cluster.local" } ], "image": "minio/operator:v5.0.15", "imagePullPolicy": "IfNotPresent", "name": "minio-operator" }
如果您的本地主机没有
jq安装好实用工具后,您可以运行命令的第一部分并定位spec.containers输出部分。使用 Kustomize 升级 Operator
以下命令将 Operator 升级到 OPERATOR 版本:
kubectl apply -k github.com/minio/operator
在下面的示例输出中,
configured表示新更改是从更新的 CRD 应用的位置:namespace/minio-operator unchanged customresourcedefinition.apiextensions.k8s.io/miniojobs.job.min.io configured customresourcedefinition.apiextensions.k8s.io/policybindings.sts.min.io configured customresourcedefinition.apiextensions.k8s.io/tenants.minio.min.io configured serviceaccount/minio-operator unchanged clusterrole.rbac.authorization.k8s.io/minio-operator-role configured clusterrolebinding.rbac.authorization.k8s.io/minio-operator-binding unchanged service/operator unchanged service/sts unchanged deployment.apps/minio-operator configured
验证 Operator 升级
您可以使用相同的命令检查新的 Operator 版本
kubectl之前使用的命令:kubectl get pod -l 'name=minio-operator' -n minio-operator -o json | jq '.items[0].spec.containers'
以下过程使用 Helm 升级现有的 MinIO Operator 安装。
如果您使用 Kustomize 安装了 Operator,请使用使用 Kustomize 升级改为使用说明。
(可选)将每个 MinIO Tenant 更新至最新的稳定版 MinIO 版本。
定期升级MinIO可确保您的租户拥有最新功能和性能改进。 在应用到生产租户之前,请在较低环境(如开发或QA租户)中测试升级。 参见升级 MinIO 租户有关升级 MinIO 租户的流程说明。
验证现有的 Operator 安装。
使用
kubectl get all -n minio-operator验证所有 Operator pod 和服务的健康状态与运行状况。如果您将 Operator 安装到了自定义命名空间,请将该命名空间指定为
-n <NAMESPACE>.使用
helm list查看命名空间中已安装图表的命令:helm list -n minio-operator
结果应类似于以下内容:
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION operator minio-operator 1 2023-11-01 15:49:54.539724775 -0400 EDT deployed operator-5.0.x v5.0.x
更新 Operator 代码库
使用
helm repo update minio-operator要更新 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
The
minio-operator/minio-operator是一个遗留图表,应该不在正常情况下安装。运行
helm upgradeHelm 使用最新 chart 升级 MinIO Operator:
helm upgrade -n minio-operator \ operator minio-operator/operator
如果您将 MinIO Operator 安装到了不同的命名空间,请在其中指定
-n论点。如果您使用了不同的安装名称
operator将上面的值替换为安装名称。命令执行结果应返回成功,并伴随版本号的提升
REVISION值。验证 Operator 升级
您可以使用相同的命令检查新的 Operator 版本
kubectl之前使用的命令:kubectl get pod -l 'name=minio-operator' -n minio-operator -o json | jq '.items[0].spec.containers'