本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
的元件 AWS Batch
AWS Batch 簡化跨區域內多個可用區域的執行中批次任務。您可以在新的或現有的 VPC 中建立 AWS Batch 運算環境。在運算環境設置完畢並與任務佇列關聯後,您可以定義任務定義,即指定由哪個 Docker 容器映像來執行您的任務。容器映像是從容器登錄檔儲存和提取,可能來自您的 AWS 基礎設施的內部或外部。

運算環境
運算環境是一組受管的或未受管的運算資源,用於執行任務。使用受管運算環境,您可以在多個細節層級指定所需的運算類型 (Fargate 或 EC2)。您可以設定使用特定 EC2 執行個體類型的運算環境,例如 c5.2xlarge
或 等特定模型m5.10xlarge
。或者,您可以選擇只指定您想要使用最新的執行個體類型。您也可以指定環境的最小、所需和最大 vCPUs 數量,以及您願意為 Spot 執行個體支付的金額,以隨需執行個體價格和一組 VPC 子網路的目標百分比表示。 會視需要 AWS Batch 有效率地啟動、管理和終止運算類型。您也可以管理自己的運算環境。因此,您有責任在為您 AWS Batch 建立的 Amazon ECS 叢集中設定和擴展執行個體。如需詳細資訊,請參閱的運算環境 AWS Batch。
任務佇列
當您提交 AWS Batch 任務時,您會將其提交至特定任務佇列,在任務排程到運算環境之前,該任務位於該佇列中。您可以將一或多個運算環境與任務佇列建立關聯。您也可以指派這些運算環境的優先順序值,甚至是跨任務佇列本身。例如,您可以有一個提交時間敏感任務的高優先順序佇列,以及當運算資源較便宜時隨時可執行之任務的低優先順序佇列。如需詳細資訊,請參閱任務佇列。
任務定義
任務定義會指定任務的執行方式。您可以將任務定義視為任務中資源的藍圖。您可以為任務提供 IAM 角色,以提供對其他 AWS 資源的存取權。您也可以同時指定記憶體和 CPU 需求。任務定義也可以為持久性儲存控制容器屬性、環境變數和掛載點。當提交單一任務時,在任務定義中的許多規格,可以指定新的值予以覆寫。如需詳細資訊,請參閱任務定義
任務
您提交到 AWS Batch的工作單位 (如 shell 指令碼、Linux 可執行檔,或 Docker 容器映像)。它具有名稱,並使用您在任務定義中指定的參數,在運算環境中的 AWS Fargate 或 Amazon EC2 資源上做為容器化應用程式執行。任務可以依名稱或 ID 參考其他任務,並且可以取決於其他任務成功完成或您指定的資源可用性。如需詳細資訊,請參閱任務。
排程政策
您可以使用排程政策來設定如何在使用者或工作負載之間配置任務佇列中的運算資源。使用公平共用排程政策,您可以將不同的共用識別符指派給工作負載或使用者。 AWS Batch 任務排程器預設為先進先出 (FIFO) 策略。如需詳細資訊,請參閱公平共用排程政策。
消耗性資源
消耗性資源是執行任務所需的資源,例如第三方授權字符、資料庫存取頻寬、調節對第三方 API 的呼叫等。您可以指定任務執行所需的消耗性資源,而 Batch 在排程任務時會將這些資源相依性納入考量。您可以只配置具有所有必要資源的任務,以減少運算資源的使用不足。如需詳細資訊,請參閱資源感知排程 。