Amazon ECS での API エラーの原因 - Amazon Elastic Container Service

Amazon ECS での API エラーの原因

Amazon ECS API、コンソール、または AWS CLI でトリガーした API アクションが failures エラーメッセージを表示して終了した場合、以下が原因のトラブルシューティングに役立つことがあります。失敗すると、その理由と、その失敗に関連付けられたリソースの Amazon リソースネーム (ARN) が返されます。

多くのリソースはリージョン固有であるため、コンソールを使用するときは、リソースに正しいリージョンを設定してください。AWS CLI コマンドを使用するときは、AWS CLI コマンドが --region region パラメータで正しいリージョンに送信されるようにします。

Failureデータ型の構造の詳細については、「Amazon Elastic Container サービス API リファレンス」の[Failure(失敗)]を参照してください。

次の内容は、API コマンド実行時に受信する場合がある障害メッセージの例です。

API アクション

[失敗] の理由または [停止] の理由

原因

DescribeClusters

MISSING

指定されたクラスターは見つかりませんでした。クラスター名が正しく入力されているか確認します。

DescribeInstances

MISSING

指定されたコンテナインスタンスは見つかりませんでした。コンテナインスタンスが登録されているクラスターを指定したこと、およびコンテナインスタンスの ARN または ID の両方が正しいことを確認します。

DescribeServices

MISSING

指定されたサービスは見つかりませんでした。正しいクラスターまたはリージョンが指定されていること、サービス ARN またはサービス名が有効であることを確認します。

DescribeTasks

MISSING

指定されたタスクは見つかりませんでした。正しいクラスターまたはリージョンが指定されており、タスク ARN または ID の両方が有効であることを確認します。

DescribeTasks

TaskFailedToStart: RESOURCE:*

RESOURCE:CPU エラーの場合、タスクによって要求された CPU の数がコンテナインスタンスで利用できません。これは通常、タスク定義の CPU ユニット要件が、キャパシティプロバイダーにマッピングされた Auto Scaling グループで定義される Amazon EC2 インスタンスの CPU サイズよりも大きい場合に発生します。キャパシティプロバイダーの設定を確認する必要があります。

RESOURCE:MEMORY エラーの場合、タスクによって要求されたメモリの量がコンテナインスタンスで利用できません。これは通常、タスク定義のメモリ量要件が、キャパシティプロバイダーにマッピングされた Auto Scaling グループで定義される Amazon EC2 インスタンスでサポートされているメモリよりも大きい場合に発生します。キャパシティプロバイダーの設定を確認する必要があります。

TaskFailedToStart: AGENT

タスクを起動しようとしたコンテナインスタンスに、現在接続されていないエージェントがあります。タスク配置の待ち時間が長くならないように、リクエストは拒否されました。

切断されたエージェントをトラブルシューティングする方法については、「切断された Amazon ECS エージェントをトラブルシューティングするにはどうすればよいですか?」を参照してください。

TaskFailedToStart: MemberOf placement constraint unsatisfied

タスク定義で定義された配置制約を満たすコンテナインスタンスがありません。

TaskFailedToStart: ATTRIBUTE

タスク定義に、コンテナインスタンスで使用できない特定のコンテナインスタンス属性が必要なパラメータが含まれています。例えば、awsvpc ネットワークモードを使用するタスクであるものの、指定したサブネット内に、ecs.capability.task-eni 属性を持つインスタンスがありません。特定のタスク定義パラメータとエージェント設定変数に必要な属性の詳細については、「Amazon ECS タスク定義パラメータ」と「Amazon ECS コンテナエージェントの設定」を参照してください。

TaskFailedToStart: NO ACTIVE INSTANCES キャパシティプロバイダーにアクティブなインスタンスがありません。Auto Scaling グループの管理方法については、「Amazon EC2 Auto Scaling ユーザーガイド」の「Auto Scaling グループ」を参照してください。

TaskFailedToStart: EMPTY CAPACITY PROVIDER

