升級 MinIO 租戶
以下程序使用 Kustomize 或 Helm 升級單個 MinIO 租戶。MinIO 建議您在升級生產租戶之前,在較低的環境(例如開發或 QA 租戶)中測試升級。
重要
對於使用早於 RELEASE.2024-03-30T09-41-56Z 的 MinIO 映像且啟用 AD/LDAP 的租戶,您必須在開始此程序之前仔細閱讀 RELEASE.2024-04-18T19-09-19Z 的版本注意事項。您必須採取連結版本中記錄的額外步驟作為升級程序的一部分。
使用 Kustomize 升級租戶
以下程序使用 Kustomize 和 kubectl
CLI 升級 MinIO 租戶。如果您使用 Helm 部署租戶,請改為使用 使用 MinIO Helm 圖表升級租戶 程序。
使用 Kustomize 升級租戶
如果租戶是使用 Operator 主控台部署的,則在升級之前還有其他步驟來建立基本設定檔。
如果租戶是使用 Kustomize 部署的,則基本設定是您原始租戶部署中的現有 kustomization
檔案。
根據租戶的部署方式,選擇下方的索引標籤
建立基本設定檔
在方便的目錄中,使用
kubectl get
將目前的租戶組態儲存到檔案中kubectl get tenant/my-tenant -n my-tenant-ns -o yaml > my-tenant-base.yaml
將
my-tenant
和my-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
在相同目錄下,建立一個名為
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
替換為該檔案的名稱。
您可以使用原始部署中的
kustomization
檔案作為基礎配置來升級 Tenant。如果您不再擁有這些檔案,請按照 Operator Console 部署的 Tenant 頁籤中的說明進行操作。
建立一個名為
upgrade-minio-tenant.yaml
的檔案,內容類似如下:
apiVersion: minio.min.io/v2
kind: Tenant
metadata:
name: my-tenant
namespace: my-tenant-ns
spec:
image: minio/minio:RELEASE.2024-10-29T16-01-48Z
此檔案指示 Kustomize 使用指定的映像檔來升級 Tenant。此檔案的名稱 upgrade-minio-tenant.yaml
必須與上一步驟中建立的 kustomization.yaml
檔案中指定的 patches.path
檔名相符。
將 my-tenant
和 my-tenant-ns
替換為要升級的 Tenant 的名稱和命名空間。在 image:
中指定要升級到的 MinIO 版本。
或者,您可以根據您的本機程序直接更新基礎配置。請參閱Kustomize 文件以獲取更多資訊。
從與上述檔案相同的目錄中,使用
kubectl apply
將更新後的配置應用於 Tenant。
kubectl apply -f ./輸出結果類似如下:
tenant.minio.min.io/my-tenant configured
使用 MinIO Helm Chart 升級 Tenant
此程序使用 Helm Charts 升級現有的 MinIO Tenant。
如果您使用 Kustomize 部署 Tenant,請改用使用 Kustomize 升級 Tenant程序。
驗證現有的 MinIO Tenant 安裝。
使用
kubectl get all -n TENANT_NAMESPACE
來驗證所有 Tenant Pod 和服務的健康狀況和狀態。使用
helm list
命令檢視命名空間中已安裝的 Chart。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
更新 Operator 儲存庫
使用
helm repo update minio-operator
更新 MinIO Operator 儲存庫。如果您為 MinIO Operator 儲存庫設定了不同的別名,請在命令中指定該別名。您可以使用helm repo list
來檢視您已安裝的儲存庫。更新 Operator 儲存庫後,使用
helm search
檢查最新的可用 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 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
是一個舊版的 Chart,在正常情況下**不應**安裝。執行
helm upgrade
Helm 使用最新的 Chart 來升級 Tenant。
helm upgrade -n minio-tenant \ CHART_NAME minio-operator/tenant
命令結果應返回成功,並且
REVISION
值會增加。驗證 Tenant 升級
檢查所有服務和 Pod 是否在線上且正常運作。