Arquitetura do GKE na AWS

Visão geral

O GKE na AWS é um software de nuvem híbrida que estende o Google Kubernetes Engine (GKE) para a 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 pelo GKE na AWS tem nomes que começam com gke- .

Arquitetura

Há dois componentes no GKE na AWS.

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

Este tópico descreve a finalidade e o formato do seu serviço de gerenciamento do Anthos e dos clusters de usuários.

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

Serviço de gestão

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

Você pode criar seu serviço de gerenciamento em uma AWS VPC dedicada ou em uma AWS VPC existente .

Você precisa de um serviço de gerenciamento em cada Nuvem Privada Virtual (VPC) da AWS onde o GKE é executado na AWS. O serviço de gerenciamento é 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 Operador de Cluster. O Operador de Cluster é um Operador do Kubernetes que cria e gerencia seus AWSClusters e AWSNodePools. O Operador de Cluster armazena a configuração em um banco de dados etcd com armazenamento persistente em um volume do AWS EBS.

Instalando e configurando seu serviço de gerenciamento

Esta seção descreve as ferramentas que você pode usar para gerenciar seu serviço de gerenciamento.

A ferramenta anthos-gke

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

Conectar

Com o Connect , você pode visualizar e fazer login no seu GKE na AWS e nos clusters do GKE noGoogle Cloud da mesma interface em Google Cloud console . Todos os seus recursos são exibidos em um único painel, para que você tenha visibilidade das suas cargas de trabalho em vários clusters do Kubernetes.

Clusters de usuários

Um cluster de usuário inclui dois componentes, ambos 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.

Ao instalar um cluster de gerenciamento em uma VPC dedicada , o GKE na AWS cria réplicas do plano de controle em cada zona especificada em dedicatedVPC.availabilityZones . Ao instalar um cluster de gerenciamento em uma infraestrutura existente, o GKE na AWS cria um AWSCluster com três réplicas do plano de controle nas mesmas zonas de disponibilidade. Cada réplica pertence ao seu próprio grupo de Auto Scaling 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 privada atrás de um Balanceador de Carga de Rede (NLB) da AWS. O serviço de gerenciamento interage com o plano de controle usando o 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 empilhada de alta disponibilidade .

Um plano de controle gerencia um ou mais AWSNodePools.

AWSNodePool

AWSNodePools funcionam como GKE Node Pools em Google Cloud Um pool de nós é um grupo de nós dentro de um cluster, todos com 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 ao seu próprio grupo de Auto Scaling da AWS, que reinicia as instâncias quando elas são encerradas.

Solução de problemas

Você pode solucionar problemas na instalação do GKE na AWS visualizando os eventos do Kubernetes no AWSCluster e no AWSNodePools. Para mais informações, consulte o guia de solução de problemas .

O que vem a seguir