gopaddle User Guide
  • 👋Welcome to gopaddle
  • Overview
    • 💡Getting Started
    • Register a Cluster
      • Register Rancher Prime - RKE2
      • Register K3S
      • Register MicroK8s
      • Register Kind
      • Register minikube
      • Register Kubeadm Cluster
      • Register AWS EKS Cluster
        • EKS Cluster with public or public/private access point
        • EKS Cluster with private access endpoint and a bastion host
        • Validate Cluster Connectivity
      • Register Azure AKS Cluster
      • Register Google GKE Cluster
      • Register Huawei Cloud Container Engine
    • Register GitHub Account
    • Register Jira Account
    • Register ChatGPT Assistant
    • 💻Kubernetes IDE
      • Filters
      • Editor
      • Flat vs Tree View
      • Developer Tools
    • 🙋AI Assistant
      • Chat with AI
      • Raise a Jira Ticket from Chat Window
      • Create Runbook from Chat Window
    • 📖Runbook Hub
      • Create Runbook Hub
      • Attach Runbook Hub to Cluster
      • Enhancing contents of Runbooks with AI
      • Detach Runbook Hub from Cluster
      • Syncing Runbook Hub with GitHub
      • Delete Runbook / Runbook Hub
    • ⏱️Installing Community Edition
      • MicroK8s Addon
        • On Ubuntu
        • On MacOS
      • Docker Desktop
      • SUSE Rancher Prime
      • Digital Ocean
      • Akamai Linode
      • Kind Cluster
      • Helm
      • Docker Compose
      • Accessing gopaddle UI
    • 📈Improving performance of resource discovery
    • Provision new Cluster
      • Register Cloud Account
        • AWS
          • Quickstart AWS Setup
          • IAM Access Policies
          • AWS Setup Script
        • Azure
          • Create Azure Application
          • Register Azure Cloud Authenticator
          • Register Azure Account
        • Google
      • Provision Clusters on Cloud
        • AWS EKS
          • AWS EKS Reference Architecture
          • Adding an AWS IAM Role (EKS Master / Node Pool)
          • Public EKS Cluster
          • All Private EKS Cluster (beta)
          • Creating a Node Pool
        • Azure AKS
          • Creating a Node Pool
          • Enable Public IP Node Access for Azure Deployments
          • VMSS Autoscaling Rules
        • Google GKE
          • Creating a Node Pool
  • 🔎Troubleshooting
    • Cluster Resource View Issues
      • Network Error ! ServerError: Response not successful: Received status code 503
      • Network Error ! TypeError: Failed to fetch
      • Network Error ! ServerParseError: Unexpected token 'j', "json: erro"... is not valid JSON
      • Updating Labels and Annotations does not get reflected in resources list
      • Filtered resources are not fully listed
    • Runbook Issues
      • Deleting a runbook from .gp.yaml does not detach annotation in resources
      • Deleting a Code Account from gopaddle UI does not detach annotation in resources
    • Jira Issues
      • Creating, Updating or Appending a Jira issue fails with error INVALID_INPUT
    • EKS Issues
    • Deployment Issues
    • Node Issues
    • Huawei Issues
Powered by GitBook
On this page
  1. Overview
  2. Provision new Cluster
  3. Provision Clusters on Cloud
  4. AWS EKS

Creating a Node Pool

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

PreviousAll Private EKS Cluster (beta)NextAzure AKS

Last updated 1 year ago

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 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

  • 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 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.

When custom node pool type is chosen, provide the custom AMI to be used while creating the node pool.

Once the nodepool is provisioned, gopaddle sets 2 labels "nodePoolName:<nodepoolname>" and "nodePoolType:customNodePool" 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.

Create a new node pool role and enter the nodepool role ARN before adding the node pool. Check the Role ARN reference for more information. gopaddle uses Cloud Formation Template (CFT) to provision the custom node pool. You can check the Stack Log section for the CFT logs for further debugging.

here
Page cover image
here
Amazon EC2 key pairs.
here