The EKS cluster consists of two components:
● Amazon EKS control plane
● Amazon EKS nodes
The Amazon EKS control plane consists of nodes that run the Kubernetes software,
such as etcd and the Kubernetes API server. Amazon EKS runs its own Kubernetes
control plane without sharing control plane infrastructure across other clusters or
AWS accounts.
To ensure high availability, Amazon EKS runs Kubernetes control plane instances
across multiple Availability Zones. It automatically replaces unhealthy control plane
instances and provides automated upgrades and patches for the new control
planes.
The two methods for creating a new Kubernetes cluster with nodes in Amazon
EKS:
● eksctl – A command-line utility that consists of kubectl for creating and
managing Kubernetes clusters on Amazon EKS.
● AWS Management Console and AWS CLI
There are methods that Amazon EKS cluster uses to schedule pods using single or
combined node groups:
● Self-managed nodes - consist of one or more Amazon EC2 instances that
are deployed in an Amazon EC2 Auto Scaling group
● Amazon EKS Managed node groups - helps to automate the provisioning
and lifecycle management of nodes.
● AWS Fargate - run Kubernetes pods on AWS Fargate
Amazon Elastic Kubernetes Service is integrated with many AWS services for
unique capabilities:
● Images - Amazon ECR for container images
● Load distribution - AWS ELB (Elastic Load Balancing)
● Authentication - AWS IAM
● Isolation - Amazon VPC