vSphere with Tanzu é compatível com atualizações contínuas para clusters Supervisors e Tanzu Kubernetes Grid e para a infraestrutura que oferece suporte a esses clusters.

Observação: Você não pode fazer a transição de Supervisors que usam vSphere Update Manager para vSphere Lifecycle Manager. Transição de vSphere Update Manager para vSphere Lifecycle Manager. só é compatível com clusters que não têm o vSphere with Tanzu ativado.

Como os clusters Supervisors e Tanzu Kubernetes Grid são atualizados

vSphere with Tanzu usa um modelo de atualização sem interrupção para clusters Supervisors e Tanzu Kubernetes Grid. O modelo de atualização sem interrupção garante que haja um tempo de inatividade mínimo para cargas de trabalho de cluster durante o processo de atualização. As atualizações contínuas incluem a atualização das versões do software Kubernetes e a infraestrutura e os serviços que oferecem suporte aos clusters Kubernetes, como configurações e recursos de máquinas virtuais, vSphere Namespaces e recursos personalizados.

Para que a atualização seja bem-sucedida, seu ambiente deve atender a vários requisitos de compatibilidade. O sistema impõe condições de nova verificação para garantir que os clusters estejam prontos para atualizações e oferece suporte à reversão se a atualização do cluster não for bem-sucedida.
Observação: Uma atualização do vSphere with Tanzu envolve mais do que apenas uma atualização da versão do software Kubernetes. Usamos o termo "atualização" para descrever esse processo, em vez do termo "atualização", que é uma forma limitada de atualização que incrementa a versão do software.

Dependência entre atualizações de Supervisor e clusters de Tanzu Kubernetes Grid

Você atualiza os clusters Supervisor e Tanzu Kubernetes Grid separadamente. Observe, no entanto, que há dependências entre os dois.

A atualização de um Supervisor provavelmente acionará uma atualização sem interrupção dos clusters Tanzu Kubernetes Grid implantados lá. Consulte Atualizar o Supervisor executando uma atualização do vSphere Namespaces.

Talvez seja necessário atualizar um ou mais clusters Tanzu Kubernetes Grid antes de atualizar um Supervisor se o cluster Tanzu Kubernetes Grid não for compatível com a versão Supervisor de destino. Consulte Verificar a compatibilidade do cluster Tanzu Kubernetes Grid para upgrade do Supervisor.

Sobre as atualizações do Supervisor

Quando você inicia uma atualização do Supervisor, o sistema cria uma nova VM do plano de controle e a une ao plano de controle Supervisor existente. Durante essa fase da atualização, o inventário vSphere mostra quatro VMs do plano de controle à medida que o sistema adiciona uma nova VM atualizada e, em seguida, remove a VM desatualizada mais antiga. Os objetos são migrados de uma das VMs do plano de controle antigas para a nova, e a VM do plano de controle antiga é removida. Esse processo se repete um por um até que todas as VMs do plano de controle sejam atualizadas. Depois que todas as VMs do plano de controle forem atualizadas, os nós do trabalhador serão atualizados de maneira semelhante à atualização sem interrupção. Os nós do trabalhador são os hosts ESXi, e cada processo do spherelet em cada host ESXi é atualizado um por um.

Você pode escolher entre as seguintes atualizações:
  • Atualize o vSphere Namespaces.
  • Atualize tudo, incluindo VMware versões e versões do Kubernetes.

Atualizando vSphere Namespaces

Use o fluxo de trabalho de atualização do vSphere Namespaces para atualizar a versão do Kubernetes que o Supervisor está executando, como do Kubernetes 1.22 para o Kubernetes 1.23, e a infraestrutura que dá suporte aos clusters Supervisor e Tanzu Kubernetes Grid. Esse tipo de atualização é mais frequente e é usado para manter o ritmo com a cadência de lançamento do Kubernetes. A seguir está a sequência de atualização vSphere Namespaces.
  1. Atualizar vCenter Server.
  2. Execute uma atualização do vSphere Namespaces (incluindo o upgrade do Kubernetes).

Para executar uma atualização do vSphere Namespaces, consulte Atualizar o Supervisor executando uma atualização do vSphere Namespaces.

Atualizando todos os vSphere with Tanzu componentes

Use o fluxo de trabalho atualizar tudo para atualizar todos os componentes vSphere with Tanzu. Esse tipo de atualização é necessário quando você está atualizando versões principais, por exemplo, como de NSX-T 3.X para 4 e de vSphere 7.x para 8.

