Amazon ECS任務置放限制範例 - Amazon Elastic Container Service

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

Amazon ECS任務置放限制範例

下列是任務置放條件限制的範例。

此範例使用 memberOf 限制條件將任務放置在 t2 執行個體上。您可以使用下列動作來指定:CreateServiceRegisterTaskDefinitionUpdateServiceRunTask

"placementConstraints": [ { "expression": "attribute:ecs.instance-type =~ t2.*", "type": "memberOf" } ]

範例使用 memberOf 限制條件以便將複本任務與常駐程式服務 daemon-service 任務群組中的任務放置到執行個體上,還要顧及其他被指定的任何任務置放策略。此限制可確保常駐服務任務在複本服務任務之前放置在EC2執行個體上。

以常駐程式服務的名稱取代 daemon-service

"placementConstraints": [ { "expression": "task:group == service:daemon-service", "type": "memberOf" } ]

範例使用 memberOf 限制條件以便將任務與 databases 任務群組中的其他任務放置到執行個體上,還要顧及其他被指定的任何任務置放策略。如需有關任務群組的詳細資訊,請參閱 群組相關的 Amazon ECS任務 。您可以使用下列動作來指定:CreateServiceRegisterTaskDefinitionUpdateServiceRunTask

"placementConstraints": [ { "expression": "task:group == databases", "type": "memberOf" } ]

distinctInstance 條件限制會在不同執行個體的群組中放置每個任務。可以使用下列動作來指定:UpdateServiceCreateServiceRunTask

Amazon ECS會查看任務置放所需的任務狀態。例如,如果現有任務的所需狀態為 STOPPED, (但最後一個狀態不是),則即使distinctInstance置放受到限制,新的傳入任務仍可放置在相同的執行個體上。因此,您可能會在同一個執行個體RUNNING上看到最後狀態為 的 2 個任務。

"placementConstraints": [ { "type": "distinctInstance" } ]