Amazon ECS 界面VPC端點(AWS PrivateLink) - Amazon Elastic Container Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Amazon ECS 界面VPC端點(AWS PrivateLink)

您可以ECS將 Amazon 設定為使用介面VPC端點,以改善您VPC的安全狀態。界面端點採用這種技術 AWS PrivateLink,可讓您使用私有 IP 地址私有存取 Amazon ECS APIs。 AWS PrivateLink 限制您VPC和 Amazon 之間的所有網絡流量ECS到 Amazon 網絡。您不需要網際網路閘道、NAT裝置或虛擬私有閘道。

如需有關 AWS PrivateLink 和VPC端點的詳細資訊,請參閱 Amazon VPC 使用者指南中的VPC端點

考量事項

自 2023 年 12 月 23 日起推出之區域中端點的考量事項

在為 Amazon 設定界面VPC端點之前ECS,請注意以下考量事項:

  • 您必須具有下列區域特定端VPC點:

    • com.amazonaws.region.ecs-agent

    • com.amazonaws.region.ecs-telemetry

    • com.amazonaws.region.ecs

    例如,加拿大西部 (卡加利) (ca-west-1) 區域需要下列端點:VPC

    • com.amazonaws.ca-west-1.ecs-agent

    • com.amazonaws.ca-west-1.ecs-telemetry

    • com.amazonaws.ca-west-1.ecs

  • 當您使用樣版在新區域中建立 AWS 資源,且樣版是從 2023 年 12 月 23 日之前引入的「區域」複製時,視複製來源區域而定,請執行下列其中一項作業。

    例如,複製來源區域為美國東部 (維吉尼亞北部) (us-east-1)。複製到地區是加拿大西部 (卡爾加里) (ca-west-1)。

    組態 動作

    複製來源區域沒有任何端點。VPC

    為新區域建立全部三個VPC端點 (例如,com.amazonaws.ca-west-1.ecs-agent)。

    複製來源區域包含區域特定的端點。VPC

    1. 為新區域建立全部三個VPC端點 (例如,com.amazonaws.ca-west-1.ecs-agent)。

    2. 刪除從區域複製的所有三個VPC端點 (例如,com.amazonaws.us-east-1.ecs-agent)。

Fargate 啟動類型的 Amazon ECS VPC 端點考量事項

當 Fargate 任務部署到的VPC端點ecr.dkrecr.apiVPC位於相同的端點時,它將使用該VPC端點。如果沒有VPC端點,它將使用 Fargate 接口。

在為 Amazon 設定界面VPC端點之前ECS,請注意以下考量事項:

  • 使用 Fargate 啟動類型的任務不需要 Amazon 的界面VPC端點ECS,但是您可能需要 Amazon ECR、Secrets Manager 或 Amazon CloudWatch 日誌的界面VPC端點,如以下幾點所述。

  • VPC端點目前不支援跨區域要求。確保您在計劃向 Amazon 發出API電話的相同區域中建立端點ECS。例如,假設您想在美國東部 (維吉尼亞北部) 執行任務。然後,您必須在美國東部 (維吉尼亞北部) 建立 Amazon ECS VPC 端點。在任何其他區域建立的 Amazon ECS VPC 端點都無法在美國東部 (維吉尼亞北部) 執行任務。

  • VPC端點僅支持 Amazon DNS 通過 Amazon 路線 53 提供的。如果你想使用自己的DNS,你可以使用條件DNS轉發。如需詳細資訊,請參閱 Amazon VPC 使用者指南中的DHCP選項集

  • 連接到VPC端點的安全性群組必須允許來自的私人子網路連入連接TCP埠 443 上的連入VPC連線。

  • Envoy 代理的服務 Connect 管理會使用com.amazonaws.region.ecs-agentVPC端點。當您不使用VPC端點時,Envoy 代理的服務 Connect 管理會使用該區域中的ecs-sc端點。如需每個區域中 Amazon ECS 端點的清單,請參閱 Amazon ECS 端點和配額

EC2啟動類型的 Amazon ECS VPC 端點注意事項

