Você pode atualizar um cluster de carga de trabalho alterando a classe de armazenamento usada pelos nós do cluster.
Você pode iniciar uma atualização sem interrupção de um cluster TKG 2 alterando o valor do parâmetro storageClass
na especificação do cluster.
Pré-requisitos
Esta tarefa requer o uso do comando de edição kubectl. Esse comando 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. Para configurar um editor para o kubectl, consulte Configurar um editor de texto para Kubectl.
Procedimento
- Autentique com o Supervisor.
kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME
- Alterne o contexto para o vSphere Namespace em que o cluster de carga de trabalho de destino é 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.
cluster v1alpha3:
kubectl edit tanzukubernetescluster/CLUSTER-NAME
cluster v1beta1:
kubectl edit cluster/CLUSTER-NAME
- Edite o manifesto alterando o valor
storageClass
.
Por exemplo, para um cluster v1alpaha3, altere o manifesto do cluster da classe
silver-storage-class
para o plano de controle e os nós do trabalhador:
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 do trabalhador:
spec:
topology:
controlPlane:
...
storageClass: gold-storage-class
workers:
...
storageClass: gold-storage-class
Da mesma forma, se você tiver provisionado um cluster v1beta1, atualize o valor
variables.storageclass
na especificação do cluster com o nome da classe de armazenamento.
- 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 provisiona as novas VMs de nó e desativa as antigas.
- Verifique se o kubectl relata 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 se o kubectl não relatar que o manifesto do cluster foi editado com êxito, verifique se você configurou corretamente o editor de texto padrão usando a variável de ambiente KUBE_EDITOR. Consulte
Configurar um editor de texto para Kubectl.
- Verifique se o cluster está atualizado.
cluster v1alpha3:
kubectl get tanzukubernetescluster
cluster v1beta1:
kubectl get cluster