Amazon ECS のサービスで「the closest matching container-instance container-instance-id encountered error 'AGENT'」というエラーを解決する方法を教えてください。

最終更新日: 2019 年 7 月 3 日

Amazon Elastic Container Service (Amazon ECS) にタスクを配置しようとすると、次のエラーが表示されます。「[AWS service] was unable to place a task because no container instance met all of its requirements.The closest matching container-instance container-instance-id encountered error 'AGENT'」

簡単な説明

タスクの配置用に指定したコンテナインスタンスで実行中の Amazon ECS コンテナエージェント が切断したときに、このエラーを受け取ることがあります。

注: 上記のエラーメッセージが表示されない場合は、受け取った次のエラーメッセージのいずれかに基づいた記事を選択してください。

解決方法

このエラーを解決するには、次のトラブルシューティング手順を試してください。

エージェントログを確認する

1.    SSH を使用してコンテナインスタンスに接続します

2.    エージェントログ/var/log/ecs/ecs-agent.log.YYYY-MM-DD-HH で確認します。

注: タイムスタンプをログに適したものに置き換えます。

エージェントがインスタンス上で実行されていることを確認する

1.    SSH を使用して EC2 インスタンスに接続します

2.    コンテナのリストを返すには、次のコマンドを実行します。

docker ps

ecs-agent という名前で実行しているコンテナを探します。詳細については、「Amazon ECS エージェントが切断状態で表示されるのは、なぜですか?」をご参照ください。

エージェントを再起動する

Amazon ECS-optimized AMI を使用している場合は、適切なコマンドでエージェントを停止し、再起動します。

Amazon ECS-optimized Amazon Linux 2 AMI の場合は、次のコマンドを実行します。

sudo systemctl restart ecs

Amazon ECS-optimized Amazon Linux AMI の場合は、次のコマンドを実行します。

sudo stop ecs && sudo start ecs