Observação: Antes de fazer upgrade para o vCenter Server 8.0, certifique-se de que a versão do Kubernetes de todos os Supervisors seja no mínimo 1.21, de preferência a mais recente com suporte, e que a versão Tanzu Kubernetes release dos clusters Tanzu Kubernetes Grid seja de 1.21, de preferência a mais recente com suporte .
Esse fluxo de trabalho de atualização não é frequente, dependendo de quando há novos VMware lançamentos de produtos. Esta é a sequência de atualização de tudo:
  1. Verifique a VMware Matriz de interoperabilidade https://interopmatrix.vmware.com/Interoperability para o vCenter Server e o NSX para determinar a compatibilidade. A funcionalidade do vSphere with Tanzu é fornecida pelo software Workload Control Plane (WCP) que acompanha o vCenter Server.
  2. Atualize NSX, se compatível.
  3. Atualizar vCenter Server.
  4. Atualizar vSphere Distributed Switch.
  5. Faça upgrade de ESXi hosts.
  6. Verifique a compatibilidade de quaisquer clusters Tanzu Kubernetes Grid provisionados com a versão Supervisor de destino.
  7. Atualização vSphere Namespaces (incluindo a versão Supervisor Kubernetes).
  8. Atualize Tanzu Kubernetes Grid clusters.
O diagrama ilustra o fluxo de trabalho geral para atualizações do vSphere with Tanzu. O diagrama mostra as etapas para vSphere with Tanzu atualizações.

Sobre as atualizações de cluster do Tanzu Kubernetes Grid

Quando você atualiza um Supervisor, os componentes de infraestrutura que dão suporte aos clusters Tanzu Kubernetes Grid implantados nesse Supervisor, como o Tanzu Kubernetes Grid 2.0, também são atualizados. Cada atualização de infraestrutura pode incluir atualizações para serviços que oferecem suporte ao Tanzu Kubernetes Grid 2.0 (CNI, CSI, CPI) e definições de configuração atualizadas para as VMs do plano de controle e os nós de trabalho que podem ser aplicados a clusters Tanzu Kubernetes Grid existentes. Para garantir que sua configuração atenda aos requisitos de compatibilidade, o vSphere with Tanzu realiza pré-verificações durante a atualização sem interrupção e impõe a conformidade.

Para realizar uma atualização sem interrupção de um cluster Tanzu Kubernetes Grid, atualize o manifesto do cluster. Consulte Atualizando clusters do TKG 2 no Supervisor. Observe, no entanto, que quando uma atualização do vSphere Namespaces é executada, o sistema propaga imediatamente as configurações atualizadas para todos os clusters do Tanzu Kubernetes Grid. Essas atualizações podem acionar automaticamente uma atualização sem interrupção do plano de controle Tanzu Kubernetes Grid e dos nós do trabalhador.

O processo de atualização sem interrupção para substituir os nós do cluster é semelhante à atualização sem interrupção de pods em uma implantação do Kubernetes. Há dois controladores distintos responsáveis por executar uma atualização sem interrupção de clusters Tanzu Kubernetes Grid: o controlador de complementos e o controlador TanzuKubernetesCluster. Nesses dois controladores, há três estágios principais para uma atualização sem interrupção: atualização de complementos, atualização do plano de controle e atualização dos nós do trabalhador. Esses estágios ocorrem em ordem, com pré-verificações que impedem que uma etapa seja iniciada até que a etapa anterior tenha progredido o suficiente. Essas etapas poderão ser ignoradas se forem consideradas desnecessárias. Por exemplo, uma atualização pode afetar apenas os nós do trabalhador e, portanto, não exigir nenhuma atualização de complemento ou plano de controle.

Durante o processo de atualização, o sistema adiciona um novo nó de cluster e aguarda que o nó fique online com a versão de destino do Kubernetes. Em seguida, o sistema marca o nó antigo para exclusão, passa para o próximo nó e repete o processo. O nó antigo não é excluído até que todos os pods sejam removidos. Por exemplo, se um pod for definido com PodDisruptionBudgets que impedem que um nó seja totalmente drenado, o nó será isolado, mas não será removido até que esses pods possam ser despejados. O sistema atualiza primeiro todos os nós do plano de controle e, em seguida, os nós do trabalhador. Durante uma atualização, o status do cluster Tanzu Kubernetes Grid muda para "atualizando". Após a conclusão do processo de atualização sem interrupção, o status do cluster Tanzu Kubernetes Grid muda para "em execução".

Os pods em execução em um cluster Tanzu Kubernetes Grid que não são controlados por um controlador de replicação serão excluídos durante uma atualização de versão do Kubernetes como parte da drenagem do nó do trabalhador durante a atualização do cluster Tanzu Kubernetes Grid. Isso será verdadeiro se a atualização do cluster for acionada manual ou automaticamente por uma atualização do vSphere Namespaces. Os pods não regidos por um controlador de replicação incluem pods que não são criados como parte de uma especificação de implantação ou ReplicaSet. Consulte o tópico Ciclo de vida do pod: vida útil do pod na documentação do Kubernetes para obter mais informações.