ECSエージェントのトラブルシューティング

EC2タイプのECSでインスタンスを再作成した所、ECSエージェントが起動しないトラブルが発生しました。
その際に、調べた情報を残しておきます。

ECSエージェントとは

ECSのインスタンス上で動作するDockerコンテナを管理するコンテナです。
AWSのコンソール上からタスクを操作(起動や停止など)すると、このエージェントを通して、Dockerコンテナを操作しているようです。
インスタンス上でdocker psを実行するとamazon/amazon-ecs-agent:latestというコンテナが動いていますが、これがECSエージェントです。

ECSエージェントのログについて

大まかに以下2つのログを見ることになりそうです。

ecs-agent.log

実行中のログがこのファイルに記録されるようです。
/var/log/ecs/ecs-agent.logに配置されています。

ecs-init.log

起動時のログがこのファイルに記録されるようです。
/var/log/ecs/ecs-init.logに配置されています。

上記のログに関する公式ドキュメントは以下にあります
https://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/logs.html

ECSエージェントの再起動

ECSエージェントはコンテナですが、systemdで管理されています。
以下のコマンドで再起動できます。

sudo systemctl restart ecs

ちなみに、systemdの設定ファイルは/etc/systemd/system/multi-user.target.wants/ecs.serviceにあります

コメントする