会社が入っているビルで停電があるということで、検証に使っていたサーバーをシャットダウンしました。朝出社して必要なサーバーを電源オンにしたのですが、ほとんどのサーバーは手を入れることなく無事に動いたのですが、Gitlabだけ500エラーを吐いて、いつまでたっても復旧しなくなってしまいました。
sudo gitlab-ctl status
と実行すると、Gitlabのサービスごとのステータスを一覧表示できます。このコマンドで確認したところ、どうやらPostgreSQLが問題あるようです。
ログを見たら...postmaster.pidが残っているみたいなメッセージが。消せば良いみたいですね。
# less /var/log/gitlab/postgresql/current ... HINT: If you're sure there are no old server processes still running, remove the shared memory block or just delete the file "postmaster.pid". ...
というわけで、次のように処理して復旧です。
# cd /var/opt/gitlab/postgresql/data/ # mv postmaster.pid postmaster.pi_ # gitlab-ctl restart
以上で500エラーが解消し、Gitlabのログイン画面が無事表示されるようになりました。