【AWS】Redash on EC2 が突然 502 Bad Gatewayになった

AWS

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. 参考

  1. Redash
  2. Setting up a Redash Instance

最近の記事

  1. flutter
  2. GAS
  3. flutter
  4. flutter
  5. etc

制作実績一覧

  1. Checkeys