ECS Networking Deep Dive
1. Network Modes
awsvpc (The Standard)
Mỗi Task có ENI riêng, IP riêng.
- Task được đối xử như một EC2.
- Full support Security Group.
- High Performance.
Fargate Requirement
Nếu dùng Fargate, bạn bắt buộc phải dùng mode awsvpc. Bạn không thể dùng bridge hay host mode.
2. Service Discovery & Service Connect
- Service Discovery (Cloud Map): DNS-based.
service-a.local-> IP của Task. Nhược điểm: DNS caching có thể gây lỗi khi Task thay đổi IP nhanh. - ECS Service Connect (New): Proxy-based (Envoy).
- Cung cấp Service Discovery, Load Balancing, và Traffic metrics mà không cần cài thêm gì.
- Tin cậy hơn DNS.
3. Load Balancing Integration
- Target Type:
- Instance: ALB gửi traffic đến
NodeIP:NodePort. (Cũ). - IP: ALB gửi traffic thẳng đến
TaskIP:TaskPort. (Mới, nhanh hơn, hỗ trợ Fargate).
- Instance: ALB gửi traffic đến
Health Check Grace Period
Khi Task mới khởi động, nó cần thời gian để init app. Hãy cấu hình Health Check Grace Period (VD: 60s) trên ECS Service để tránh việc ALB kill Task vì tưởng nó chết (trong khi nó chỉ đang boot).