Redes de EKS
Descripción general
Las redes de Amazon EKS son un componente fundamental que administra la comunicación de los clústeres de Kubernetes. Este documento abarca los conceptos básicos de las redes de EKS, la configuración de VPC, el diseño de subnets y la configuración de security groups.
Arquitectura de redes de EKS
La arquitectura de redes de EKS consta de los siguientes componentes:
- VPC (Virtual Private Cloud): Entorno de red aislado donde se ejecuta el clúster de EKS
- Subnets: Unidades que dividen los rangos de direcciones IP dentro de la VPC
- Route Tables: Conjuntos de reglas que determinan las rutas del tráfico de red
- Internet Gateway: Componente que habilita la comunicación entre la VPC e Internet
- NAT Gateway: Componente que permite a los recursos en subnets privadas acceder a Internet
- Security Groups: Firewalls virtuales a nivel de instancia
- Network ACLs: Firewalls virtuales a nivel de subnet
- CNI (Container Network Interface): Plugin que administra las redes de contenedores
Flujo de redes de EKS
El tráfico de red fluye en un clúster de EKS de la siguiente manera:
- Comunicación de Pod a Pod: Comunicación entre Pods en el mismo nodo o en nodos diferentes
- Comunicación de Pod a Service: Comunicación entre Pods y Services dentro del clúster
- Comunicación interna a externa del clúster: Comunicación entre recursos internos y recursos externos del clúster
- Comunicación del Control Plane al nodo: Comunicación entre el control plane de EKS y los worker nodes
Relación entre los componentes de redes de EKS
Requisitos de VPC
Una VPC para un clúster de EKS debe cumplir los siguientes requisitos:
- Subnets: Debe tener subnets en al menos 2 availability zones
- Direcciones IP: Debe proporcionar una cantidad suficiente de direcciones IP
- Nombres de host DNS: Los nombres de host DNS y la resolución DNS deben estar habilitados
- Acceso a Internet: Los nodos deben poder acceder a Internet (a través de NAT Gateway o Internet Gateway)
Planificación del CIDR de VPC
Consideraciones al planificar bloques CIDR de VPC:
- Tamaño del clúster: Cantidad esperada de nodos y Pods
- Requisitos de direcciones IP: Cantidad de direcciones IP necesarias para cada nodo y Pod
- Expansión futura: Margen para futuras expansiones
- Integración con redes existentes: Evitar superposiciones con redes existentes
Tamaños comunes de bloques CIDR de VPC:
- Clústeres pequeños: /24 (256 direcciones IP)
- Clústeres medianos: /20 (4,096 direcciones IP)
- Clústeres grandes: /16 (65,536 direcciones IP)
Diseño de subnets
Prácticas recomendadas para el diseño de subnets de clústeres de EKS:
- Subnets públicas: Subnets conectadas directamente a Internet Gateway
- Uso: Load balancers públicos, NAT Gateways, bastion hosts
- Tamaño típico: /24 (256 direcciones IP)
- Subnets privadas: Subnets no conectadas directamente a Internet Gateway
- Uso: Worker nodes de EKS, load balancers internos
- Tamaño típico: /22 (1,024 direcciones IP)
- Distribución de Availability Zones: Distribuya las subnets entre varias availability zones
- Use al menos 2 availability zones
- Coloque subnets públicas y privadas en cada availability zone
Ejemplo de diseño de subnets:
| Tipo de subnet | Availability Zone | Bloque CIDR | Uso |
|---|---|---|---|
| Pública | us-west-2a | 10.0.0.0/24 | Load balancers, NAT Gateways |
| Pública | us-west-2b | 10.0.1.0/24 | Load balancers, NAT Gateways |
| Privada | us-west-2a | 10.0.2.0/22 | Worker nodes de EKS |
| Privada | us-west-2b | 10.0.6.0/22 | Worker nodes de EKS |
Etiquetas de subnet
EKS utiliza etiquetas específicas en las subnets para detectar recursos automáticamente:
- Etiquetas de subnet pública:
kubernetes.io/role/elb: Establezca el valor en1para usarlo con load balancers orientados a Internetkubernetes.io/cluster/<cluster-name>: Establezca el valor enshareduowned
- Etiquetas de subnet privada:
kubernetes.io/role/internal-elb: Establezca el valor en1para usarlo con load balancers internoskubernetes.io/cluster/<cluster-name>: Establezca el valor enshareduowned
Ejemplo:
aws ec2 create-tags \
--resources subnet-xxxxxxxxxxxxxxxxx \
--tags Key=kubernetes.io/cluster/my-cluster,Value=shared Key=kubernetes.io/role/elb,Value=1Configuración de Security Groups
Los clústeres de EKS tienen dos security groups principales:
- Security Group del clúster (Control Plane):
- Reglas de entrada:
- 443/TCP: Permitir tráfico desde el security group de los worker nodes
- Reglas de salida:
- 1025-65535/TCP: Permitir tráfico hacia el security group de los worker nodes
- Reglas de entrada:
- Security Group de nodos (Worker Nodes):
- Reglas de entrada:
- 443/TCP: Permitir tráfico desde el security group del clúster
- 1025-65535/TCP: Permitir tráfico desde el security group del clúster
- ALL: Permitir tráfico dentro del mismo security group
- Reglas de salida:
- ALL: Permitir tráfico hacia todos los destinos
- Reglas de entrada:
Conclusión
En este documento, aprendimos sobre los conceptos básicos de las redes de EKS y la configuración de VPC. En el siguiente documento, abordaremos temas de redes más avanzados, como Services, load balancing y network policies.
Cuestionario
Para comprobar lo que aprendió en este capítulo, intente el Cuestionario de redes de EKS - Parte 1.







