O Tanzu Kubernetes Grid Service fornece gerenciamento de ciclo de vida de autoatendimento de clusters do Tanzu Kubernetes. Use o Tanzu Kubernetes Grid Service para criar e gerenciar clusters do Tanzu Kubernetes de uma maneira declarativa que seja familiar para os operadores e desenvolvedores do Kubernetes.

Componentes do Tanzu Kubernetes Grid Service

O Tanzu Kubernetes Grid Service expõe três camadas de controladores para gerenciar o ciclo de vida de um cluster do Tanzu Kubernetes.

  • O Tanzu Kubernetes Grid Service provisiona clusters que incluem os componentes necessários para a integração com os recursos vSphere Namespace subjacentes. Esses componentes incluem um plug-in do provedor de nuvem que se integra ao Supervisor Cluster. Além disso, um cluster de Tanzu Kubernetes passa solicitações de volumes persistentes para o Supervisor Cluster, que é integrado com o VMware Cloud Native Storage (CNS). Consulte o Usando o armazenamento persistente no vSphere with Tanzu.
  • A API de cluster fornece APIs declarativas no estilo Kubernetes para criação, configuração e gerenciamento de cluster. As entradas para a API do cluster incluem um recurso que descreve o cluster, um conjunto de recursos que descreve as máquinas virtuais que compõem o cluster e um conjunto de recursos que descreve os complementos do cluster.
  • O Virtual Machine Service fornece uma API declarativa no estilo Kubernetes para gerenciamento de VMs e recursos associados do vSphere. O Virtual Machine Service apresenta o conceito de uma classe de máquina virtual que representa uma configuração de hardware reutilizável abstrata. A funcionalidade fornecida pelo Virtual Machine Service é usada para gerenciar o ciclo de vida do plano de controle e das VMs de nó de trabalhador que hospedam um cluster do Tanzu Kubernetes.
Figura 1. Tanzu Kubernetes Grid Service Arquitetura e componentes

Tanzu Kubernetes Componentes do cluster

Os componentes que são executados em um cluster do Tanzu Kubernetes abrangem quatro áreas: autenticação e autorização, integração de armazenamento, rede de pods e balanceamento de carga.

  • Webhook de autenticação: um webhook em execução como um pod dentro do cluster para validar os tokens de autenticação do usuário.
  • Plug-in de Interface de Armazenamento de Contêiner: um plug-in CSI Paravirtual que se integra ao CNS por meio do Supervisor Cluster.
  • Plug-in de interface de rede do contêiner: um plug-in CNI que fornece rede de pods.
  • Implementação do provedor de nuvem: oferece suporte à criação de serviços de balanceador de carga do Kubernetes.

API do Tanzu Kubernetes Grid Service

Use a API do Tanzu Kubernetes Grid Service para provisionar e gerenciar Tanzu Kubernetes clusters. É uma API declarativa que você invoca usando kubectl e YAML.

Com uma API declarativa, em vez de fazer comandos obrigatórios para o sistema, você especifica o estado desejado do cluster Tanzu Kubernetes: quantos nós, armazenamento disponível, tamanhos de VM, versão do software Kubernetes. O Tanzu Kubernetes Grid Service faz o trabalho para provisionar um cluster que corresponda ao estado desejado.

Para chamar a API do Tanzu Kubernetes Grid Service, você invoca o kubectl usando um arquivo YAML, que por sua vez invoca a API. Após a criação do cluster, atualize o YAML para atualizar o cluster.

Tanzu Kubernetes Grid Service Interfaces

Os administradores do vSphere usam o vSphere Client para configurar o vSphere Namespace e conceder permissões. Eles também podem monitorar os recursos usados pelos componentes do cluster e visualizar informações relevantes desses recursos no inventário do vSphere.

Os engenheiros de DevOps usam o vSphere Plugin for kubectl para se conectar ao vSphere Namespace com suas credenciais do vCenter Single Sign-On. Após a conexão, os engenheiros de DevOps usam kubectl para provisionar Tanzu Kubernetes clusters.

Os desenvolvedores podem se conectar a um cluster provisionado usando o vSphere Plugin for kubectl e suas credenciais de vCenter Single Sign-On. Como alternativa, se o administrador do cluster tiver configurado um provedor de autenticação Kubernetes compatível, os desenvolvedores poderão se conectar usando o kubectl. Para implantar cargas de trabalho no Kubernetes e interagir com o ambiente do cluster, os desenvolvedores usam o kubectl.

Demonstração do Tanzu Kubernetes Grid Service

Assista ao vídeo a seguir para saber como você pode usar o Tanzu Kubernetes Grid Service para criar e operar Tanzu Kubernetes clusters: vSphere 7 with Kubernetes - Tanzu Kubernetes cluster - Technical Overview .