Grupos de seguridad de GKE en AWS

En este tema se explican los grupos de seguridad de AWS (SG) que necesitas para GKE on AWS.

Si instalas un servicio de gestión o usas una VPC de AWS que ya tengas, anthos-gke crea grupos de seguridad por ti. Puedes configurar tus CRDs AWSCluster y AWSNodePool con una lista de IDs de grupos de seguridad adicionales.

En el siguiente diagrama se muestra cómo usa GKE on AWS los grupos de seguridad para conectarse a Google Cloud y a los servicios de AWS.

Diagrama de puertos y conexiones de los componentes de GKE en AWS a Google Cloud y los servicios de AWS.

Grupo de seguridad del servicio de gestión

El grupo de seguridad del servicio de gestión permite acceder a la API del servicio de gestión mediante HTTPS. Si tienes un host de acceso configurado, se permite el tráfico entrante desde el grupo de seguridad del host de acceso.

Si creas un entorno de GKE en AWS en una VPC de AWS, debes tener un grupo de seguridad que permita las siguientes conexiones.

Tipo Protocolo Port (Puerto) Dirección Descripción
Entrante TCP 443 CIDR de VPC Permite HTTPS desde la VPC de AWS.
Entrante TCP 22 Bastion host SG Permite la creación de túneles SSH desde la pasarela (solo se incluye en la VPC dedicada).
Saliente TCP 80 0.0.0.0/0 Permitir HTTP saliente.
Saliente TCP 443 0.0.0.0/0 Permitir HTTPS saliente.

Acceso a dominios de salida

El servicio de gestión requiere acceso saliente a los siguientes dominios.

  • gkeconnect.googleapis.com
  • gkehub.googleapis.com
  • oauth2.googleapis.com
  • storage.googleapis.com
  • www.googleapis.com
  • gcr.io
  • k8s.gcr.io
  • EC2-REGION.ec2.archive.ubuntu.com

Sustituye EC2-REGION por la región de AWS EC2 en la que se ejecuta tu instalación de GKE en AWS. Por ejemplo, us-west-1.ec2.archive.ubuntu.com/.

Si usas Cloud Service Mesh con Prometheus y Kiali, permite el acceso saliente desde los siguientes dominios:

  • docker.io
  • quay.io

Grupo de seguridad de la pasarela de aplicaciones (opcional)

Utilizas las conexiones del grupo de seguridad del host bastion permitidas por su grupo para conectarte a tu servicio de gestión de GKE en AWS y a los clústeres de usuarios. Este grupo es opcional y solo se incluye si usas anthos-gke para crear una instalación de GKE en AWS en una VPC dedicada.

Tipo Protocolo Port (Puerto) Dirección Descripción
Entrante TCP 22 Bloque CIDR de bastionAllowedSSHCIDRBlocks en la configuración de AWSManagementService. Permitir SSH al host bastion.
Saliente TCP 22 0.0.0.0/0 Permitir SSH saliente.
Saliente TCP 80 0.0.0.0/0 Permitir HTTP saliente.
Saliente TCP 443 0.0.0.0/0 Permitir HTTPS saliente.

Grupo de seguridad del plano de control

El grupo de seguridad del plano de control permite las conexiones entre los nodos del plano de control y el servicio de gestión, así como entre los nodos del plano de control y los grupos de nodos.

El plano de control consta de tres instancias de EC2 detrás de un balanceador de carga de red (NLB) de AWS. Estas instancias aceptan conexiones de instancias de etcd en otros nodos, nodos de pool de nodos y el balanceador de carga de red. Para actualizar los componentes de GKE en AWS, se permite todo el tráfico HTTP/HTTPS saliente.

Especifica los IDs de los grupos de seguridad en la definición de AWSCluster.

Tipo Protocolo Port (Puerto) Dirección Descripción
Entrante TCP 2380 Esta SG Permite la replicación de etcd del plano de control.
Entrante TCP 2381 Esta SG Permite la replicación de eventos de etcd del plano de control.
Entrante TCP 443 SG de grupo de nodos Permite HTTPS desde los nodos del grupo de nodos.
Entrante TCP 443 Intervalo CIDR de VPC de AWS Permite HTTPS desde el balanceador de carga y el servicio de gestión.
Entrante TCP 11872 Intervalo CIDR de VPC de AWS Comprobación de estado HTTP del balanceador de carga.
Saliente TCP 22 SG de grupo de nodos Permitir la creación de túneles SSH en grupos de nodos (para clústeres con la versión 1.20 o inferior).
Entrante TCP 8132 SG de grupo de nodos Permite la conexión de Konnectivity desde los grupos de nodos (para clústeres con la versión 1.21 o posterior).
Saliente TCP 80 0.0.0.0/0 Permitir HTTP saliente.
Saliente TCP 443 0.0.0.0/0 Permitir HTTPS saliente.
Saliente TCP 2380 Esta SG Permite la replicación de etcd del plano de control.
Saliente TCP 2381 Esta SG Permite la replicación de eventos de etcd del plano de control.
Saliente TCP 10250 SG de grupo de nodos Permite las conexiones del plano de control a Kubelet.

Grupo de seguridad del grupo de nodos

El grupo de seguridad del pool de nodos permite las conexiones desde el plano de control y otros nodos. Especifica los IDs de los grupos de seguridad en tus definiciones de AWSNodePool.

Tipo Protocolo Port (Puerto) Dirección Descripción
Entrante TCP Todo Esta SG Permite la comunicación entre pods.
Entrante TCP 22 SG del plano de control Permite la creación de túneles SSH desde el plano de control (para clústeres con la versión 1.20 o inferior).
Saliente TCP 8132 SG del plano de control Permite las conexiones de Konnectivity al plano de control (para clústeres con la versión 1.21 o posterior).
Entrante TCP 443 SG del plano de control Permite las conexiones del plano de control a Kubelet.
Entrante TCP 10250 SG del plano de control Permite las conexiones del plano de control a Kubelet.
Saliente TCP Todo Esta SG Permite la comunicación entre pods.
Saliente TCP 80 0.0.0.0/0 Permitir HTTP saliente.
Saliente TCP 443 0.0.0.0/0 Permitir HTTPS saliente.