EKS
Amazon EKS is a managed container service for deploying and operating Kubernetes on AWS, where AWS provides a hosted control plane (master nodes and etcd) in a highly available configuration spanning multiple AZs.
Concepts
- Clusters are hosted, single-tenant control planes.
- Each cluster may have one or more:
- Managed Node Groups, where an Auto Scaling Group allows scaling in or out the worker nodes.
Scenarios
Control plane is AWS-managed.
On AWS
Worker nodes can be hosted either Fargate or EC2.
On Outposts
EKS clusters can be deployed to Outposts.
EKS Anywhere
Anywhere allows deployment of EKS on-premise using Docker for local development and VMware vSphere in production, with other deployment options scheduled for 2022.
EKS Distro
EKS Distro is an Open source Kubernetes distribution maintained by AWS.
Operation
Clusters can be maintained through the eksctl
CLI, the aws
CLI, or the AWS Console.
Upgrades
Upgrading the version of Kubernetes in use on an EKS cluster involves:
- Launching new API server nodes of the new version, verifying that they're functioning correctly and replacing the old API server nodes.
- Updating the worker nodes to the same Kubernetes minor version.
- If deployed, upgrading the Cluster Autoscaler to the latest version that matches the Kubernetes minor version.
- If using GPU nodes, updating the NVIDIA device plugin for Kubernetes.
- Updating the VPC CNI, CoreDNS, and kube-proxy addons.
Backlinks