在為 Amazon 設定界面VPC端點之前ECS,請注意以下考量事項:

  • 使用EC2啟動類型的任務需要啟動它們的容器執行個體,才能執行 Amazon ECS 容器代理程式的版本1.25.1或更新版本。如需詳細資訊,請參閱Amazon 容器ECS執行個體管理

  • 若要允許您的工作從 Secrets Manager 提取機密資料,您必須為 Secrets Manager 建立介面VPC端點。如需詳細資訊,請參閱使用指南中的將 Secrets Manager 與VPC端點搭配AWS Secrets Manager使用。

  • 如果您VPC沒有網際網路閘道,而且您的工作使用記awslogs錄驅動程式將記錄檔資訊傳送至 CloudWatch 記錄檔,則必須為 CloudWatch 記錄檔建立介面VPC端點。如需詳細資訊,請參閱 Amazon CloudWatch 日誌使用指南中的將 CloudWatch 日誌與界面VPC端點搭配使用。

  • VPC端點目前不支援跨區域要求。確保您在計劃向 Amazon 發出API電話的相同區域中建立端點ECS。例如,假設您想在美國東部 (維吉尼亞北部) 執行任務。然後,您必須在美國東部 (維吉尼亞北部) 建立 Amazon ECS VPC 端點。在任何其他區域建立的 Amazon ECS VPC 端點無法在美國東部 (維吉尼亞北部) 執行任務。

  • VPC端點僅支持 Amazon DNS 通過 Amazon 路線 53 提供的。如果你想使用自己的DNS,你可以使用條件DNS轉發。如需詳細資訊,請參閱 Amazon VPC 使用者指南中的DHCP選項集

  • 連接到VPC端點的安全性群組必須允許來自的私人子網路連入連接TCP埠 443 上的連入VPC連線。

為 Amazon 創建VPC端點 ECS

若要為 Amazon ECS 服務建立VPC端點,請使用 Amazon 使用VPC者指南中的建立介面端點程序建立下列端點。如果您的內部有現有的容器執行個體VPC,則應以列出的順序建立端點。如果您計劃在VPC端點創建後創建容器實例,則順序無關緊要。

  • com.amazonaws.region.ecs-agent

  • com.amazonaws.region.ecs-telemetry

  • com.amazonaws.region.ecs

注意

region 代表 Amazon 支援之 AWS 區域的區域識別碼ECS,us-east-2例如美國東部 (俄亥俄) 區域。

ecs-agent端點使用 ecs:pollAPI,且ecs-telemetry端點使用ecs:pollecs:StartTelemetrySessionAPI。

如果您有使用EC2啟動類型的現有工作,則在建立VPC端點之後,每個容器執行個體都需要選取新組態。為此,您必須重新啟動每個容器執行個體,或在每個容器執行個體上重新啟動 Amazon ECS 容器代理程式。若要重新開機容器代理程式,請執行下列動作:

若要重新啟動 Amazon ECS 容器代理程式
  1. 透過以下方式登入您的容器執行個體SSH。

  2. 停用容器代理程式。

    sudo docker stop ecs-agent
  3. 啟動容器代理程式。

    sudo docker start ecs-agent

在每個容器執行個體上建立VPC端點並重新啟動 Amazon ECS 容器代理程式之後,所有新啟動的任務都會取得新組態。

為 Amazon 創建VPC端點策略 ECS

您可以將端點政策附加到VPC端點,以控制對 Amazon 的存取ECS。此政策會指定下列資訊:

  • 可執行動作的主體。

  • 可執行的動作。

  • 可供執行動作的資源。

如需詳細資訊,請參閱 Amazon VPC 使用者指南的使用VPC端點控制對服務的存取。

範例:Amazon ECS 動作的VPC端點政策

以下是適用於 Amazon 的端點政策範例ECS。在連接至端點後,此政策會授予存取許可,以允許建立並列出叢集。CreateClusterListClusters 動作不接受任何資源,因此資源定義已針對所有資源設為 *。

{ "Statement":[ { "Effect": "Allow", "Action": [ "ecs:CreateCluster", "ecs:ListClusters" ], "Resource": [ "*" ] } ] }