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 habilitar o desactivar los NodePools integrados
El modo automático de EKS tiene dos NodePools integrados. Puede habilitar o desactivar estos NodePools mediante la consola de AWS, la CLI o la API.
Referencia de NodePool integrado
-
system-
Este NodePool tiene una taint
CriticalAddonsOnly. Muchos complementos de EKS, como CoreDNS, toleran esta taint. Utilice este grupo de nodos del sistema para separar las aplicaciones críticas del clúster. -
Admite tanto arquitecturas
amd64comoarm64.
-
-
general-purpose-
Este NodePool admite el lanzamiento de nodos para cargas de trabajo de uso general en el clúster.
-
Utiliza solo la arquitectura
amd64.
-
Ambos NodePools integrados:
-
Utilizan la NodeClass de EKS predeterminada
-
Utilizan únicamente la capacidad de EC2 bajo demanda
-
Utilizan las familias de instancias C, M y R de EC2
-
Exigen instancias de EC2 de generación 5 o posterior
nota
Es necesario habilitar al menos un NodePool integrado para que EKS aprovisione la NodeClass “predeterminada”. Si desactiva todos los NodePools integrados, tendrá que crear una NodeClass personalizada y configurar un NodePool para usarla. Para obtener más información acerca de NodeClasses, consulte Cómo crear una clase de nodos para Amazon EKS.
importante
Al eliminar un nombre de NodePool integrado desde computeConfig.nodePools, el recurso de Kubernetes del NodePool correspondiente se elimina del clúster. Todos los nodos administrados por ese NodePool se vacían y se terminan. Al volver a agregar un nombre de NodePool integrado a computeConfig.nodePools, el recurso del NodePool correspondiente se vuelve a crear en el clúster. Este comportamiento es importante al planificar los cambios de capacidad, ya que Karpenter detecta los recursos del NodePool a través de la API de Kubernetes y deja de programar los nodos para los NodePools eliminados.
Procedimiento
Requisitos previos
-
La versión más reciente de la Interfaz de Línea de Comandos de AWS (AWS CLI) instalada y configurada en el dispositivo. Para comprobar su versión actual, utilice
aws --version. Para instalar la versión más reciente, consulte Instalación y Configuración rápida con aws configure en la Guía del usuario de la interfaz de la línea de comandos de AWS.-
Inicie sesión en la CLI con permisos de IAM suficientes para crear recursos de AWS, como políticas de IAM, roles de IAM y clústeres de EKS.
-
Habilitar con la CLI de AWS
Utilice el siguiente comando para habilitar ambos NodePools integrados:
aws eks update-cluster-config \ --name <cluster-name> \ --compute-config '{ "nodeRoleArn": "<node-role-arn>", "nodePools": ["general-purpose", "system"], "enabled": true }' \ --kubernetes-network-config '{ "elasticLoadBalancing":{"enabled": true} }' \ --storage-config '{ "blockStorage":{"enabled": true} }'
Puede modificar el comando para habilitar los NodePools de forma selectiva.
Desactivar con la CLI de AWS
Utilice el siguiente comando para desactivar ambos NodePools integrados:
aws eks update-cluster-config \ --name <cluster-name> \ --compute-config '{ "enabled": true, "nodePools": [] }' \ --kubernetes-network-config '{ "elasticLoadBalancing":{"enabled": true}}' \ --storage-config '{ "blockStorage":{"enabled": true} }'