本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
Amazon ECS任務置放限制範例
下列是任務置放條件限制的範例。
此範例使用 memberOf
限制條件將任務放置在 t2 執行個體上。您可以使用下列動作來指定:CreateService、RegisterTaskDefinition、 UpdateService和 RunTask。
"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任務 。您可以使用下列動作來指定:CreateService、RegisterTaskDefinition、 UpdateService和 RunTask。
"placementConstraints": [ { "expression": "task:group == databases", "type": "memberOf" } ]
distinctInstance
條件限制會在不同執行個體的群組中放置每個任務。可以使用下列動作來指定:UpdateService、 CreateService和 RunTask
Amazon ECS會查看任務置放所需的任務狀態。例如,如果現有任務的所需狀態為 STOPPED
, (但最後一個狀態不是),則即使distinctInstance
置放受到限制,新的傳入任務仍可放置在相同的執行個體上。因此,您可能會在同一個執行個體RUNNING
上看到最後狀態為 的 2 個任務。
"placementConstraints": [ { "type": "distinctInstance" } ]