¿Cómo puedo solucionar los errores de grupos de nodos administrados en un clúster de Amazon EKS?
Tengo problemas con mi grupo de nodos administrado en mi clúster de Amazon Elastic Kubernetes Service (Amazon EKS).
Breve descripción
A continuación se indican son las causas comunes de los errores de grupos de nodos administrados en un clúster de Amazon EKS:
- Opciones de DHCP incorrectas: Recibe un error al registrar un nodo en el servidor de la API.
- Faltan los permisos de clave de AWS Key Management Service (AWS KMS): Recibe un error al lanzar una instancia de Amazon Elastic Compute Cloud (Amazon EC2) en un grupo de escalamiento automático con un volumen de Amazon Elastic Block Store (Amazon EBS) cifrado mediante una clave de AWS KMS.
- Plantilla de lanzamiento incorrecta: La plantilla de lanzamiento de EC2 no coincide con la versión que creó Amazon EKS, por lo que su grupo de nodos administrado se encuentra en estado degradado.
Resolución
Compruebe la opciones de DHCP
Si utiliza una opción de DHCP incorrecta en su DNS personalizado, es posible que reciba el siguiente error:
«Node "ip-x-x-x-x.eu-region.compute.internal" is invalid: metadata.labels: Invalid value»
Compruebe que su nombre de host no contenga más de 63 caracteres. Para revisar las opciones de DHCP, consulte Conjuntos de opciones de DHCP en Amazon VPC. Especifique el nombre de host para que coincida con la región de AWS. En el caso de un servidor AmazonProvidedDNS en us-east-1, especifique ec2.internal. En el caso de un servidor AmazonProvidedDNS en otras regiones, especifique region.compute.internal.
Ejemplo de una opción de DHCP configurada en us-east-1:
domain-name: ec2.internal
domain-name-servers: AmazonProvidedDNS
Ejemplo de una opción de DHCP configurada en otras regiones:
domain-name: region.compute.internal
domain-name-servers: AmazonProvidedDNS
Ejemplo de un conjunto de opciones de DHCP configurado a partir de un DNS personalizado:
domain-name: custom DNS name
domain-name-servers: domain name server
Nota: Sustituya region por su región, custom DNS name por su nombre de DNS y domain name server por su servidor de nombre de dominio.
Para obtener más información, consulte Conceptos de conjuntos de opciones de DHCP. Si el conjunto de opciones de DHCP está asociado a una VPC que tiene instancias con diversos sistemas operativos, la práctica recomendada consiste en especificar un solo nombre de dominio.
Configure una política de claves para el cifrado de volúmenes de EBS
Si faltan permisos en el rol de servicio de grupo de escalamiento automático, es posible que aparezca el siguiente error:
«AccessDeniedException: User: arn:aws:sts::xxxxxxxxxxxx:assumed-role/AWSServiceRoleForAutoScaling/AutoScaling is not authorized to perform: kms:GenerateDataKeyWithoutPlaintext on resource: ARN of KMS key»
Si un nodo administrado utiliza un volumen de Amazon EBS cifrado con clave de AWS KMS, el rol de servicio del grupo de escalamiento automático no tiene acceso a él.
El rol de servicio del grupo de escalamiento automático debe tener los siguientes permisos para trabajar con volúmenes de EBS cifrados:
- kms:Encrypt
- kms:Decrypt
- kms:ReEncrypt*
- kms:GenerateDataKey*
- kms:DescribeKey
- kms:CreateGrant
Para configurar la política de claves de KMS correcta, consulte Required AWS KMS key policy for use with encrypted volumes. Modifique las políticas de claves para permitir que más roles de IAM funcionen con volúmenes de EBS cifrados. Para obtener más información, consulte Allows key users to use the KMS key. Para obtener más información sobre la administración de claves de acceso de KMS, consulte AWS Key Management Service.
Actualice la versión de la plantilla de lanzamiento
Nota: Antes de actualizar la plantilla de lanzamiento de EC2 desde el grupo de nodos administrado, cree una versión nueva. Para obtener más información, consulte Creación de una plantilla de inicialización a partir de parámetros.
Si actualiza manualmente la plantilla de lanzamiento directamente desde el grupo de escalamiento automático, es posible que reciba el siguiente error:
«Ec2LaunchTemplateVersionMismatch»
Para actualizar la plantilla de lanzamiento de EC2 desde el grupo de nodos administrado, siga estos pasos:
- Abra la consola EKS.
- Seleccione el clúster que contiene el grupo de nodos que desee actualizar.
- Seleccione la pestaña Configuración y, a continuación, Permisos.
- En la página de grupos de nodos, en Plantillas de lanzamiento, seleccione Cambiar versión.
- Seleccione la versión que se aplicará al grupo de nodos. Asegúrese de que la estrategia de actualización esté configurada en Actualización continua.
- Seleccione Actualizar.
Nota: Se recomienda actualizar el grupo de nodos con la nueva versión de la plantilla de lanzamiento de EC2.
Si no ha utilizado una plantilla de lanzamiento personalizada y recibe el error Ec2LaunchTemplateVersionMismatch, compruebe la versión de la plantilla de lanzamiento. Es posible que los nodos de trabajo y el grupo de nodos de EKS no usen la misma versión de la plantilla de lanzamiento. Para resolver este problema, vaya a la consola de escalamiento automático para volver a la versión que creó EKS. Para obtener más información, consulte Códigos de error del grupo de nodos administrado. Para ver otras resoluciones de errores de nodos en grupos de nodos administrados, consulte ¿Cómo puedo hacer que mis nodos de trabajo se unan a mi clúster de Amazon EKS?
Contenido relevante
- OFICIAL DE AWSActualizada hace 2 años
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace un año
- OFICIAL DE AWSActualizada hace 25 días