Hệ thống tự scale, tự hồi sinh mà, đúng không anh?– Chết thì có, hồi sinh thì để mai tính!
Audit EKS mà thấy pod chết liên tục vì OOM (Out Of Memory), node chạy 90% CPU, trong khi node khác nằm chơi, tôi chỉ muốn hỏi: “Limit đâu? Autoscaling đâu?”. Cluster như cánh đồng sau bão, pod ngã rạp khắp nơi.
![]() |
Pod trong EKS khi không đặt resource limits. |
Thực trạng: Không resource limits
Thực trạng:
- Không đặt requests/limits: Pod chiếm hết CPU/memory, gây OOM, làm chết cả cluster.
- Autoscaling không hiệu quả: Node group không scale vì workload phân bổ lệch.
- Không monitor: Team không biết node nào quá tải, pod nào “ăn” nhiều tài nguyên.
Hệ quả:
- Pod crash liên tục: OOM hoặc CPU throttle làm pod restart.
- Cluster không ổn định: Node quá tải, ảnh hưởng toàn hệ thống.
- Tốn tiền: Node chạy full capacity dù không cần thiết.
Giải pháp: Đặt limit và autoscaling
Để pod sống lâu:
- Áp dụng LimitRange: Đặt default CPU/memory limits trong namespace.
- Dùng ResourceQuota: Giới hạn tổng tài nguyên mỗi namespace.
- Vertical Pod Autoscaler (VPA): Tự động điều chỉnh requests/limits dựa trên workload.
Ví dụ: LimitRange trong namespace:
apiVersion: v1kind: LimitRangemetadata: name: default-limits namespace: devspec: limits: - default: cpu: "500m" memory: "512Mi" defaultRequest: cpu: "200m" memory: "256Mi" type: Container
🎯 Tóm lại: Không đặt limit, pod sẽ “chết như rạ”. Dùng LimitRange, ResourceQuota, và VPA để cluster ổn định, tiết kiệm tài nguyên.
Đăng nhận xét