Architettura di GKE su AWS

Panoramica

GKE su AWS è un software cloud ibrido che estende Google Kubernetes Engine (GKE) ad Amazon Web Services (AWS).

GKE su AWS utilizza risorse AWS regolari come Elastic Compute Cloud (EC2), Elastic Block Storage (EBS) e Elastic Load Balancer (ELB). La maggior parte delle risorse AWS create da GKE su AWS hanno nomi che iniziano con gke-.

Architettura

GKE su AWS è composto da due componenti.

  1. Il servizio di gestione, un ambiente in cui è possibile installare e aggiornare i cluster utente, utilizza l'API AWS per eseguire il provisioning delle risorse.
  2. Cluster utente, in cui esegui i carichi di lavoro.

Questo argomento descrive lo scopo e la forma del servizio di gestione Anthos e dei cluster utente.

Architettura di un'installazione di GKE su AWS, che mostra il servizio di gestione e AWSClusters contenenti un control plane e AWSNodePools

Servizio di gestione

Il servizio di gestione fornisce e gestisce i componenti dell'installazione di GKE su AWS. Ad esempio, crei cluster utente utilizzando il servizio di gestione. Il servizio di gestione utilizza l'API AWS per eseguire il provisioning delle risorse.

Puoi creare il servizio di gestione in un VPC AWS dedicato o in un VPC AWS esistente.

È necessario un servizio di gestione in ogni Virtual Private Cloud (VPC) AWS in cui esegui GKE su AWS. Il servizio di gestione è installato in una zona di disponibilità AWS. È necessario un solo servizio di gestione per VPC; un servizio di gestione può gestire più cluster utente.

Il componente principale del servizio di gestione è l'operatore del cluster. L'operatore del cluster è un operatore Kubernetes che crea e gestisce AWSClusters e AWSNodePools. L'operatore del cluster archivia la configurazione in un database etcd con l'archiviazione persistente su un volume AWS EBS.

Installazione e configurazione del servizio di gestione

Questa sezione descrive gli strumenti che puoi utilizzare per gestire il tuo servizio di gestione.

Strumento anthos-gke

Crea e gestisci i cluster con lo strumento a riga di comando anthos-gke. Per ulteriori informazioni, consulta Lo strumento anthos-gke.

Connetti

Con Connect, puoi visualizzare e accedere ai tuoi cluster GKE su AWS e GKE suGoogle Cloud dalla stessa interfaccia nella consoleGoogle Cloud . Tutte le tue risorse vengono mostrate in un'unica dashboard, in modo da poter visualizzare i tuoi workload in più cluster Kubernetes.

Cluster utenti

Un cluster utente include due componenti, entrambi risorse personalizzate di Kubernetes ospitate dal servizio di gestione:

  1. Un control plane.
  2. Uno o più AWSNodePool.

AWSCluster

Un AWSCluster viene eseguito in un singolo VPC.

Quando installi un cluster di gestione in un VPC dedicato, GKE su AWS crea repliche del control plane in ogni zona specificata in dedicatedVPC.availabilityZones. Quando installi un cluster di gestione nell'infrastruttura esistente, GKE su AWS crea un AWSCluster con tre repliche del control plane nelle stesse zone di disponibilità. Ogni replica appartiene al proprio gruppo AWS Auto Scaling che riavvia le istanze quando vengono terminate.

Il servizio di gestione posiziona i piani di controllo in una subnet privata dietro un bilanciatore del carico di rete (NLB) AWS. Il servizio di gestione interagisce con il control plane utilizzando NLB.

Per creare control plane in più zone di disponibilità AWS, vedi Cluster utente ad alta disponibilità.

Ogni piano di controllo archivia la configurazione in un database etcd locale. Questi database vengono replicati e configurati in una topologia di alta disponibilità in pila.

Un control plane gestisce uno o più AWSNodePool.

AWSNodePool

AWSNodePools funziona come i node pool GKE su Google Cloud. Un pool di nodi è un gruppo di nodi all'interno di un cluster che condividono la stessa configurazione. I node pool utilizzano la risorsa AWSNodePool e possono contenere uno o più nodi. Ogni pool di nodi appartiene al proprio gruppo di scalabilità automatica AWS che riavvia le istanze quando vengono terminate.

Risoluzione dei problemi

Puoi risolvere i problemi relativi all'installazione di GKE su AWS visualizzando gli eventi Kubernetes di AWSCluster e AWSNodePools. Per maggiori informazioni, consulta la guida Risoluzione dei problemi.

Passaggi successivi