升級 MinIO Operator
您可以隨時升級 MinIO Operator,而不會影響您管理的 MinIO 租戶。
作為升級過程的一部分,Operator 可能會更新和重新啟動租戶,以支援對 MinIO 自訂資源定義 (CRD) 的變更。這些變更不需要任何操作員或管理員採取任何動作,並且不會影響租戶運作。
本頁描述如何從 Operator 5.0.15 升級到 6.0.4。請參閱 將 MinIO Operator 4.5.8 及更新版本升級到 5.0.15,以取得在開始此程序之前升級到 Operator 5.0.15 的說明。
Operator 6.0.0 已棄用 Operator 主控台
從 Operator 6.0.0 開始,MinIO Operator 主控台已被棄用和移除。
您可以繼續使用標準 Kubernetes 方法 (例如 Kustomize 或 Helm) 來管理和部署 MinIO 租戶。
將 MinIO Operator 從 5.0.15 升級到 6.0.4
重要
Operator 6.0.0 已棄用 MinIO Operator 主控台,並從 MinIO Operator CRD 中移除相關資源。這包括移除 Operator 主控台資源,例如服務和 Pod。
請在未來使用 Kustomization 或 Helm 來管理租戶。
以下程序使用 Kustomize 升級 MinIO Operator。對於使用 Operator 5.0.0 到 5.0.14 的部署,請按照 將 MinIO Operator 4.5.8 及更新版本升級到 5.0.15 程序,然後再執行此升級。
如果您使用 Helm 安裝了 Operator,請改用 使用 Helm 升級 的說明。
(選用) 將每個 MinIO 租戶更新到最新的穩定 MinIO 版本。
定期升級 MinIO 可確保您的租戶擁有最新的功能和效能改進。在套用到您的生產租戶之前,請在較低的環境 (例如開發或 QA 租戶) 中測試升級。請參閱 升級 MinIO 租戶 以取得升級 MinIO 租戶的程序。
驗證現有的 Operator 安裝。使用
kubectl get all -n minio-operator
來驗證所有 Operator Pod 和服務的健康狀況和狀態。如果您將 Operator 安裝到自訂命名空間,請將該命名空間指定為
-n <NAMESPACE>
。您可以透過擷取命名空間中 Operator Pod 的物件規格來驗證目前安裝的 Operator 版本。以下範例使用
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 升級至 6.0.4 版本
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 升級
您可以使用先前使用的相同
kubectl
命令來檢查新的 Operator 版本kubectl get pod -l 'name=minio-operator' -n minio-operator -o json | jq '.items[0].spec.containers'
以下程序使用 Helm 升級現有的 MinIO Operator 安裝。
如果您使用 Kustomize 安裝 Operator,請改為使用 使用 Kustomize 升級 的說明。
(選用) 將每個 MinIO 租戶更新到最新的穩定 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
來檢閱您已安裝的儲存庫。更新 Operator 儲存庫後,使用
helm search
來檢查最新的可用圖表版本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 6.0.4 v6.0.4 A Helm chart for MinIO Operator minio-operator/tenant 6.0.4 v6.0.4 A Helm chart for MinIO Operator
minio-operator/minio-operator
是一個舊版圖表,在正常情況下不應安裝。執行
helm upgrade
Helm 使用最新的圖表來升級 MinIO Operator
helm upgrade -n minio-operator \ operator minio-operator/operator
如果您將 MinIO Operator 安裝到不同的命名空間,請在
-n
參數中指定。如果您使用的安裝名稱與
operator
不同,請將以上值替換為安裝名稱。命令結果應傳回成功,且
REVISION
值會增加。驗證 Operator 升級
您可以使用先前使用的相同
kubectl
命令來檢查新的 Operator 版本kubectl get pod -l 'name=minio-operator' -n minio-operator -o json | jq '.items[0].spec.containers'