Você pode atualizar um cluster do Tanzu Kubernetes alterando a classe de armazenamento usada pelos nós do cluster.
O Tanzu Kubernetes Grid Service oferece suporte à atualização de um cluster alterando o StorageClass
para os pools de nós, ou seja, alterando a propriedade .spec.topology.controlPlane.storageClass
ou a propriedade .spec.topology.workers.storageClass
. Consulte o Sobre Tanzu Kubernetes atualizações de cluster.
Pré-requisitos
Essa tarefa usa o comando kubectl edit tanzukubernetescluster/CLUSTER-NAME
para atualizar o manifesto do cluster. O comando kubectl edit abre o manifesto do cluster no editor de texto definido pela variável de ambiente KUBE_EDITOR ou EDITOR. Quando você salva o arquivo, o cluster é atualizado com as alterações. Consulte o Especificar um editor de texto padrão para o Kubectl.
Procedimento
- Autentique-se com o Supervisor Cluster. Consulte o Conecte-se ao Supervisor Cluster como um usuário do vCenter Single Sign-On.
kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME
- Alterne o contexto para o vSphere Namespace onde o cluster Tanzu Kubernetes de destino está provisionado.
kubectl config use-context SUPERVISOR-NAMESPACE
- Para determinar as classes de armazenamento disponíveis e decidir qual usar, execute o seguinte comando.
kubectl describe tanzukubernetescluster CLUSTER-NAME
- Execute o seguinte comando para editar o manifesto do cluster.
kubectl edit tanzukubernetescluster/CLUSTER-NAME
- Edite o manifesto alterando o valor de
storageClass
.
Por exemplo, altere o manifesto do cluster da classe
silver-storage-class
para o plano de controle e os nós de trabalho:
spec:
topology:
controlPlane:
...
storageClass: silver-storage-class
workers:
...
storageClass: silver-storage-class
Para a classe
gold-storage-class
para o plano de controle e os nós de trabalho:
spec:
topology:
controlPlane:
...
storageClass: gold-storage-class
workers:
...
storageClass: gold-storage-class
- Salve as alterações feitas no arquivo de manifesto.
Quando você salva o arquivo, o kubectl aplica as alterações ao cluster. Em segundo plano, o
Tanzu Kubernetes Grid Service provisiona as novas VMs de nó e desacelera as antigas.
- Verifique se o kubectl informa que as edições do manifesto foram registradas com êxito.
kubectl edit tanzukubernetescluster/tkgs-cluster-1
tanzukubernetescluster.run.tanzu.vmware.com/tkgs-cluster-1 edited
Observação: Se você receber um erro ou o kubectl não relatar que o manifesto do cluster foi editado com êxito, verifique se você configurou corretamente seu editor de texto padrão usando a variável de ambiente KUBE_EDITOR. Consulte o
Especificar um editor de texto padrão para o Kubectl.
- Verifique se o cluster está sendo atualizado.
kubectl get tanzukubernetescluster
NAME CONTROL PLANE WORKER DISTRIBUTION AGE PHASE
tkgs-cluster-1 3 3 v1.18.5+vmware.1-tkg.1.c40d30d 21h updating
- Verifique se o cluster está atualizado.
kubectl get tanzukubernetescluster
NAME CONTROL PLANE WORKER DISTRIBUTION AGE PHASE
tkgs-cluster-1 3 3 v1.18.5+vmware.1-tkg.1.c40d30d 22h running