Descripción general
GKE en AWS es un software de nube híbrida que extiende Google Kubernetes Engine (GKE) a Amazon Web Services (AWS).
GKE en AWS utiliza recursos habituales de AWS, 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 en AWS tienen nombres que empiezan por gke-
.
Arquitectura
Hay dos componentes de GKE en AWS.
- El servicio de administración , un entorno que puede instalar y actualizar sus clústeres de usuarios, utiliza la API de AWS para aprovisionar recursos.
- Clústeres de usuarios donde ejecuta sus cargas de trabajo.
Este tema describe el propósito y la forma de su servicio de administración de Anthos y los clústeres de usuarios.
Servicio de gestión
El servicio de administración proporciona y administra los componentes de su instalación de GKE en AWS. Por ejemplo, puede crear clústeres de usuarios mediante el servicio de administración. Este servicio utiliza la API de AWS para aprovisionar recursos.
Puede crear su servicio de administración en una VPC de AWS dedicada o en una VPC de AWS existente .
Necesita un servicio de administración en cada nube virtual privada (VPC) de AWS donde ejecute GKE en AWS. Este servicio se instala en una zona de disponibilidad de AWS. Solo necesita un servicio de administración por VPC; un servicio de administración puede administrar varios clústeres de usuarios.
El componente principal del servicio de administración es el Operador de Clúster. Este operador es un operador de Kubernetes que crea y administra sus clústeres y grupos de nodos de AWS. Almacena la configuración en una base de datos etcd con almacenamiento persistente en un volumen de AWS EBS.
Instalación y configuración de su servicio de administración
En esta sección se describen las herramientas que puede utilizar para administrar su servicio de administración.
La herramienta anthos-gke
Puede crear y administrar sus clústeres con la herramienta de línea de comandos anthos-gke
. Para obtener más información, consulte La herramienta anthos-gke .
Conectar
Con Connect , puede ver e iniciar sesión en su GKE en AWS y en los clústeres de GKE enGoogle Cloud desde la misma interfaz en Google Cloud Consola . Todos tus recursos se muestran en un único panel, lo que te permite ver tus cargas de trabajo en múltiples clústeres de Kubernetes.
Clústeres de usuarios
Un clúster de usuarios incluye dos componentes, ambos son recursos personalizados de Kubernetes alojados por el servicio de administración:
- Un plano de control.
- Uno o más AWSNodePools.
Clúster de AWS
Un AWSCluster se ejecuta en una sola VPC.
Al instalar un clúster de administración en una VPC dedicada , GKE en AWS crea réplicas del plano de control en cada zona que especifique en dedicatedVPC.availabilityZones
. Al instalar un clúster de administración en una infraestructura existente, GKE en AWS crea un AWSCluster con tres réplicas del plano de control en las mismas zonas de disponibilidad. Cada réplica pertenece a su propio grupo de AWS Auto Scaling , que reinicia las instancias al finalizar.
El servicio de administración ubica los planos de control en una subred privada tras un balanceador de carga de red (NLB) de AWS. El servicio de administración interactúa con el plano de control mediante NLB.
Para crear planos de control en múltiples zonas de disponibilidad de AWS, consulte 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 configuran en una topología apilada de alta disponibilidad .
Un plano de control administra uno o más AWSNodePools.
Grupo de nodos de AWS
Los AWSNodePools funcionan como los grupos de nodos de GKE en Google Cloud Un grupo de nodos es un grupo de nodos dentro de un clúster que comparten la misma configuración. Los grupos de nodos utilizan el recurso AWSNodePool y pueden contener uno o más nodos. Cada grupo de nodos pertenece a su propio grupo de AWS Auto Scaling, que reinicia las instancias cuando se cierran.
Solución de problemas
Puedes solucionar problemas de tu instalación de GKE en AWS consultando los eventos de Kubernetes de tu AWSCluster y AWSNodePools. Para más información, consulta la guía de solución de problemas .
¿Qué sigue?
- Instalar un servicio de administración en una VPC dedicada con un host bastión.
- Integración de la infraestructura existente en una VPC existente.