可以透過變更叢集節點所用的儲存區類別來更新 TKG 叢集。
可以透過使用
kubectl edit
命令編輯叢集規格中
storageClass
參數的值來起始 TKG 叢集的輪流更新。
備註: 無法使用
kubectl apply
命令更新已部署的 TKG 叢集。
必要條件
此工作需要使用 kubectl edit 命令。此命令會在 KUBE_EDITOR 或 EDITOR 環境變數所定義的文字編輯器中開啟叢集資訊清單。儲存檔案時,將透過變更來更新叢集。若要為 kubectl 設定編輯器,請參閱 為 Kubectl 設定文字編輯器。
程序
- 使用 主管 進行驗證。
kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME
- 將內容切換到佈建目標工作負載叢集的 vSphere 命名空間。
kubectl config use-context SUPERVISOR-NAMESPACE
- 若要判定可用的儲存區類別,並判定要使用的儲存區類別,請執行下列命令。
kubectl describe tanzukubernetescluster CLUSTER-NAME
- 執行下列命令以編輯叢集資訊清單。
v1alpha3 叢集:
kubectl edit tanzukubernetescluster/CLUSTER-NAME
v1beta1 叢集:
kubectl edit cluster/CLUSTER-NAME
- 透過變更
storageClass
值編輯資訊清單。
例如,對於 v1alpaha3 叢集,將叢集資訊清單從對控制平面和 worker 節點使用
silver-storage-class
類別:
spec:
topology:
controlPlane:
...
storageClass: silver-storage-class
workers:
...
storageClass: silver-storage-class
變更為對控制平面和 worker 節點使用
gold-storage-class
類別:
spec:
topology:
controlPlane:
...
storageClass: gold-storage-class
workers:
...
storageClass: gold-storage-class
同樣,如果已佈建 v1beta1 叢集,請將叢集規格中的
variables.storageclass
值更新為儲存區類別的名稱。
- 儲存對資訊清單檔案所做的變更。
儲存檔案時,kubectl 會將變更套用至叢集。在背景中,
Tanzu Kubernetes Grid 會佈建新的節點虛擬機器並停止舊的節點虛擬機器。
- 確認 kubectl 是否報告資訊清單編輯已成功記錄。
kubectl edit tanzukubernetescluster/tkgs-cluster-1
tanzukubernetescluster.run.tanzu.vmware.com/tkgs-cluster-1 edited
備註: 如果您收到錯誤,或 kubectl 未報告叢集資訊清單已成功編輯,請確保您使用 KUBE_EDITOR 環境變數正確設定了預設文字編輯器。請參閱
為 Kubectl 設定文字編輯器。
- 確認叢集是否已更新。
v1alpha3 叢集:
kubectl get tanzukubernetescluster
v1beta1 叢集:
kubectl get cluster