Arquitectura de GKE en AWS

Información general

GKE on AWS es un software de nube híbrida que amplía Google Kubernetes Engine (GKE) a Amazon Web Services (AWS).

GKE en AWS usa recursos de AWS habituales, como Elastic Compute Cloud (EC2), Elastic Block Storage (EBS) y Elastic Load Balancer (ELB). La mayoría de los recursos de AWS que crea GKE on AWS tienen nombres que empiezan por gke-.

Arquitectura

GKE on AWS tiene dos componentes.

  1. El servicio de gestión, un entorno que puede instalar y actualizar tus clústeres de usuario, usa la API de AWS para aprovisionar recursos.
  2. Clústeres de usuarios, donde ejecutas tus cargas de trabajo.

En este tema se describe el objetivo y la forma de tu servicio de gestión de Anthos y de tus clústeres de usuario.

Arquitectura de una instalación de GKE en AWS, que muestra el servicio de gestión y los AWSClusters que contienen un plano de control y AWSNodePools

Servicio de gestión

El servicio de gestión proporciona y gestiona los componentes de tu instalación de GKE en AWS. Por ejemplo, puedes crear clústeres de usuarios con el servicio de gestión. El servicio de gestión usa la API de AWS para aprovisionar recursos.

Puedes crear tu servicio de gestión en una VPC de AWS específica o en una VPC de AWS que ya tengas.

Necesitas un servicio de gestión en cada nube privada virtual (VPC) de AWS en la que ejecutes GKE en AWS. El servicio de gestión se instala en una zona de disponibilidad de AWS. Solo necesitas un servicio de gestión por VPC. Un servicio de gestión puede gestionar varios clústeres de usuario.

El componente principal del servicio de gestión es el operador de clústeres. Cluster Operator es un operador de Kubernetes que crea y gestiona tus objetos AWSCluster y AWSNodePool. El operador de clúster almacena la configuración en una base de datos etcd con el almacenamiento persistente en un volumen de EBS de AWS.

Instalar y configurar el servicio de gestión

En esta sección se describen las herramientas que puedes usar para gestionar tu servicio de gestión.

La herramienta anthos-gke

Puedes crear y gestionar tus clústeres con la herramienta de línea de comandos anthos-gke. Para obtener más información, consulta la herramienta anthos-gke.

Conectar

Con Connect, puedes ver tus clústeres de GKE en AWS y GKE e iniciar sesión en ellos desde la misma interfaz de la Google Cloud consola deGoogle Cloud . Todos tus recursos se muestran en un solo panel de control, por lo que puedes ver tus cargas de trabajo en varios clústeres de Kubernetes.

Clústeres de usuarios

Un clúster de usuario incluye dos componentes, ambos recursos personalizados de Kubernetes alojados en el servicio de gestión:

  1. Un plano de control.
  2. Uno o varios AWSNodePools.

AWSCluster

Un AWSCluster se ejecuta en una sola VPC.

Cuando instalas un clúster de gestión en una VPC dedicada, GKE en AWS crea réplicas del plano de control en cada zona que especifiques en dedicatedVPC.availabilityZones. Cuando instalas un clúster de gestión en una infraestructura ya disponible, GKE en AWS crea un objeto AWSCluster con tres réplicas del plano de control en las mismas zonas de disponibilidad. Cada réplica pertenece a su propio grupo de escalado automático de AWS que reinicia las instancias cuando se terminan.

El servicio de gestión coloca los planos de control en una subred privada detrás de un balanceador de carga de red (NLB) de AWS. El servicio de gestión interactúa con el plano de control mediante NLB.

Para crear planos de control en varias zonas de disponibilidad de AWS, consulta Clústeres de usuarios de alta disponibilidad.

Cada plano de control almacena la configuración en una base de datos etcd local. Estas bases de datos se replican y se configuran en una topología de alta disponibilidad apilada.

Un plano de control gestiona uno o varios AWSNodePools.

AWSNodePool

Los AWSNodePools funcionan como los grupos de nodos de Google Cloud GKE. Un grupo de nodos es un conjunto de nodos de un clúster que tienen la misma configuración. Los grupos de nodos usan el recurso AWSNodePool y pueden contener uno o más nodos. Cada grupo de nodos pertenece a su propio grupo de escalado automático de AWS, que reinicia las instancias cuando se terminan.

Solución de problemas

Para solucionar problemas de tu instalación de GKE en AWS, consulta los eventos de Kubernetes de tus objetos AWSCluster y AWSNodePool. Para obtener más información, consulta la guía Solución de problemas.

Siguientes pasos