迷えるIT子羊の忘備録

よろず屋Linaちゃんの忘備録

502 bad gateway

502 bad gate way

先日、AWSのEC2の再起動をかけたら、こんなのが出ました。

f:id:lina_marble:20160412153333p:plain

502….bad gate way …???

とりあえずググりますが、
ロードバランサーがどうとかこうとか….

ふむ。とりあえず、nginxに何か問題があるのかな….と思い、
nginxのerror.logを見てみます。(/var/log/nginx)

nginx: connect() failed (111: Connection refused) while connecting to upstream

接続が拒否されて、ソケットが動いてない、、、、だと、、、?

unicorn.rbは特にいじった記憶がありません。
先ほどまで普通に動いていたのに、、、

とりあえず、unicornがうまく起動していないとのことだったので、 下記サイトを参考にソケットのパス指定など試行錯誤。

Capistrano3 + Rails4 + Unicorn + Nginx + EC2でサーバー構築! - Qiita

そこでふと気づきます。 ***/shared/tmp/pidsに、unicorn.pidが生成されていないことに….

どうやら、先に走ってるプロセスがうまく死んでないときにデプロイしたことが原因で、pidファイルが生成されていなかったようです…

プロセスを殺し、再度デプロイすると……

動いた!!!!!

ということで、capistranoでデプロイするときは、
ps ax | grep unicorn で今走ってるプロセスがないか確認したほうが良いそうです。

辛かったけど、めっちゃ勉強になった。