翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon ECS タスクの配置
タスク配置戦略は、タスク配置または終了するタスクのコンテナインスタンスを選択するためのアルゴリズムです。例えば、Amazon ECS はコンテナインスタンスをランダムに選択することも、タスクがインスタンスのグループ全体に均等に分散されるようにコンテナインスタンスを選択することもできます。
タスク配置の制約事項は、タスク配置中に考慮されるルールです。例えば、アベイラビリティーゾーンやインスタンスタイプに基づいたタスク配置の制約を使用できます。名前と値のペアである属性をコンテナインスタンスに関連付け、属性に基づいて制約事項を使用しタスクを配置することもできます。
EC2 起動タイプ
EC2起動タイプを使用するタスクを起動するとき、Amazon ECSではタスク定義で指定されている CPU やメモリなどの要件に基づいてタスクを配置する場所を決定する必要があります。同様に、タスク数を減らすときも、Amazon ECS でどのタスクを終了させるか決定する必要があります。タスク配置の戦略と制約を適用することで、Amazon ECS がタスクを配置および終了する方法をカスタマイズできます。
デフォルトのタスク配置戦略は、タスクを手動で (スタンドアロンタスク) 実行するか、サービス内で実行するかによって異なります。Amazon ECS サービスの一部として実行されるタスクの場合、タスク配置戦略は attribute:ecs.availability-zone
を使用した spread
です。サービス内のタスクには、デフォルトのタスク配置の制約はありません。詳細については、「Amazon ECS でのコンテナのスケジュール」を参照してください。
注記
タスク配置戦略はベストエフォートです。Amazon ECSは、最適な配置オプションが利用できない場合でも、タスクの配置を試みます。ただし、タスク配置の制約が有効な場合、タスクを配置できないことがあります。
タスク配置戦略と制約は併用できます。例えば、タスク配置戦略とタスク配置制約を使用して、アベイラビリティーゾーン間でタスクを分散し、各アベイラビリティーゾーン内のメモリに基づいてビンパックタスクを分散できます。ただし、G2 インスタンスのみです。
Amazon ECSがタスクを配置する際は、以下のプロセスでコンテナインスタンスを選択します。
-
タスク定義の CPU、GPU、メモリ、およびポートの要件を満たすコンテナインスタンスを特定します。
-
タスク配置の制約を満たすコンテナインスタンスを特定します。
-
タスク配置戦略を満たすコンテナインスタンスを特定します。
-
タスクを配置するコンテナインスタンスを選択します。
Fargate 起動タイプ
タスク配置戦略および制約事項は、Fargate 起動タイプを使用しているタスクをサポートしていません。Fargate は、アクセス可能なアベイラビリティーゾーンにタスクを分散するよう最善を尽くします。キャパシティープロバイダーに Fargate と Fargate Spot の両方が含まれている場合、スプレッドの動作はキャパシティープロバイダーごとに異なります。