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

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

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

您可以透過 AWS 管理主控台為一次性程序建立任務。

建立獨立任務 (AWS 管理主控台)
  1. 開啟主控台,網址為 https://console.aws.amazon.com/ecs/v2

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

    啟動服務的資源 步驟

    叢集詳細資訊頁面

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

    2. 任務索引標籤中,選擇執行任務

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

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

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

  3. 現有叢集欄位中選擇叢集。

    選擇建立叢集以在新叢集上執行任務

  4. 選擇任務在叢集基礎結構中的分佈方式。在運算組態下,選擇選項。若要使用容量提供者策略,必須在叢集層級設定容量提供者。

    如果尚未將叢集設定為使用容量提供者,請改用啟動類型。

    如果想要在 Amazon ECS 受管執行個體上執行工作負載,必須使用容量提供者策略選項。

    分發方法 步驟

    容量提供者策略

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

    2. 選擇策略:

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

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

    注意

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

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

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

    3. (選用) 使用 Fargate 時,在平台版本欄位中指定要使用的平台版本。如果未指定平台版本,將使用 LATEST 平台版本。

  5. 部署組態下,執行下列動作:

    1. 任務定義欄位中輸入任務定義。

      重要

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

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

    3. 任務群組欄位中輸入任務群組名稱。

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

    1. 針對 VPC,選擇要使用的 VPC。

    2. 針對子網路,在 VPC 中選擇一個或多個子網路,而任務排程器在放置任務時會考慮該 VPC。

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

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

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

  7. 如果任務使用的資料磁碟區與部署時的組態相容,則可透過展開磁碟區區段對磁碟區進行設定。

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

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

    Amazon EBS

    1. EBS 磁碟區類型欄位中,選擇要連接至任務的 EBS 磁碟區類型。

    2. 大小 (GiB) 欄位中,輸入磁碟區大小的有效值 (以 GiB 為單位)。您可以指定磁碟區大小 (大小下限 1 GiB,大小上限 16,384 GiB)。除非提供快照 ID,否則需要此值。

    3. IOPS 欄位中,輸入磁碟區應提供的輸入/輸出操作次數 (IOPS) 上限。此值僅可針對 io1io2gp3 磁碟區類型設定。

    4. 輸送量 (MiB/s) 欄位中,輸入磁碟區應提供的輸送量 (以 MiBps 或 MiB/s 為單位)。此值僅可針對 gp3 磁碟區類型設定。

    5. 快照 ID 欄位中,若想從快照建立磁碟區,請選擇現有的 Amazon EBS 磁碟區快照或輸入快照的 ARN。您也可以不選擇或不輸入快照 ID,建立新的空白磁碟區。

    6. 如果指定了快照 ID,則可指定磁碟區初始化速率 (MiB/s)。輸入一個介於 100 至 300 MiB/s 之間的值,該值將決定從使用快照 ID 指定的快照在建立磁碟區時載入資料的速度。

    7. 終止政策欄位中,如果希望在任務終止後保留為連接至任務而設定的磁碟區,請取消選取核取方塊。依預設,在任務終止後,會刪除連接至任務的 EBS 磁碟區。

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

    9. 基礎結構角色欄位中,選擇具有必要許可的 IAM 角色,以允許 Amazon ECS 管理任務的 Amazon EBS 磁碟區。您可以將 AmazonECSInfrastructureRolePolicyForVolumes 受管政策連接至該角色,也可參照該政策建立並連接自己的政策,該政策需具有符合特定需求的許可。如需有關必要許可的詳細資訊,請參閱 Amazon ECS 基礎設施 IAM 角色

    10. 若想依預設設定使用 Amazon EBS 加密,請在加密欄位中選擇預設值。如果您的帳戶已預設設定加密,則會使用設定中指定的 AWS Key Management Service (AWS KMS) 金鑰來加密磁碟區。如果選擇預設,但未開啟 Amazon EBS 預設加密,則磁碟區將取消加密。

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

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

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

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

      如果要從任務定義傳播標籤,請在傳播標籤來源欄位中選擇任務定義。如果選擇不傳播,或者未選擇任何值,則不會傳播標籤。

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

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

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

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

    • AZ 平衡分散 – 將任務分散到可用區域和可用區域中的容器執行個體。

    • AZ Balanced BinPack – 在可用區域和具有最少可用記憶體的容器執行個體之間分配任務。

    • BinPack – 根據最低可用 CPU 或記憶體數量來分發任務。

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

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

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

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

      您最多可新增 5 項策略。

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

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

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

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

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

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

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

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

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

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

      AWS 以雙引號 (" ") 括住字串,並以下列格式將字串傳遞至容器:

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

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

    新增或移除標籤。

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

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

      • 中,進入索引鍵值。

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

  12. 選擇建立