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), ed 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. Servizio di gestione, un ambiente che può installare e aggiornare i cluster utente, utilizza l'API AWS per 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, puoi creare cluster utente utilizzando il servizio di gestione. Il servizio di gestione utilizza l'API AWS per 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 viene 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 AWSCluster e AWSNodePools. L'operatore del cluster archivia la configurazione in un database etcd con spazio di 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 servizio di gestione.

Lo strumento anthos-gke

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

Connetti

Con Connect, puoi visualizzare e accedere ai cluster GKE su AWS e GKE Google Cloud dalla stessa interfaccia nella Google Cloud console. Tutte le risorse vengono mostrate in un'unica dashboard, in modo da poter visualizzare i carichi di lavoro in più cluster Kubernetes.

Cluster utenti

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

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

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 piano di controllo in ogni zona che specifichi in dedicatedVPC.availabilityZones. Quando installi un cluster di gestione nell'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 di scalabilità automatica AWS che riavvia le istanze quando vengono terminate.

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

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

Ogni control plane archivia la configurazione in un database etcd locale. Questi database vengono replicati e configurati in una topologia ad alta disponibilità in pila.

Un piano di controllo gestisce uno o più AWSNodePools.

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 hanno tutti 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 da AWSCluster e AWSNodePools. Per ulteriori informazioni, consulta la guida alla risoluzione dei problemi.

Passaggi successivi