Cứ để default node group thôi, mình scale được mà– Nhưng scale đâu không thấy, chỉ thấy bill AWS nặng như gánh lúa!
Audit EKS mà thấy 6 node c5.large chạy 24/7, CPU dùng có 10%, tôi chỉ muốn hỏi: “ Sao không ai tối ưu?”. Cluster như cái lò đốt tiền, pod thì nhàn nhã, còn ngân sách thì khóc thét.
![]() |
Bill AWS khi EKS chạy 6 node mà pod chỉ dùng 10% CPU |
Thực trạng: Node group lãng phí
Thực trạng:
- Node group cố định: 6 node c5.large chạy liên tục, dù workload nhẹ.
- Không tận dụng autoscaling: Cluster Autoscaler không bật, hoặc cấu hình sai.
- Không chia node pool: Tất cả workload (batch, web, job) chạy chung node type.
Hệ quả:
- Chi phí cao: Node chạy idle, tốn tiền vô ích.
- Không tối ưu: Workload nặng không scale, workload nhẹ lại chiếm node xịn.
- Khó quản lý: Không biết node nào đang “ăn” tiền nhiều nhất.
Giải pháp: Tối ưu node group
Để tiết kiệm:
- Chia node pool: Tạo node group riêng cho workload (spot instance cho job ngắn, on-demand cho web).
- Dùng Karpenter/Cluster Autoscaler: Tự động scale node theo nhu cầu.
- Monitor chi phí: Dùng AWS Cost Explorer để phân tích chi phí EKS.
Ví dụ: Cấu hình Karpenter:
apiVersion: karpenter.sh/v1alpha5
kind: Provisioner
metadata:
name: default
spec:
requirements:
- key: node.kubernetes.io/instance-type
operator: In
values: ["t3.medium", "t3.large"]
provider:
instanceProfile: "KarpenterNodeRole"
🎯 Tóm lại: EKS không tự tiết kiệm chi phí. Chia node pool, dùng autoscaler, và monitor chi phí để bill AWS không thành “gánh lúa”.
Đăng nhận xét