Amazon EKS: managed Kubernetes, your data plane

Amazon EKS: managed Kubernetes, your data plane An architecture diagram generated by Archify. You · kubectl / Helm / GitOps · Architecture component You kubectl / Helm / GitOps EKS Control Plane · API server, scheduler, controllers · AWS-managed account (you never see these) · Kubernetes EKS Control Plane API server, scheduler, controllers etcd · AWS-managed, multi-AZ, encrypted · AWS-managed account (you never see these) etcd AWS-managed, multi-AZ, encrypted Karpenter · just-in-time node provisioning · Your VPC - the data plane you operate Karpenter just-in-time node provisioning Managed node group · EC2 + EKS-optimized AMI + kubelet · Your VPC - the data plane you operate Managed node group EC2 + EKS-optimized AMI + kubelet EKS Auto Mode · AWS-managed nodes, compute and add-ons · Your VPC - the data plane you operate EKS Auto Mode AWS-managed nodes, compute and add-ons Amazon VPC CNI · each pod gets a real VPC IP · Your VPC - the data plane you operate Amazon VPC CNI each pod gets a real VPC IP Pods · your workloads · Your VPC - the data plane you operate › Pod-level AWS access Pods your workloads ALB / NLB · AWS Load Balancer Controller, IP mode · Your VPC - the data plane you operate ALB / NLB AWS Load Balancer Controller, IP mode IRSA / EKS Pod Identity · scoped AWS credentials per pod · Pod-level AWS access IRSA / EKS Pod Identity scoped AWS credentials per pod Amazon ECR · container images · Architecture component Amazon ECR container images kubectl apply - Kubernetes API, IAM-authenticated cluster state binds pods to kubelet watches unschedulable pods, launches nodes runs AWS provisions and manages nodes assigns VPC IP via ENI temporary credentials image pull Ingress to pod IPs AWS-managed account (you never see these) Your VPC - the data plane you operate Pod-level AWS access Legend Backend Database Cloud Security External

The split that defines EKS

  • • AWS runs the control plane in its own account across AZs
  • • You run every node, add-on and CNI in your VPC
  • • An EKS cluster costs $0.10 per hour before any nodes

Pods are first-class VPC citizens

  • • The VPC CNI gives each pod a routable VPC IP address
  • • Security groups and NACLs apply to pods, not just nodes
  • • Load balancers target pod IPs directly, skipping node ports

ECS or EKS?

  • • EKS if you need Kubernetes APIs, CRDs, operators or portability
  • • ECS if you want a smaller surface and fewer moving parts
  • • EKS gives you an ecosystem; it also gives you upgrades to run