EKS Add-ons

EKS add-ons let AWS install and update core cluster software like the VPC CNI, CoreDNS, and kube-proxy.

EKS add-ons are AWS-curated packages of operational software that AWS keeps versioned and up to date for you. Rather than managing manifests by hand, you declare which add-on version you want and EKS installs it.

Common add-ons

  • vpc-cni — pod networking.
  • coredns — cluster DNS.
  • kube-proxy — service networking rules on each node.
  • aws-ebs-csi-driver — EBS persistent storage.

Why use them

Add-ons give you one-command upgrades, version compatibility checks against your Kubernetes version, and optional IRSA wiring — much safer than editing the underlying resources yourself.

Example

Example · bash
# See which add-ons are available and installed
aws eks describe-addon-versions --query 'addons[].addonName'
aws eks list-addons --cluster-name demo

# Update an add-on to a specific version
aws eks update-addon --cluster-name demo \
  --addon-name vpc-cni --addon-version v1.18.1-eksbuild.3

When to use it

  • A platform team uses EKS managed add-ons for the VPC CNI and CoreDNS so AWS handles version compatibility and security patch rollouts automatically.
  • An SRE team receives an EKS console notification that the kube-proxy add-on has a new version and applies the update during a maintenance window.
  • A DevOps engineer pins add-on versions in Terraform to match the cluster Kubernetes version, preventing accidental upgrades in automated pipelines.

More examples

List available EKS add-ons

Shows all EKS add-ons available for Kubernetes 1.30 and their latest versions, useful for planning upgrades.

Example · bash
aws eks describe-addon-versions \
  --kubernetes-version 1.30 \
  --query 'addons[*].{Name:addonName,Latest:addonVersions[0].addonVersion}' \
  --output table

Install CoreDNS add-on

Installs the CoreDNS managed add-on and waits for it to reach ACTIVE status, replacing any self-managed CoreDNS installation.

Example · bash
aws eks create-addon \
  --cluster-name prod \
  --addon-name coredns \
  --resolve-conflicts OVERWRITE
aws eks wait addon-active \
  --cluster-name prod \
  --addon-name coredns

Upgrade an add-on version

Updates the VPC CNI add-on to a specific version while preserving any custom configuration, then checks the update status.

Example · bash
aws eks update-addon \
  --cluster-name prod \
  --addon-name vpc-cni \
  --addon-version v1.18.0-eksbuild.1 \
  --resolve-conflicts PRESERVE
aws eks describe-addon \
  --cluster-name prod \
  --addon-name vpc-cni \
  --query 'addon.{Status:status,Version:addonVersion}'

Discussion

  • Be the first to comment on this lesson.
EKS Add-ons — Amazon EKS | SoundsCode