Seleccione sus preferencias de cookies

Usamos cookies esenciales y herramientas similares que son necesarias para proporcionar nuestro sitio y nuestros servicios. Usamos cookies de rendimiento para recopilar estadísticas anónimas para que podamos entender cómo los clientes usan nuestro sitio y hacer mejoras. Las cookies esenciales no se pueden desactivar, pero puede hacer clic en “Personalizar” o “Rechazar” para rechazar las cookies de rendimiento.

Si está de acuerdo, AWS y los terceros aprobados también utilizarán cookies para proporcionar características útiles del sitio, recordar sus preferencias y mostrar contenido relevante, incluida publicidad relevante. Para aceptar o rechazar todas las cookies no esenciales, haga clic en “Aceptar” o “Rechazar”. Para elegir opciones más detalladas, haga clic en “Personalizar”.

Cómo crear una clase de nodos para Amazon EKS

Modo de enfoque
Cómo crear una clase de nodos para Amazon EKS - Amazon EKS

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.

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.

Las clases de nodos de Amazon EKS ofrecen un control detallado de la configuración de los nodos administrados del modo automático de EKS. Una clase de nodos define los ajustes a nivel de infraestructura que se aplican a los grupos de nodos del clúster de EKS, incluida la configuración de la red, los ajustes de almacenamiento y el etiquetado de los recursos. En este tema se explica cómo crear y configurar una clase de nodos para cumplir con requisitos operativos específicos.

Si necesita personalizar la forma en que el modo automático de EKS aprovisiona y configura las instancias de EC2 más allá de los ajustes predeterminados, la creación de una clase de nodos permite controlar con precisión los parámetros críticos de la infraestructura. Por ejemplo, puede especificar la ubicación de la subred privada para mejorar la seguridad, configurar el almacenamiento efímero de las instancias para cargas de trabajo sensibles al rendimiento o aplicar un etiquetado personalizado para asignar los costos.

Cómo crear una clase de nodos

Para crear una clase de nodos, siga estos pasos:

  1. Cree un archivo YAML (por ejemplo, nodeclass.yaml) con la configuración de la clase de nodo

  2. Aplique la configuración al clúster mediante kubectl

  3. Haga referencia a la clase de nodos en la configuración del grupo de nodos. Para obtener más información, consulte Creación de un grupo de nodos para el modo automático de EKS.

Debe tener kubectl instalado y configurado. Para obtener más información, consulte Configuración para usar Amazon EKS.

Ejemplo de clase de nodos básica

A continuación, se muestra un ejemplo de clase de nodos:

apiVersion: eks.amazonaws.com/v1 kind: NodeClass metadata: name: private-compute spec: ephemeralStorage: size: "160Gi"

Esta NodeClass aumenta la cantidad de almacenamiento efímero en el nodo.

Aplique esta configuración mediante:

kubectl apply -f nodeclass.yaml

A continuación, haga referencia a la clase de nodos en la configuración del grupo de nodos. Para obtener más información, consulte Creación de un grupo de nodos para el modo automático de EKS.

Creación de una entrada de acceso a una clase de nodos

Si crea una clase de nodos personalizada, debe crear una entrada de acceso de EKS para permitir que los nodos se unan al clúster. EKS crea entradas de acceso automáticamente cuando se utilizan la clase de nodos y los grupos de nodos integrados.

Para obtener información sobre cómo funcionan las entradas de acceso, consulte Concesión de acceso para los usuarios de IAM a las entradas de acceso de Kubernetes con EKS.

Al crear entradas de acceso para las clases de nodos del modo automático de EKS, debe utilizar el tipo de entrada de acceso EC2.

Creación de una entrada de acceso con la CLI

Para crear una entrada de acceso para los nodos de EC2 y asociar la política de nodos automáticos de EKS:

Actualice los siguientes comandos de la CLI con el nombre del clúster y el ARN del rol del nodo. El ARN del rol del nodo se especifica en la clase de nodo YAML.

# Create the access entry for EC2 nodes aws eks create-access-entry \ --cluster-name <cluster-name> \ --principal-arn <node-role-arn> \ --type EC2 # Associate the auto node policy aws eks associate-access-policy \ --cluster-name <cluster-name> \ --principal-arn <node-role-arn> \ --policy-arn arn:aws:eks::aws:cluster-access-policy/AmazonEKSAutoNodePolicy \ --access-scope type=cluster

Creación de una entrada de acceso con CloudFormation

Para crear una entrada de acceso para los nodos de EC2 y asociar la política de nodos automáticos de EKS:

Actualice el siguiente ejemplo de CloudFormation con el nombre de su clúster y el ARN del rol del nodo. El ARN del rol del nodo se especifica en la clase de nodo YAML.

EKSAutoNodeRoleAccessEntry: Type: AWS::EKS::AccessEntry Properties: ClusterName: <cluster-name> PrincipalArn: <node-role-arn> Type: "EC2" AccessPolicies: - AccessScope: Type: cluster PolicyArn: arn:aws:eks::aws:cluster-access-policy/AmazonEKSAutoNodePolicy DependsOn: [ <cluster-name> ] # previously defined in CloudFormation

Para obtener información sobre la implementación de pilas de CloudFormation, consulte Introducción a CloudFormation.

Especificación de clase de nodos

apiVersion: eks.amazonaws.com/v1 kind: NodeClass metadata: name: default spec: # Required: Name of IAM Role for Nodes role: "MyNodeRole" # Required: Subnet selection for node placement subnetSelectorTerms: - tags: Name: "<tag-name>" kubernetes.io/role/internal-elb: "1" # Alternative using direct subnet ID # - id: "subnet-0123456789abcdef0" # Required: Security group selection for nodes securityGroupSelectorTerms: - tags: Name: "eks-cluster-node-sg" # Alternative approaches: # - id: "sg-0123456789abcdef0" # - name: "eks-cluster-node-security-group" # Optional: Configure SNAT policy (defaults to Random) snatPolicy: Random # or Disabled # Optional: Network policy configuration (defaults to DefaultAllow) networkPolicy: DefaultAllow # or DefaultDeny # Optional: Network policy event logging (defaults to Disabled) networkPolicyEventLogs: Disabled # or Enabled # Optional: Configure ephemeral storage (shown with default values) ephemeralStorage: size: "80Gi" # Range: 1-59000Gi or 1-64000G or 1-58Ti or 1-64T iops: 3000 # Range: 3000-16000 throughput: 125 # Range: 125-1000 # IAM role to use for EC2 instance role # If unspecified, EKS will create a role # If specified, role requires access entry described above role: arn:aws:iam::123456789012:role/MyNodeRole # Optional: Additional EC2 tags tags: Environment: "production" Team: "platform"

Consideraciones:

PrivacidadTérminos del sitioPreferencias de cookies
© 2025, Amazon Web Services, Inc o sus afiliados. Todos los derechos reservados.