EKS Addons - Overview
📌 1. EKS Addons là gì?
EKS Addons là các thành phần quan trọng do AWS quản lý và cập nhật, giúp bạn dễ dàng vận hành cụm Kubernetes trên Amazon EKS mà không cần tự quản lý các phiên bản thủ công.

Các addon phổ biến:
- CoreDNS - Dịch vụ DNS trong cluster.
- kube-proxy - Xử lý networking rule giữa Pod và Service.
- Amazon EBS CSI Driver - Hỗ trợ volume động.
- Amazon EFS CSI Driver - Gắn EFS vào Pod.
- AWS Load Balancer Controller - Tạo ALB/NLB từ Ingress/Service.
- Metrics Server - Thu thập metrics để HPA hoạt động.
- VPC CNI - Quản lý networking cho Pod, cấp IP trực tiếp từ VPC.
✨ 2. Lợi ích của EKS Addons
✔ Quản lý version bởi AWS
AWS đảm bảo các version addon tương thích với version EKS hiện tại.
✔ Update dễ dàng
Update bằng CLI hoặc Terraform, không lo conflict.
✔ Bảo mật
AWS tự quản lý bản vá bảo mật cho addon.
✔ Tích hợp sâu
Một số addon yêu cầu IAM Roles for Service Accounts (IRSA), AWS tự handle phần lớn.
🗂️ 3. Phân loại Addons
3.1. AWS Managed Addons
AWS quản lý:
- VPC CNI.
- CoreDNS.
- kube-proxy.
- EBS CSI Driver.
- EFS CSI Driver.
- Pod Identity Agent.
- Amazon GuardDuty Agent.
3.2. Partner Addons / Community Addons
Cài qua Helm hoặc Terraform:
- AWS Load Balancer Controller.
- ExternalDNS.
- Karpenter.
- Metrics Server.
- Prometheus/Grafana.
🖥️ 4. Quản lý Addon bằng AWS CLI
Trước khi chạy các lệnh dưới đây, hãy thay thế my-eks bằng tên thực tế của EKS cluster của bạn.
# Liệt kê tất cả addon đang cài
aws eks list-addons --cluster-name my-eks
# Xem chi tiết một addon
aws eks describe-addon --cluster-name my-eks --addon-name vpc-cni
# Cài addon mới
aws eks create-addon \
--cluster-name my-eks \
--addon-name kube-proxy \
--resolve-conflicts OVERWRITE
# Nâng cấp addon
aws eks update-addon --cluster-name my-eks --addon-name vpc-cni
# Xóa addon
aws eks delete-addon --cluster-name my-eks --addon-name kube-proxy
🛠️ 5. Quản lý EKS Addons bằng Terraform
Ví dụ: Gọi đến resource aws_eks_addon của terraform để tạo addons VPC-CNI và CoreDNS
5.1. Khai báo Variables (variables.tf)
Trước tiên, cần khai báo các variables trong file variables.tf:
variable "cluster_name" {
description = "Name of the EKS cluster"
type = string
default = "my-eks-cluster"
}
variable "vpc_cni_addon_version" {
description = "Version of VPC CNI addon"
type = string
default = "v1.20.4-eksbuild.1" # Kiểm tra version mới nhất
}
variable "coredns_addon_version" {
description = "Version of CoreDNS addon"
type = string
default = "v1.12.4-eksbuild.1" # Kiểm tra version mới nhất
}
Để tìm các version addon mới nhất tương thích với cluster của bạn:
aws eks describe-addon-versions --addon-name vpc-cni
aws eks describe-addon-versions --addon-name coredns
5.2. Tạo EKS Addons (main.tf)
resource "aws_eks_addon" "vpc_cni" {
cluster_name = var.cluster_name
addon_name = "vpc-cni"
addon_version = var.vpc_cni_addon_version
resolve_conflicts_on_create = "OVERWRITE"
resolve_conflicts_on_update = "OVERWRITE"
}
resource "aws_eks_addon" "coredns" {
cluster_name = var.cluster_name
addon_name = "coredns"
addon_version = var.coredns_addon_version
resolve_conflicts_on_create = "OVERWRITE"
resolve_conflicts_on_update = "OVERWRITE"
}
Kết quả:

📊 6. Cách chọn Addon phù hợp
| Addon | Bắt buộc / Khuyến nghị | Lý do |
|---|---|---|
| VPC CNI | Bắt buộc | Pod networking |
| CoreDNS | Bắt buộc | DNS trong cluster |
| kube-proxy | Bắt buộc | Service routing |
| AWS Load Balancer Controller | Khuyến nghị | Tạo ALB/NLB từ Kubernetes |
| EBS CSI Driver | Khuyến nghị khi dùng volume | Pod cần PersistentVolume |
| Metrics Server | Khuyến nghị khi dùng HPA | Thu thập CPU/RAM |
⚠️ 7. Lưu ý quan trọng
- Khi nâng version EKS phải nâng addon tương thích.
- IRSA (IAM) cần được cấu hình đúng với từng addon, nhưng có một số addon không cần IRSA.
- Một số addon cần Helm chart nếu không thuộc AWS managed (e.g., Karpenter).
✅ 8. Recommended Addons cho Production
- VPC CNI.
- CoreDNS.
- kube-proxy.
- AWS Load Balancer Controller.
- EBS CSI hoặc EFS CSI Driver.
- Metrics Server.
- Cluster Autoscaler hoặc Karpenter.
- ExternalDNS (nếu dùng Route53).
- Prometheus + Grafana (Observability).
📝 9. Tổng kết
EKS Addons giúp bạn:
- Giảm công sức quản lý.
- Tăng tính ổn định.
- Đảm bảo tương thích khi update cluster.
- Duy trì bảo mật tốt hơn.
Sử dụng addons đúng cách giúp hệ thống EKS của bạn đơn giản, hiệu quả và dễ maintain hơn.
Tham khảo: AWS EKS Add-ons Documentation