我想將靜態或彈性 IP 位址用於 AWS Fargate 上的 Amazon Elastic Container Service (Amazon ECS) 任務。
簡短說明
您無法將靜態或彈性 IP 位址直接新增至 Fargate 任務。若要將靜態或彈性 IP 位址與 Fargate 任務搭配使用,請先建立具有 Network Load Balancer 的 Fargate 服務。然後,使用負載平衡器的靜態 IP 位址作為任務的固定進入點。
解決方法
若要為傳出流量的 Fargate 任務建立靜態 IP 位址,請建立 NAT 閘道。您必須針對下游取用者使用靜態 IP 位址,並將 Fargate 任務放置在私人子網路中。然後,使用 NAT 閘道 IP 位址建立 IP 位址允許清單。
若要為傳入流量建立靜態 IP 位址,請完成下列步驟。
建立目標群組
建立目標群組,然後在「選擇目標類型」中選取「IP 位址」,並選取「通訊協定」中的「TCP」。
注意:您無法在 Fargate 上使用執行個體目標類型。
設定 Network Load Balancer 以使用您的目標群組
**注意:**負載平衡器的安全群組規則必須允許傳出流量與流量連接埠和運作狀態檢查連接埠上的已註冊目標進行通訊。規則還必須允許來自接聽程式連接埠上的用戶端傳入流量。
將目標群組連接至相同虛擬私有雲端 (VPC) 中的 Network Load Balancer。負載平衡器會在目標群組內的目標之間分配流量。在建立目標群組與 Amazon ECS 服務的關聯時,Amazon ECS 會自動向目標群組註冊和取消註冊容器執行個體。由於 Amazon ECS 處理目標註冊,因此您不需要將目標新增至目標群組。
建立 Amazon ECS 服務
建立具有 Fargate 啟動類型的 Amazon ECS 服務。請確保在建立服務時,指定在服務定義中建立的目標群組。此外,與服務相關聯的安全群組必須允許來自流量連接埠和運作狀態檢查連接埠上負載平衡器的傳入流量。
啟動服務的每個任務時,Amazon ECS 會向目標群組註冊服務定義中的容器執行個體和連接埠組合。然後,負載平衡器會將流量路由至該容器執行個體。
相關資訊
使用負載平衡分配 Amazon ECS 服務流量