升級 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 <命名空間>
。您可以透過擷取命名空間中 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 <命名空間>
。使用
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'