Launching a node with Amazon Linux
In this section, we will discuss what is needed to launch a single EC2 instance and connect it to a cluster. We will then build on this as we discuss managed node groups.
Prerequisites for launching a node with Amazon Linux
A worker node is simply an EC2 instance that is used by EKS to actually host the Pods deployed on the cluster. Any EC2 instance will need the following:
- An Identity and Access Management (IAM) role that allows it to talk to the AWS API (EKS, EC2, and so on)
- A security group that, at a minimum, allows communication to the EKS control plane
- An operating system image that has the Kubernetes agents (kubelet, and so on) installed
- An
init
/boot
script to register with a specific EKS cluster
IAM role and permissions
Each worker node and EC2 instance requires an IAM role to be attached to it that allows communication with the AWS EKS API, Elastic Container Registry (ECR), and the EC2 API. There are three...