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 standard 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 ha nomi che iniziano con gke-.

Architettura

GKE su AWS è composto da due componenti.

  1. Il servizio di gestione, un ambiente che può installare e aggiornare i cluster di utenti, 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 di utenti.

Architettura di un'installazione di GKE su AWS, che mostra il servizio di gestione e gli AWSCluster contenenti un piano di controllo e AWSNodePools

Servizio di gestione

Il servizio di gestione fornisce e gestisce i componenti dell'installazione di GKE su AWS. Ad esempio, crei cluster di utenti 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 è Cluster Operator. L'operatore di cluster è un operatore Kubernetes che crea e gestisce gli AWSCluster e gli AWSNodePool. Cluster Operator memorizza la configurazione in un database etcd con 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.

Lo strumento anthos-gke

Puoi creare e gestire i tuoi cluster con lo strumento a riga di comando anthos-gke. Per ulteriori informazioni, consulta lo strumento anthos-gke.

Connetti

Con Connetti, 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 avere visibilità sui tuoi workload in più cluster Kubernetes.

Cluster utenti

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

  1. Un piano di controllo.
  2. Uno o più AWSNodePool.

AWSCluster

Un AWSCluster viene eseguito in un unico VPC.

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

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 piani di controllo in più zone di disponibilità AWS, consulta Cluster utente ad alta disponibilità.

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

Un control plane gestisce uno o più AWSNodePools.

AWSNodePool

AWSNodePools funzionano 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 pool di nodi utilizzano la risorsa AWSNodePool e possono contenere uno o più nodi. Ogni pool di nodi appartiene al proprio gruppo AWS Auto Scaling, che riavvia le istanze quando vengono interrotte.

Risoluzione dei problemi

Puoi risolvere i problemi di installazione di GKE su AWS visualizzando gli eventi Kubernetes da AWSCluster e AWSNodePools. Per maggiori informazioni, consulta la guida alla risoluzione dei problemi.

Passaggi successivi