Clusters do Anthos na arquitetura da AWS

Visão geral

Os clusters do Anthos no AWS (GKE na AWS) são softwares de nuvem híbrida que estendem o Google Kubernetes Engine (GKE) ao Amazon Web Services (AWS).

O GKE na AWS usa recursos comuns da AWS, como Elastic Compute Cloud (EC2), Elastic Block Storage (EBS) e Elastic Load Balancer (ELB). A maioria dos recursos da AWS criados pelos clusters do Anthos na AWS têm nomes que começam com gke-.

Arquitetura

Há dois componentes para os clusters do Anthos no AWS.

  1. O serviço de gerenciamento, um ambiente que pode instalar e atualizar os clusters de usuário, usa a API da AWS para provisionar recursos.
  2. Clusters de usuário, em que você executa as cargas de trabalho.

Neste tópico, descrevemos a finalidade e o formato do seu serviço de gerenciamento do Anthos e clusters de usuário.

Arquitetura de clusters do Anthos na instalação da AWS, mostrando o serviço de gerenciamento e o AWSClusters contendo um plano de controle e o AWSNodePools

Serviço de gerenciamento

O serviço de gerenciamento fornece e gerencia componentes dos clusters do Anthos na instalação da AWS. Por exemplo, você cria clusters de usuários usando o serviço de gerenciamento. O serviço de gerenciamento usa a API AWS para provisionar recursos.

É possível criar seu serviço de gerenciamento em uma VPC dedicada da AWS ou uma VPC da AWS atual.

Você precisa de um serviço de gerenciamento em cada nuvem privada virtual (VPC) da AWS em que executa clusters do Anthos no AWS. O serviço de gerenciamento está instalado em uma zona de disponibilidade da AWS. Você só precisa de um serviço de gerenciamento por VPC. Um serviço de gerenciamento pode gerenciar vários clusters de usuários.

O principal componente do serviço de gerenciamento é o Operator do cluster. O operador de cluster é um operador do Kubernetes (em inglês) que cria e gerencia seus AWSClusters e AWSNodePools. O Cluster Operator armazena a configuração em um banco de dados etcd com armazenamento persistente em um volume da AWS EBS.

Como instalar e configurar seu serviço de gerenciamento

Nesta seção, você verá as ferramentas que podem ser usadas para gerenciar o serviço de gerenciamento.

A ferramenta anthos-gke

Crie e gerencie seus clusters com a ferramenta de linha de comando anthos-gke. Para mais informações, consulte a ferramenta anthos-gke.

Connect

Com o Connect, é possível visualizar e fazer login nos seus clusters do Anthos no AWS e nos clusters do GKE no Google Cloud usando a mesma interface no Console do Google Cloud. Todos os recursos são mostrados em um único painel, para que você possa ter visibilidade das cargas de trabalho em vários clusters do Kubernetes.

Clusters de usuários

Um cluster de usuário inclui dois componentes, que são recursos personalizados do Kubernetes hospedados pelo serviço de gerenciamento:

  1. Um plano de controle.
  2. Um ou mais AWSNodePools.

AWSCluster

Um AWSCluster é executado em uma única VPC.

Quando você instala um cluster de gerenciamento em uma VPC dedicada, os clusters do Anthos na AWS criam réplicas do plano de controle em cada zona especificada em dedicatedVPC.availabilityZones. Quando você instala um cluster de gerenciamento na infraestrutura atual, os clusters do Anthos na AWS criam um AWSCluster com três réplicas do plano de controle nas mesmas zonas de disponibilidade. Cada réplica pertence ao próprio grupo de escalonamento automático da AWS que reinicia as instâncias quando elas são encerradas.

O serviço de gerenciamento coloca os planos de controle em uma sub-rede particular por trás de um balanceador de carga de rede (NLB, na sigla em inglês) da AWS. O serviço de gerenciamento interage com o plano de controle usando NLB.

Para criar planos de controle em várias zonas de disponibilidade da AWS, consulte Clusters de usuários de alta disponibilidade.

Cada plano de controle armazena a configuração em um banco de dados etcd local. Esses bancos de dados são replicados e configurados em uma topologia de alta disponibilidade empilhada.

Um plano de controle gerencia um ou mais AWSNodePools.

AWSNodePool

O AWSNodePools funciona como Pools de nós do GKE no Google Cloud. Um pool de nós é um grupo de nós em um cluster, que têm a mesma configuração. Pools de nós usam o recurso AWSNodePool e podem conter um ou mais nós. Cada pool de nós pertence a um grupo de escalonamento automático da AWS que reinicia as instâncias quando elas são encerradas.

Solução de problemas

Para solucionar problemas de clusters do Anthos na instalação da AWS, veja os eventos do Kubernetes do AWSCluster e AWSNodePools. Para mais informações, consulte o guia Solução de problemas.

A seguir