君は心理学者なのか?

大学時代に心理学を専攻しなぜかプログラマになった、サイコ(心理学)プログラマかろてんの雑記。

ECSのコンテナヘルスチェックが数分おきに落ちてしまうときにみたいログ

現象

ECS > クラスター > サービス > イベントを確認した時に、

service *** task **** failed container health checks.

が数分おきに起きている。

調査

1. コンテナインスタンスにログインします

2. /var/log/dockerをみる

tail /var/log/docker

3. そこに原因が書いてある、はず

time="2019-01-29T04:40:19.702116466Z" level=warning msg="Health check for container *** error: OCI runtime exec failed: exec failed: container_linux.go:348: starting container process caused \"exec: \\\"CMD-SHELL curl -f http://localhost/check || exit 1\\\": stat CMD-SHELL curl -f http://localhost/check || exit 1: no such file or directory\": unknown"

今回は、ヘルスチェックコマンドが間違っていたことが原因。

対処

タスクに定義されているコンテナのhealth check設定を、

CMD-SHELL,curl -f http://localhost/check || exit 1

とする。

CMD-SHELL curl -f http://localhost/check || exit 1

ではない。

(確認UIではカンマが消えてしまう謎仕様なので注意...)