クラスターにはインスタンスはありません。これは、キャパシティープロバイダーが空であるか、キャパシティープロバイダーのインスタンスがクラスターに登録されていないことが原因と考えられます。Auto Scaling グループの管理方法については、「Amazon EC2 Auto Scaling ユーザーガイド」の「Auto Scaling グループ」を参照してください。

GetTaskProtection

MISSING

指定されたタスクは見つかりませんでした。クラスター名または ARN、タスク ARN または ID が有効であることを確認します。

TASK_NOT_VALID

指定されたタスクは、Amazon ECS サービスの一部ではありません。保護できるのは Amazon ECS サービスの管理対象タスクだけです。タスク ARN または ID を確認して、もう一度お試しください。

RunTask、または StartTask

RESOURCE:*

タスクでリクエストされたリソースまたは複数のリソースは、クラスターのコンテナインスタンスで使用できません。リソースが CPU、メモリ、ポート、または Elastic Network Interface の場合は、クラスターへのその他のコンテナインスタンスを追加する必要がある場合があります。

RESOURCE:ENI エラーの場合、awsvpc ネットワークモードを使用するタスクで必要な Elastic Network Interface アタッチメントポイントが、クラスターで利用できません。Amazon EC2 インスタンスには、アタッチできるネットワークインターフェイスの数には制限があり、プライマリネットワークインターフェイスも 1 つ分としてカウントされます。各インスタンスタイプでサポートされるネットワークインターフェイスの数の詳細については、「Amazon EC2 ユーザーガイド」の「各インスタンスタイプのネットワークインターフェイスあたりの IP アドレス数」を参照してください。

RESOURCE:GPU エラーの場合、タスクでリクエストされた GPU 数が利用できないため、クラスターへ GPU 対応のコンテナインスタンスの追加が必要になる場合があります。詳細については、「GPU ワークロード向けの Amazon ECS タスク定義」を参照してください。

AGENT

タスクを起動しようとしたコンテナインスタンスに、現在接続されていないエージェントがあります。タスク配置の待ち時間が長くならないように、リクエストは拒否されました。

切断されたエージェントをトラブルシューティングする方法については、「切断された Amazon ECS エージェントをトラブルシューティングするにはどうすればよいですか?」を参照してください。

LOCATION

タスクを起動しようとしたコンテナインスタンスが、awsVpcConfiguration で指定したサブネットと異なるアベイラビリティーゾーンにあります。

ATTRIBUTE

タスク定義に、コンテナインスタンスで使用できない特定のコンテナインスタンス属性が必要なパラメータが含まれています。例えば、awsvpc ネットワークモードを使用するタスクであるものの、指定したサブネット内に、ecs.capability.task-eni 属性を持つインスタンスがありません。特定のタスク定義パラメータとエージェント設定変数に必要な属性の詳細については、「Amazon ECS タスク定義パラメータ」と「Amazon ECS コンテナエージェントの設定」を参照してください。

StartTask

MISSING

タスクを起動しようとした対象のコンテナインスタンスが見つかりません。間違ったクラスターまたはリージョンが指定されていたり、コンテナインスタンスの ARN または ID が正しく記述されていなかったりしないかを確認してください。

INACTIVE

タスクを起動しようとしたコンテナインスタンスは、Amazon ECS ですでに登録解除されており、使用できません。

UpdateTaskProtection

DEPLOYMENT_BLOCKED

1 つ以上の保護されたタスクが原因で、サービスのデプロイが安定した状態に移行できず、タスク保護を設定できません。既存のタスクに対するタスク保護の設定を解除するか、タスク保護の有効期限が切れるまでお待ちください。

MISSING

指定されたタスクは見つかりませんでした。クラスター名または ARN、タスク ARN または ID が有効であることを確認します。

TASK_NOT_VALID

指定されたタスクは、Amazon ECS サービスの一部ではありません。保護できるのは Amazon ECS サービスの管理対象タスクだけです。タスク ARN または ID を確認して、もう一度お試しください。

注記

ここで説明した障害シナリオの他に、API 操作が例外によってエラーとなり、エラー応答が発生することもあります。このような例外のリストについては、「一般的なエラー」を参照してください。