適用於外部啟動類型的 Amazon ECS 集群 - Amazon Elastic Container Service

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

適用於外部啟動類型的 Amazon ECS 集群

Amazon ECS Anywhere 提供將外部執行個體 (例如現場部署伺服器或虛擬機器 (VM)) 註冊到 Amazon ECS 叢集的支援。外部執行個體已進行優化,可執行產生傳出流量或處理資料的應用程式。如果您的應用程式需要傳入流量,缺乏 Elastic Load Balancing 支援會使這些工作負載的執行效率降低。Amazon 新ECS增了一種新的EXTERNAL啟動類型,您可以用來在外部執行個體上建立服務或執行任務。

以下提供 Amazon ECS 無所不在的高階系統架構概觀。您的現場部署伺服器同時安裝了 Amazon ECS 代理程式和SSM代理程式。

顯示 Amazon ECS 任何地方的架構圖。

支援的作業系統和系統架構

以下是支援的作業系統和系統架構清單。

  • Amazon Linux 2

  • Amazon Linux 2023

  • CentOS 7

  • CentOS Stream 9

  • RHEL7,RHEL8-Docker 或RHEL的開放軟件包存儲庫都不支持本地安裝 Docker。RHEL您必須先確定已安裝 Docker,然後再執行本文件中所述的安裝指令碼。

  • 軟呢帽 32,軟呢帽 33,軟呢帽 40

  • 打開SUSE不倒草

  • Ubuntu 18, Ubuntu 20, Ubuntu 22,

  • Debian 10

    重要

    Debian 9 長期 Support(LTS支持)於 2022 年 6 月 30 日結束,並且不再受 Amazon ECS 任何地方的支持。

  • Debian

  • Debian

  • SUSE企業伺服器 15

  • 支援x86_64ARM64CPU架構。

  • 支援以下 Windows 作業系統版本:

    • Windows Server 2022

    • Windows Server 2019

    • Windows Server 2016

    • Windows Server 20H2

考量事項

在您開始使用外部執行個體之前,請注意下列考量事項。

  • 您可以一次向一個叢集註冊外部執行個體。如需有關如何向其他叢集註冊外部執行個體的說明,請參閱 註銷 Amazon 外ECS部實例

  • 您的外部執行個體需要能夠與其通訊的IAM角色 AWS APIs。如需詳細資訊,請參閱Amazon ECS 隨處IAM角色

  • 您的外部執行個體不應該在本機定義預先設定的執行個體憑證鏈結,因為這會干擾註冊指令碼。

  • 若要將容器記錄檔傳送至 CloudWatch 記錄檔,請務必在工作定義中建立並指定工作執行IAM角色。

  • 當外部執行個體註冊到叢集時,ecs.capability.external 屬性會與執行個體相關聯。此屬性會將執行個體視為外部執行個體。您可以將自訂屬性新增至外部執行個體,以作為任務置放條件限制。如需詳細資訊,請參閱自訂屬性

  • 您可以將資源標籤新增至外部執行個體。如需詳細資訊,請參閱外部容器實例

  • ECSExec 在外部執行個體上受到支援。如需詳細資訊,請參閱使用 ECS Exec 監控 Amazon ECS 容器

  • 以下是與外部執行個體聯網時特有的其他考量。如需詳細資訊,請參閱聯網

    • 不支援服務負載平衡。

    • 不支援服務探索。

    • 在外部執行個體上執行的任務必須使用 bridgehostnone 網路模式。不支援 awsvpc 網路模式。

    • 每個區域都有 Amazon ECS 服務 AWS 域。必須允許這些服務網域將流量傳送到您的外部執行個體。

    • 外部執行個體上安裝的SSM代理程式會維護IAM身分證明,每 30 分鐘使用硬體指紋輪換一次。如果您的外部執行個體中斷與的連線 AWS,SSM代理程式會在重新建立連線後自動重新整理認證。如需詳細資訊,請參閱 AWS Systems Manager 使用者指南中的使用硬體指紋驗證內部部署伺服器和虛擬機器

  • UpdateContainerAgentAPI不支援。如需有關如何更新外部執行個體上的SSM代理程式或 Amazon ECS 代理程式的指示,請參閱更新外部執行個體上的 AWS Systems Manager 代理程式和 Amazon ECS 容器代理程式

  • 不支援 Amazon ECS 容量提供者。若要在外部執行個體上建立服務或執行獨立任務,請使用 EXTERNAL 啟動類型。

  • SELinux 不支援。

  • EFSVolumeConfiguration不支援使用 Amazon EFS 磁碟區或指定。

  • 不支援與 App Mesh 整合。

  • 如果您使用主控台建立外部執行個體工作定義,則必須使用主控台JSON編輯器建立工作定義。

  • 當您在 Windows 上的ECS任何位置執行時,您必須在內部部署基礎結構上使用自己的 Windows 授權。

  • 當您使用非 Amazon ECS 優化時AMI,請在外部容器執行個體上執行下列命令,以設定規則以使用IAM角色執行任務。如需詳細資訊,請參閱外部執行個體的其他

    $ sysctl -w net.ipv4.conf.all.route_localnet=1 $ iptables -t nat -A PREROUTING -p tcp -d 169.254.170.2 --dport 80 -j DNAT --to-destination 127.0.0.1:51679 $ iptables -t nat -A OUTPUT -d 169.254.170.2 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 51679

