Creating a Node Pool

Create and manage 2 different types of nodepools in EKS - managed, custom

Nodepool can be added to AWS EKS cluster at the time of cluster creation or to an existing EKS cluster.

gopaddle supports 2 different types of nodepools :

(a) Managed - Uses EKS AMIs and standard nodepool supported by AWS

(b) Custom - Supports Custom AMI. For example, you can choose an ubuntu custom AMI from here based on the region and cluster version that you choose to provider.

Common Attributes :

  • AWS Key - All the AWS private keys available within the selected region will be listed. If no keys are available, then create a new private Key in AWS console before adding a node pool. To create a private key, follow the AWS documentation on Amazon EC2 key pairs.

  • Disk Size - Minimum disk size in GB

  • Min Nodes - Minimum Number of nodes in the node pool.

  • Max Nodes - Maximum Number of nodes in the node pool.

  • Desired Size - The desired number of nodes to be created while creating the node pool. Desired size must be within the min and max node counts. Node Type (GPU) - Choose GPU for compute intensive workloads like Deep Learning.

  • AMI Type - Available type is AL2_x86_64, AL2_x86_64_GPU and AL2_ARM_64. Only when GPU node type is selected, AL2_x86_64_GPU type will be available.

  • Availability Zone - One or more availability zones where the nodes within the nodepool needs to be provisioned.

Fill the common attributes required to create a node pool and add the node pool to the cluster.

Create a new node pool role and enter the nodepool role ARN before adding the node pool. Check the Role ARN reference here for more information.

Once the nodepool is provisioned, AWS sets a label "eks.amazonaws.com/nodegroup:<nodepoolname>" to group the nodes within the nodepool and identify their readiness. These labels can be used as nodeSelectors at the time of deploying workloads to this node pool. When an autoscaling event occurs, new nodes are labeled with nodepool name as well.

Last updated