Ayude a mejorar esta página
Para contribuir a esta guía del usuario, elija el enlace Edit this page on GitHub que se encuentra en el panel derecho de cada página.
Cómo preparar las redes para los nodos híbridos
En este tema se ofrece información general sobre la configuración de red que se debe establecer antes de crear el clúster de Amazon EKS y conectar los nodos híbridos. En esta guía se presupone que ha cumplido los requisitos previos para la conectividad de red híbrida mediante AWS Site-to-Site VPN, AWS Direct Connect o una solución de VPN propia.

Configuración de redes en las instalaciones
Requisitos mínimos de red
Para disfrutar de una experiencia óptima, AWS recomienda una conectividad de red fiable de al menos 100 Mbps y un máximo de 200 ms de latencia de ida y vuelta para la conexión de los nodos híbridos a la región de AWS. Los requisitos de ancho de banda y latencia pueden variar en función de la cantidad de nodos híbridos y de las características de la carga de trabajo, como el tamaño de la imagen de la aplicación, la elasticidad de la aplicación, las configuraciones de supervisión y registro, y las dependencias de la aplicación para acceder a datos almacenados en otros servicios de AWS.
CIDR de nodos y pods en las instalaciones
Identifique los CIDR de nodos y pods que utilizará para los nodos híbridos y las cargas de trabajo que se ejecutan en estos. El CIDR de nodos se asigna desde la red en las instalaciones y el CIDR de pods se asigna desde la interfaz de red del contenedor (CNI) si se utiliza una red superpuesta para la CNI. Al crear el clúster de Amazon EKS, debe transmitir los CIDR de nodos en las instalaciones y, opcionalmente, los CIDR de pods como datos de entrada con los campos RemoteNodeNetwork
y RemotePodNetwork
.
Los bloques de CIDR del pod y del nodo en las instalaciones deben cumplir los siguientes requisitos:
-
Estar dentro de uno de los siguientes rangos
IPv4
RFC-1918:10.0.0.0/8
,172.16.0.0/12
o192.168.0.0/16
. -
Que no se solapen entre sí, el CIDR de la VPC del clúster de Amazon EKS o el CIDR
IPv4
del servicio de Kubernetes.
Si el CNI realiza traducción de direcciones de red (NAT) para el tráfico de pods al salir de los hosts en las instalaciones, no es necesario anunciar el CIDR de pods a la red en las instalaciones ni configurar el clúster de Amazon EKS con la red de pods remotos para que los nodos híbridos estén listos para las cargas de trabajo." Si el CNI no utiliza NAT para el tráfico de pods a medida que sale de los hosts en las instalaciones, debe anunciar el CIDR de pods con la red en las instalaciones y debe configurar el clúster de Amazon EKS con la red de pods remotos de modo que los nodos híbridos estén listos para las cargas de trabajo. Si ejecuta webhooks en los nodos híbridos, debe anunciar el CIDR de pods en la red en las instalaciones y configurar el clúster de Amazon EKS con la red de pods remotos de modo que el plano de control de Amazon EKS se pueda conectar directamente a los webhooks que se ejecutan en los nodos híbridos.
Se requiere acceso durante la instalación y actualización de nodos híbridos
Debe tener acceso a los siguientes dominios durante el proceso de instalación en el que instala las dependencias de los nodos híbridos en los hosts. Este proceso se puede realizar una vez al crear las imágenes del sistema operativo o en cada host en tiempo de ejecución. Esto incluye la instalación inicial y cuando se actualiza la versión de Kubernetes de los nodos híbridos.
Componente | URL | Protocolo | Puerto |
---|---|---|---|
Artefactos de nodos de EKS (S3) |
https://hybrid-assets.eks.amazonaws.com |
HTTPS |
443 |
https://eks. |
HTTPS |
443 |
|
Puntos de conexión de ECR de EKS |
Consulte Visualización de los registros de imágenes de contenedores de Amazon para los complementos de Amazon EKS para conocer los puntos de conexión regionales. |
HTTPS |
443 |
Punto de conexión binario SSM 1 |
https://amazon-ssm- |
HTTPS |
443 |
https://ssm. |
HTTPS |
443 |
|
Punto de conexión binario de IAM Anywhere 2 |
https://rolesanywhere.amazonaws.com |
HTTPS |
443 |
https://rolesanywhere. |
HTTPS |
443 |
nota
1 El acceso a los puntos de conexión de AWS SSM solo es necesario si utiliza activaciones híbridas de AWS SSM para el proveedor de credenciales de IAM en las instalaciones.
2 El acceso a los puntos de conexión de AWS IAM solo es necesario si utiliza AWS IAM Roles Anywhere como proveedor de credenciales de IAM en las instalaciones.
Acceso necesario para las operaciones de clúster en curso
El siguiente acceso a la red para el firewall en las instalaciones es necesario para las operaciones de clúster en curso.
importante
Tipo | Protocolo | Dirección | Puerto | Origen | Destino | Uso |
---|---|---|---|---|---|---|
HTTPS |
TCP |
Salida |
443 |
CIDR de nodos remotos |
IP de clúster de EKS 1 |
Servidor de API de kubelet a Kubernetes |
HTTPS |
TCP |
Salida |
443 |
CIDR de pods remotos |
IP de clúster de EKS 1 |
Pod a servidor de API de Kubernetes |
HTTPS |
TCP |
Salida |
443 |
CIDR de nodos remotos |
Actualización de credenciales de activaciones híbridas de SSM y señales de SSM cada 5 minutos |
|
HTTPS |
TCP |
Salida |
443 |
CIDR de nodos remotos |
Actualización de credenciales de IAM Roles Anywhere |
|
HTTPS |
TCP |
Salida |
443 |
CIDR de pods remotos |
Pod a punto de conexión de STS. Obligatorio solo para IRSA |
|
HTTPS |
TCP |
Salida |
443 |
CIDR de nodos remotos |
Nodo a punto de conexión de autenticación de Amazon EKS. Obligatorio solo para Pod Identity de Amazon EKS |
|
HTTPS |
TCP |
Entrada |
10250 |
IP de clúster de EKS 1 |
CIDR de nodos remotos |
Servidor de API de kubelet a Kubernetes |
HTTPS |
TCP |
Entrada |
Puertos de webhook |
IP de clúster de EKS 1 |
CIDR de pods remotos |
Servidor de la API de Kubernetes a webhooks |
HTTPS |
TCP,UDP |
Entrada,Salida |
53 |
CIDR de pods remotos |
CIDR de pods remotos |
Pod a CoreDNS. Si ejecuta al menos una réplica de CoreDNS en la nube, debe permitir el tráfico DNS a la VPC donde se ejecuta CoreDNS. |
Definido por el usuario |
Definido por el usuario |
Entrada,Salida |
Puertos de la aplicación |
CIDR de pods remotos |
CIDR de pods remotos |
Pod a pod |
nota
1 Las direcciones IP del clúster Amazon EKS. Consulte la siguiente sección sobre las interfaces de red elásticas de Amazon EKS.
Interfaces de red de Amazon EKS
Amazon EKS asocia interfaces de red a las subredes de la VPC que se transmiten durante la creación del clúster para permitir la comunicación entre el plano de control de Amazon EKS y la VPC. Las interfaces de red que Amazon EKS crea se pueden encontrar tras la creación del clúster en la consola de Amazon EC2 o con la AWS CLI. Las interfaces de red originales se eliminan y se crean nuevas interfaces de red cuando se aplican cambios en el clúster de Amazon EKS, como actualizaciones de la versión de Kubernetes. Para restringir el rango de IP de las interfaces de red de Amazon EKS, es posible utilizar tamaños de subred limitados para las subredes que se transmiten durante la creación del clúster, lo que facilita la configuración del firewall en las instalaciones para permitir la conectividad entrante/saliente a este conjunto de IP conocidas y limitadas. Para controlar en qué subredes se crean las interfaces de red, puede limitar la cantidad de subredes que especifica al crear un clúster o puede actualizar las subredes después de crear el clúster.
Las interfaces de red aprovisionadas por Amazon EKS tienen una descripción del formato Amazon EKS
. Consulte el ejemplo que aparece a continuación para ver un comando de la AWS CLI que se puede utilizar para buscar las direcciones IP de las interfaces de red que Amazon EKS aprovisiona. Sustituya your-cluster-name
VPC_ID
por el ID de la VPC que se transmite durante la creación del clúster.
aws ec2 describe-network-interfaces \ --query 'NetworkInterfaces[?(VpcId ==
VPC_ID
&& contains(Description,Amazon EKS
))].PrivateIpAddress'
AWS VPC y configuración de subredes
Los requisitos de VPC y subredes existentes para Amazon EKS se aplican a los clústeres con nodos híbridos. Además, el CIDR de la VPC no se puede solapar con los CIDR de los nodos y pods en las instalaciones. Debe configurar rutas en la tabla de enrutamiento de la VPC para el CIDR de nodos en las instalaciones y, opcionalmente, el CIDR de pods. Estas rutas se deben configurar para dirigir el tráfico a la puerta de enlace que se utiliza para la conectividad de la red híbrida, que comúnmente es una puerta de enlace privada virtual (VGW) o una puerta de enlace de tránsito (TGW). Si está utiliza TGW o VGW para conectar la VPC con el entorno en las instalaciones, debe crear una conexión TGW o VGW para la VPC. La VPC debe tener un nombre de host DNS y admitir la resolución DNS.
Para los siguientes pasos, se utiliza la AWS CLI. También puede crear estos recursos en la AWS Management Console o con otras interfaces, como AWS CloudFormation, AWS CDK o Terraform.
Paso 1: Creación de la VPC
-
Ejecute el siguiente comando para crear una VPC. Reemplace
IPv4
con un rango CIDR10.0.0.0/16
RFC-1918 (privado) o no RFC-1918 (público) (por ejemplo,VPC_CIDR
). Nota: La resolución de DNS, que es un requisito de EKS, está habilitada para la VPC de forma predeterminada.aws ec2 create-vpc --cidr-block
VPC_CIDR
-
Habilite los nombres de host de DNS para la VPC. Nota: La resolución de DNS está habilitada para la VPC de forma predeterminada. Sustituya
VPC_ID
por el ID de la VPC que creó en el paso anterior.aws ec2 modify-vpc-attribute --vpc-id
VPC_ID
--enable-dns-hostnames
Paso 2: Creación de subredes
Cree al menos 2 subredes. Amazon EKS usa estas subredes para las interfaces de red del clúster. Para obtener más información, consulte Requisitos y consideraciones de las subredes.
-
Puede buscar las zonas de disponibilidad de una región de AWS con el siguiente comando. Reemplace
us-west-2
por la región.aws ec2 describe-availability-zones \ --query 'AvailabilityZones[?(RegionName ==
us-west-2
)].ZoneName' -
Cree una subred. Sustituya
VPC_ID
por el ID de la VPC. SustituyaSUBNET_CIDR
por el bloque de CIDR de la subred (por ejemplo, 10.0.1.0/24). SustituyaAZ
por la zona de disponibilidad en la que se creará la subred (por ejemplo, us-west-2a). Las subredes que cree deben estar en al menos dos zonas de disponibilidad diferentes.aws ec2 create-subnet \ --vpc-id
VPC_ID
\ --cidr-blockSUBNET_CIDR
\ --availability-zoneAZ
(Opcional) Paso 3: adjunción de una VPC con la puerta de enlace de tránsito (TGW) de Amazon VPC o una puerta de enlace privada virtual (VGW) de AWS Direct Connect
Si utiliza una TGW o VGW, conecte la VPC a la TGW o VGW. Para obtener más información, consulte Amazon VPC attachments in Amazon VPC Transit Gateways o AWS Direct Connect virtual private gateway associations.
Transit Gateway
Ejecute el siguiente comando para conectar una puerta de enlace de tránsito. Sustituya VPC_ID
por el ID de la VPC. Sustituya SUBNET_ID1
y SUBNET_ID2
por el ID de las subredes que creó en el paso anterior. Sustituya TGW_ID
por el ID de la TGW.
aws ec2 create-transit-gateway-vpc-attachment \ --vpc-id
VPC_ID
\ --subnet-idsSUBNET_ID1 SUBNET_ID2
\ --transit-gateway-idTGW_ID
Puerta de enlace privada virtual
Ejecute el siguiente comando para conectar una puerta de enlace de tránsito. Sustituya VPN_ID
por el ID de la VGW. Sustituya VPC_ID
por el ID de la VPC.
aws ec2 attach-vpn-gateway \ --vpn-gateway-id
VPN_ID
\ --vpc-idVPC_ID
(Opcional) Paso 4: Creación de una tabla de enrutamiento
Puede modificar la tabla de enrutamiento principal de la VPC o puede crear una tabla de enrutamiento personalizada. En los siguientes pasos, se crea una tabla de enrutamiento personalizada con las rutas a los CIDR de nodos y pods en las instalaciones. Para obtener más información, consulte Tablas de enrutamiento de subredes. Sustituya VPC_ID
por el ID de la VPC.
aws ec2 create-route-table --vpc-id
VPC_ID
Paso 5: Creación de rutas para nodos y pods en las instalaciones
Cree rutas en la tabla de enrutamiento para cada uno de los nodos remotos en las instalaciones. Puede modificar la tabla de enrutamiento principal de la VPC o utilizar la tabla de enrutamiento personalizada que creó en el paso anterior.
En los ejemplos que aparecen a continuación se muestra cómo crear rutas para los CIDR de nodos y pods en las instalaciones. En los ejemplos, se utiliza una puerta de enlace de tránsito (TGW) para conectar la VPC con el entorno en las instalaciones. Si tiene múltiples CIDR de nodos y pods en las instalaciones, repita los pasos para cada CIDR.
-
Si utiliza una puerta de enlace de Internet o una puerta de enlace privada virtual (VGW), sustituya
--transit-gateway-id
por--gateway-id
. -
Sustituya
RT_ID
por el ID de la tabla de enrutamiento que creó en el paso anterior. -
Sustituya
REMOTE_NODE_CIDR
por el rango de CIDR que utilizará para los nodos híbridos. -
Sustituya
REMOTE_POD_CIDR
por el rango de CIDR que utilizará para los pods que se ejecutan en nodos híbridos. El rango de CIDR del pod corresponde a la configuración de la interfaz de red de contenedores (CNI), que habitualmente utiliza una red superpuesta en las instalaciones. Para obtener más información, consulte Cómo configurar una CNI para nodos híbridos. -
Sustituya
TGW_ID
por el ID de la TGW.
Red de nodos remotos
aws ec2 create-route \ --route-table-id
RT_ID
\ --destination-cidr-blockREMOTE_NODE_CIDR
\ --transit-gateway-idTGW_ID
Red de pods remotos
aws ec2 create-route \ --route-table-id
RT_ID
\ --destination-cidr-blockREMOTE_POD_CIDR
\ --transit-gateway-idTGW_ID
(Opcional) Paso 6: Asociación de las subredes a la tabla de enrutamiento
Si creó una tabla de enrutamiento personalizada en el paso anterior, asocie cada una de las subredes que creó en el paso anterior a la tabla de enrutamiento personalizada. Si va a modificar la tabla de enrutamiento principal de la VPC, las subredes se asociarán automáticamente a la tabla de enrutamiento principal de la VPC y podrá omitir este paso.
Ejecute el siguiente comando para cada una de las subredes que creó en los pasos anteriores. Sustituya RT_ID
por la tabla de enrutamiento que creó en el paso anterior. Sustituya SUBNET_ID
por el ID de una subred.
aws ec2 associate-route-table --route-table-id
RT_ID
--subnet-idSUBNET_ID
Configuración del grupo de seguridad del clúster
El siguiente acceso para el grupo de seguridad del clúster de Amazon EKS se necesita para las operaciones de clúster en curso.
Tipo | Protocolo | Dirección | Puerto | Origen | Destino | Uso |
---|---|---|---|---|---|---|
HTTPS |
TCP |
Entrada |
443 |
CIDR de nodos remotos |
N/A |
Servidor de la API de Kubelet a Kubernetes |
HTTPS |
TCP |
Entrada |
443 |
CIDR de pods remotos |
N/A |
Pods que requieren acceso al servidor de la API de K8s cuando el CNI no utiliza NAT para el tráfico de pods. |
HTTPS |
TCP |
Salida |
10250 |
N/A |
CIDR de nodos remotos |
Servidor de la API de Kubernetes a Kubelet |
HTTPS |
TCP |
Salida |
Puertos de webhook |
N/A |
CIDR de pods remotos |
Servidor de la API de Kubernetes a webhook (si se ejecutan webhooks en nodos híbridos) |
Para crear un grupo de seguridad con las reglas de acceso entrante, ejecute los siguientes comandos. Este grupo de seguridad se debe transmitir al crear el clúster de Amazon EKS. De forma predeterminada, el siguiente comando crea un grupo de seguridad que permite todos los accesos salientes. Puede restringir el acceso saliente para incluir únicamente las reglas indicadas anteriormente. Si considera limitar las reglas de salida, recomendamos que pruebe exhaustivamente la conectividad de todas las aplicaciones y pods antes de aplicar las reglas modificadas a un clúster en fase de producción.
-
En el primer comando, sustituya SG_NAME por el nombre del grupo de seguridad
-
En el primer comando, sustituya VPC_ID por el ID de la VPC que creó en el paso anterior
-
En el segundo comando, sustituya SG_ID por el ID del grupo de seguridad que creó en el primer comando
-
En el segundo comando, sustituya REMOTE_NODE_CIDR y REMOTE_POD_CIDR por los valores de los nodos híbridos y la red en las instalaciones.
aws ec2 create-security-group \ --group-name
SG_NAME
\ --description "security group for hybrid nodes" \ --vpc-idVPC_ID
aws ec2 authorize-security-group-ingress \ --group-id
SG_ID
\ --ip-permissions '[{"IpProtocol": "tcp", "FromPort": 443, "ToPort": 443, "IpRanges": [{"CidrIp": "REMOTE_NODE_CIDR"}, {"CidrIp": "REMOTE_POD_CIDR"}]}]'