En este tema se explica cómo gestiona GKE en AWS las reglas de los grupos de seguridad de AWS del clúster y cómo modificar las reglas de cortafuegos de los grupos de nodos y las réplicas del plano de control.
Grupos de seguridad y DNS alojado
Si utilizas un servidor DNS alojado en lugar del DNS proporcionado por AWS, los grupos de seguridad de tu plano de control y de tu grupo de nodos deben permitir el tráfico saliente en los puertos TCP y UDP 53.
Grupos de seguridad del plano de control
Los grupos de seguridad del plano de control definen las reglas de cortafuegos para el tráfico TCP entrante y saliente de cada réplica del plano de control.
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. Las instancias del plano de control también realizan conexiones HTTPS salientes a servicios de Google y AWS.
GKE en AWS crea y adjunta un grupo de seguridad del plano de control gestionado a todas las instancias del plano de control. No debes modificar las reglas de este grupo. Si necesitas añadir más reglas de grupo de seguridad, puedes especificar IDs de grupos de seguridad adicionales para adjuntarlos al plano de control cuando crees un clúster.
Reglas predeterminadas del grupo de seguridad del plano de control
Estas son las reglas predeterminadas que GKE on AWS adjunta al plano de control. Estas reglas no coincidirán exactamente con sus grupos de seguridad; cada fila de la tabla puede ampliarse a varias reglas de grupos de seguridad de AWS.
Tipo | Protocolo | Port (Puerto) | Intervalos de direcciones o SG | Descripción |
---|---|---|---|---|
Entrante | TCP (versión del clúster < 1.26) | 443 | Intervalo CIDR principal de la VPC | Permitir HTTPS desde los nodos del grupo de nodos |
Entrante | TCP (versión del clúster >= 1.26) | 443 | Intervalo CIDR de la subred del grupo de nodos | Permitir HTTPS desde los nodos del grupo de nodos (una regla por subred usada por los grupos de nodos) |
Entrante | TCP | 2380 | SG del plano de control | Permitir la replicación de etcd del plano de control |
Entrante | TCP | 2381 | SG del plano de control | Permitir la replicación de eventos de etcd del plano de control |
Entrante | TCP (versión del clúster < 1.26) | 8132 | Intervalo CIDR principal de la VPC | Permitir conexiones de Konnectivity desde grupos de nodos |
Entrante | TCP (versión del clúster >= 1.26) | 8132 | Intervalo CIDR de la subred del grupo de nodos | Permitir conexiones de Konnectivity desde los nodos del grupo de nodos (una regla por subred usada por los grupos de nodos) |
Entrante | TCP | 11872 | Intervalos CIDR del plano de control | Comprobación de estado HTTP para el balanceador de carga |
Saliente | TCP | 443 | 0.0.0.0/0 | Permitir HTTPS saliente |
Saliente | TCP | 2380 | SG del plano de control | Permitir la replicación de etcd del plano de control |
Saliente | TCP | 2381 | SG del plano de control | Permitir la replicación de eventos de etcd del plano de control |
Grupos de seguridad de grupos de nodos
Los grupos de seguridad de los conjuntos de nodos definen las reglas de cortafuegos para el tráfico TCP entrante y saliente de las VMs de los conjuntos de nodos.
GKE en AWS crea y adjunta un grupo de seguridad de grupo de nodos gestionado a todas las instancias del grupo de nodos. No debes modificar las reglas de este grupo. Si necesitas añadir más reglas de grupo de seguridad, puedes especificar IDs de grupo de seguridad adicionales para asociarlos a las instancias cuando crees un pool de nodos.
De forma predeterminada, las VMs de los grupos de nodos no tienen ningún puerto abierto. Para permitir el tráfico entrante, añade un grupo de seguridad de nodos al crear el grupo de nodos y gestiona las reglas de entrada y salida que quieras para el grupo de nodos a través de ese grupo de seguridad.
Reglas de grupo de seguridad de grupos de nodos predeterminados
Estas son las reglas predeterminadas que GKE on AWS asigna a los grupos de nodos. Estas reglas no coincidirán exactamente con sus grupos de seguridad, ya que cada fila de la tabla puede ampliarse a varias reglas de grupos de seguridad de AWS.
Tipo | Protocolo | Port (Puerto) | Intervalo de direcciones o SG | Descripción |
---|---|---|---|---|
Entrante | TCP | Todo | SG de grupo de nodos | Permitir la comunicación entre pods |
Saliente | TCP | Todo | SG de grupo de nodos | Permitir la comunicación entre pods |
Saliente | TCP | 443 | 0.0.0.0/0 | Permitir HTTPS saliente |
Saliente | TCP | 8132 | SG del plano de control | Permitir conexiones de Konnectivity al plano de control |
Saliente | TCP | 8132 | Intervalos CIDR del plano de control | Permitir conexiones de Konnectivity al plano de control |
Grupos de nodos en bloques CIDR secundarios de VPC
GKE en AWS versión 1.26 y posteriores crea y gestiona automáticamente las reglas de grupo de seguridad necesarias para admitir los grupos de nodos que usan subredes en bloques CIDR de VPC secundarios. Si usas una de estas versiones, no es necesario que crees grupos de seguridad personalizados ni que los actualices manualmente.
Sin embargo, al crear grupos de seguridad del plano de control gestionado, las versiones anteriores de GKE en AWS no crean reglas que admitan grupos de nodos con subredes en un bloque CIDR de VPC secundario.
Para evitar esta limitación, crea un grupo de seguridad personalizado para tu plano de control. El ID del grupo de seguridad se indica al crear un clúster con la marca --security-group-ids
. También puedes actualizar los grupos de seguridad de tu clúster.
Crea el grupo de seguridad con las siguientes reglas:
Tipo | Protocolo | Port (Puerto) | Intervalos de direcciones o SG | Descripción |
---|---|---|---|---|
Entrante | TCP | 443 | Intervalos de grupos de nodos (en bloques CIDR secundarios de VPC) | Permitir HTTPS desde los nodos del grupo de nodos |
Entrante | TCP | 8132 | Intervalos de grupos de nodos (en bloques CIDR secundarios de VPC) | Permitir conexiones de Konnectivity desde grupos de nodos |