將應用程式作為 Amazon ECS任務執行 - Amazon Elastic Container Service

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

將應用程式作為 Amazon ECS任務執行

您可以使用 建立一次性程序的任務 AWS Management Console。

建立獨立任務 (AWS Management Console)
  1. https://console.aws.amazon.com/ecs/v2 開啟主控台。

  2. Amazon ECS主控台可讓您從叢集詳細資訊頁面或任務定義修訂清單中建立獨立任務。根據您選擇的資源頁面,使用下列步驟建立獨立任務。

    啟動服務的資源 步驟

    叢集詳細資訊頁面...

    1. 叢集頁面,選取您要在哪個叢集中建立服務。

    2. Tasks (任務) 標籤中,選擇 Run new task (執行新任務)。

    任務定義修訂頁面...
    1. 任務定義頁面上,選擇任務定義系列以顯示該系列的修訂。

    2. 選取您要使用的修訂版本。

    3. 部署功能表中,選擇執行任務

  3. (選用) 運算組態 (進階) 區段可讓您選擇任務的分發方式。您可以使用容量提供者策略啟動類型 。若要使用容量提供者策略,您必須在叢集層級設定容量提供者。如果您尚未將叢集設定為使用容量提供者,請改用啟動類型。

    分發方法 步驟

    容量提供者策略

    1. Compute options (運算選項) 區段中,選取 Capacity provider strategy (容量提供者策略)。

    2. 選擇策略:

      • 若要使用叢集的預設容量提供者策略,選擇使用叢集預設

      • 若您的叢集沒有預設容量提供者策略,或要使用自訂策略,選擇 Use custom (使用自訂)、Add capacity provider strategy (新增容量提供者策略) 並透過指定 Base (基礎)、Capacity provider (容量提供者) 和 Weight (權重) 來定義您的自訂容量提供者策略。

    注意

    若要在策略中使用容量提供者,容量提供者必須與叢集相關聯。

    啟動類型
    1. 運算選項區段中,選取啟動類型

    2. 針對 啟動類型,選擇啟動類型。

    3. (選用) 當指定 Fargate 啟動類型時,針對平台版本,指定要使用的平台版本。如果未指定平台版本,將使用 LATEST 平台版本。

  4. 針對 Application type (應用程式類型),選擇 Task (任務)。

  5. 任務定義中,選擇任務定義系列和修訂。

    重要

    主控台會驗證選擇,以確保所選任務定義系列和修訂與定義的運算組態相容。

  6. 針對 Desired tasks (所需任務),輸入要啟動的任務數目。

  7. 如果任務定義使用 awsvpc 網路模式,請展開聯網。使用下列步驟以指定自訂組態。

    1. 對於 VPC,選取要VPC使用的 。

    2. 對於子網路 ,在任務排程器在放置任務時考慮VPC的 中選取一或多個子網路。

      重要

      awsvpc 網路模式只支援私有子網路。任務不會接收公有 IP 地址。因此,傳出網際網路存取需要NAT閘道,傳入網際網路流量會透過負載平衡器路由。

    3. 安全群組中,您可以選擇現有的安全群組,或建立新的安全群組。若要使用現有的安全群組,選擇該安全群組並移至下一個步驟。若要建立新的安全群組,請選擇 建立新安全群組。您必須指定安全群組名稱、描述,然後為該安全群組新增一條或更多傳入規則。

    4. 針對公有 IP ,選擇是否要將公有 IP 地址自動指派給任務的彈性網路介面 (ENI)。

      AWS Fargate 在公有子網路中執行時,任務可以指派公有 IP 地址,以便他們有網際網路的路由。EC2 任務無法使用此欄位指派公有 IP。如需詳細資訊,請參閱 Fargate 啟動類型的 Amazon ECS任務聯網選項,以及為 Amazon ECS任務配置網路介面。

  8. 如果您的任務使用與部署時組態相容的資料磁碟區,您可以透過擴展磁碟區 來設定磁碟

    磁碟區名稱和磁碟區類型是在建立任務定義修訂時設定,且無法在執行獨立任務時變更。若要更新磁碟區名稱和類型,您必須建立新的任務定義修訂,並使用新修訂執行任務。

    若要設定此磁碟區類型 執行此作業

    Amazon EBS

    1. 對於EBS磁碟區類型 ,選擇您要連接至任務的EBS磁碟區類型。

    2. 針對大小 GiB ),輸入以 gibibyte (GiB ) 為單位的磁碟區大小有效值。您可以指定至少 1 GiB 和最大 16,384 GiB 磁碟區大小。除非您提供快照 ID,否則需要此值。

    3. 對於 IOPS,輸入磁碟區應提供的輸入/輸出操作數目上限 (IOPS)。此值僅適用於 io1io2、 和 gp3磁碟區類型。

    4. 針對輸送量 MiB /s),以每秒 MB ( MiBps或 MiB /s) 為單位,輸入磁碟區應提供的輸送量。此值只能針對gp3磁碟區類型設定。

    5. 對於快照 ID ,如果您想要從快照建立磁碟區,請選擇現有的 Amazon EBS磁碟區快照或輸入快照ARN的 。您也可以不選擇或輸入快照 ID 來建立新的空白磁碟區。

    6. 對於終止政策 ,如果您想要在任務終止後保留為連接至任務而設定的磁碟區,請取消選取核取方塊。根據預設,在任務終止時,會刪除連接至任務的EBS磁碟區。

    7. 對於檔案系統類型 ,選擇用於磁碟區上資料儲存和擷取的檔案系統類型。您可以選擇作業系統預設值或特定檔案系統類型。Linux 的預設值為 XFS。對於從快照建立的磁碟區,您必須指定建立快照時磁碟區所使用的相同檔案系統類型。如果檔案系統類型不相符,任務將無法啟動。

    8. 針對基礎設施角色 ,選擇具有必要許可IAM的角色,允許 Amazon ECS管理任務的 Amazon EBS磁碟區。您可以將 AmazonECSInfrastructureRolePolicyForVolumes 受管政策連接至 角色,也可以使用政策作為建立和連接您自己的政策的指南,其許可可滿足您的特定需求。如需必要許可的詳細資訊,請參閱 Amazon ECS基礎設施IAM角色

    9. 對於加密 ,如果您想要依預設設定使用 Amazon EBS加密,請選擇預設。如果您的帳戶已預設設定加密,則磁碟區將使用設定中指定的 AWS Key Management Service (AWS KMS) 金鑰加密。如果您選擇預設,且 Amazon EBS 預設加密未開啟,則磁碟區將取消加密。

      如果您選擇自訂 ,您可以指定磁碟區加密 AWS KMS key 的選擇。

      如果您選擇,除非您已預設設定加密,或者您從加密的快照建立磁碟區,否則磁碟區將取消加密。

    10. 如果您已選擇 Custom for Encryption ,則必須指定要使用 AWS KMS key 的 。針對KMS金鑰 ,選擇 AWS KMS key 或輸入金鑰 ARN。如果您選擇使用對稱客戶受管金鑰來加密磁碟區,請確定您已在 AWS KMS key 政策中定義正確的許可。如需詳細資訊,請參閱 Amazon EBS磁碟區的資料加密。

    11. (選用) 在標籤 下,您可以透過從任務定義傳播標籤或提供您自己的標籤,將標籤新增至 Amazon EBS磁碟區。

      如果您想要從任務定義傳播標籤,請選擇從 傳播標籤的任務定義。如果您選擇不傳播 ,或者如果您不選擇值,則不會傳播標籤。

      如果您想要提供自己的標籤,請選擇新增標籤,然後為每個新增的標籤提供索引鍵和值。

      如需標記 Amazon EBS磁碟區的詳細資訊,請參閱標記 Amazon EBS磁碟區。

  9. (選用) 若要使用預設以外的任務置放策略,請展開任務置放,然後從下列選項中選擇。

    如需詳細資訊,請參閱Amazon 如何在容器執行個體上ECS放置任務

    • AZ 平衡分散 – 在可用區域和可用區域中的容器執行個體之間分發任務。

    • AZ 平衡 BinPack – 將任務分散至可用區域和具有最低可用記憶體的容器執行個體。

    • BinPack – 根據最少的可用 CPU或 記憶體來分發任務。

    • 每個主機一個任務 – 最多在每個容器執行個體上放置一個來自 服務的任務。

    • 自訂 – 定義您自己的任務置放策略。

    如果選擇自訂,則請定義置放任務的演算法,以及在任務置放期間考慮的規則。

    • 策略下,針對類型欄位,選擇演算法以及要用於演算法的實體。

      您最多可新增 5 項策略。

    • Constraint (限制條件),針對 Type (類型) 和 Expression (運算式),選擇要用於限制條件的規則與屬性。

      例如,若要設定限制條件,以將任務置放在 T2 執行個體上,針對運算式,請輸入 attribute:ecs.instance-type =~ t2.*

      您最多可新增 10 個限制條件。

  10. (選用) 若要覆寫任務IAM定義中定義的任務角色或任務執行角色,請展開任務覆寫 ,然後完成下列步驟:

    1. 針對任務角色 ,選擇此任務IAM的角色。如需詳細資訊,請參閱Amazon ECS任務IAM角色

      僅顯示具有 ecs-tasks.amazonaws.com 信任關係的角色。如需如何為任務建立IAM角色的指示,請參閱 建立任務IAM角色

    2. 任務執行角色中,選擇任務執行角色。如需詳細資訊,請參閱Amazon ECS任務執行IAM角色

  11. (選用) 若要覆寫容器命令和環境變數,請展開 Container Overrides (容器覆寫),然後展開容器。

    • 若要將命令傳送至任務定義命令以外的容器,針對 Command override (命令複寫),請輸入 Docker 命令。

    • 若要新增環境變數,選擇 Add Environment Variable (新增環境變數)。針對 Key (索引鍵),輸入您的環境變數的名稱。針對 Value (值),為您的環境值輸入一個字串值 (未使用雙引號 (" ") 括住)。

      AWS 會包圍具有雙引號 (" ") 的字串,並以下列格式將字串傳遞至容器:

      MY_ENV_VAR="This variable contains a string."
  12. (選用) 為協助識別您的任務,請展開 Tags (標籤) 區段,然後設定標籤。

    若要讓 Amazon 使用叢集名稱和任務定義標籤ECS自動標記所有新啟動的任務,請選取開啟 Amazon ECS受管標籤 ,然後選取任務定義

    新增或移除標籤。

    • [新增標籤] 選擇新增標籤,然後執行下列操作︰

      • 索引鍵中,輸入索引鍵名稱。

      • 中,進入索引鍵值。

    • [移除標籤] 在標籤旁邊,選擇移除標籤

  13. 選擇 Create (建立)。