1. 概要
BIツールとして使っているRedash(*4-1)がある日使えなくなりました。
502 Bad Gateway
原因を調べるためにAWS管理画面を開いてみると、このようになっていました。
※Target groups の Health status が unhealthy で Health checks failed となっていました。
ヘルスチェックは、特定のサーバー上のサービスに、作業を正常に実行できるかどうかを確認する方法です。ロードバランサーは、各サーバーにこの質問を定期的に行い、トラフィックを転送しても安全なサーバーを判断します。
https://aws.amazon.com/jp/builders-library/implementing-health-checks/
2. サーバー状態を確認
2-1. Dockerを確認
# docker ps
Cannot connect to the Docker daemon at unix:/ / /var/run/docker.sock. Is the docker daemon running?
上記のようなメッセージが出ました。
Dockerが実行されてない?正常に動いていたので、少し不思議と思われましたが一応立ち上げてみました。
2-2. Dockerを起動
# cd /opt/redash
# docker-compose up -d
> INTERNAL ERROR: cannot create temporary directory
今度は上記のようにエラーメッセージが出ました。
このエラーメッセージは、システムを運用していて数回出会った事ありましたね。
2-3. ディスク容量が関係してそうなので確認
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 10.0G 10.0G 0 100% /
100%となってました。
3. 復旧作業
3-1. 暫定対応としてDockerのログファイルを削除
# find /var/lib/docker/containers/ -type f -name *.log -delete
3-2. もう一度ディスク容量を確認
# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 10.0G 8.0G 2.0G 80% /
80%まで下がりました。
3-3. もう一度起動
# docker-compose up -d
Starting redash_redis_1 ... done
Starting redash_postgres_1 ... done
Starting redash_scheduler_1 ... done
Starting redash_scheduled_worker_1 ... done
Starting redash_adhoc_worker_1 ... done
Starting redash_server_1 ... done
Starting redash_nginx_1 ... done
今度は正常に立ち上がりました。
3-4. 画面を確認
画面もいつものログイン画面が表示されました。
4. 参考
投稿者プロフィール
-
開発好きなシステムエンジニアです。
卓球にハマってます。