聯網

Amazon ECS 外部執行個體針對執行產生輸出流量或處理資料的應用程式進行了優化。如果您的應用程式需要傳入流量 (例如 Web 服務),則缺少 Elastic Load Balancing 支援會使執行這些工作負載效率降低,因為不支援將這些工作負載置於負載平衡器之後。

以下是與外部執行個體聯網時特有的其他考量。

  • 不支援服務負載平衡。

  • 不支援服務探索。

  • 在外部執行個體上執行的 Linux 任務必須使用 bridgehostnone 網路模式。不支援 awsvpc 網路模式。

    如需每種網路模式的詳細資訊,請參閱 Amazon ECS 最佳實務指南中的選擇網路模式

  • 在外部執行個體上執行的 Windows 任務必須使用 default 網路模式。

  • 每個區域都有 Amazon ECS 服務網域,且必須允許將流量傳送到外部執行個體。

  • 外部執行個體上安裝的SSM代理程式會維護IAM身分證明,每 30 分鐘使用硬體指紋輪換一次。如果您的外部執行個體中斷與的連線 AWS,SSM代理程式會在重新建立連線後自動重新整理認證。如需詳細資訊,請參閱 AWS Systems Manager 使用者指南中的使用硬體指紋驗證內部部署伺服器和虛擬機器

下列網域用於 Amazon ECS 服務與外部執行個體上安裝的 Amazon ECS 代理程式之間的通訊。確保允許流量並且該DNS解決方案有效。對於每個端點,region 代表 Amazon ECS 支援的 AWS 區域 (例如us-east-2美國東部 (俄亥俄) 區域的區域識別碼。應允許您使用的所有區域的端點。對於 ecs-aecs-t 端點,應該包含星號 (例如 ecs-a-*)。

  • ecs-a-*.region.amazonaws.com - 管理任務時會使用此端點。

  • ecs-t-*.region.amazonaws.com - 此端點可用來管理任務和容器指標。

  • ecs.region.amazonaws.com— 這是 Amazon 的服務端點ECS。

  • ssm.region.amazonaws.com — 這是的服務端點 AWS Systems Manager。

  • ec2messages.region.amazonaws.com— 這是 AWS Systems Manager 用來在系統管理員代理程式與雲端中的 Systems Manager 服務之間進行通訊的服務端點。

  • ssmmessages.region.amazonaws.com — 必須使用這個服務端點建立和刪除連往雲端工作階段管理員服務的工作階段管道。

  • 如果您的工作需要與任何其他 AWS 服務通訊,請確定允許這些服務端點。範例應用程式包括使ECR用 Amazon 提取容器映像或用 CloudWatch 於 CloudWatch 日誌。如需詳細資訊,請參閱 AWS 一般參考中的服務端點

Amazon FSx for Windows File Server 與ECS任何地方

若要 Amazon FSx for Windows File Server 搭配 Amazon ECS 外部執行個體使用,您必須在現場部署資料中心和 AWS 雲端. 如需將網路連線到網路的選項的相關資訊VPC,請參閱 Amazon Virtual Private Cloud 連線選項

g MSA 與ECS任何地方

以下是ECS任何地方支援的使用案例。

  • Active Directory 位於 AWS 雲端 -對於此組態,您可以在內部部署網路與 AWS 雲端 使用連線之間建立 AWS Direct Connect 連線。如需有關如何建立連線的資訊,請參閱 Amazon Virtual Private Cloud 連線選項。請在 AWS 雲端建立一個 Active Directory。如需如何開始使用的相關資訊 AWS Directory Service,請參閱《AWS Directory Service 管理指南》 AWS Directory Service中的〈設定〉。然後,您可以使用 AWS Direct Connect 連線將外部執行個體加入網域。如需與 Amazon 搭配使用 g MSA 的相關資訊ECS,請參閱了解如何使用 gMSAs 適用於 Amazon 的 EC2 Windows 容器 ECS

  • Active Directory 位於內部部署資料中心。- 對於此組態,您將外部執行個體加入到內部部署 Active Directory。然後,您可以在執行 Amazon ECS 任務時使用本機可用的登入資料。