ホスティングプロバイダーによってサーバーが再起動され、古いコンテナと新しいコンテナ(先週アップグレードされ、ロールバックの必要に備えて古いコンテナを残しておいた)が同時に実行されてしまいました。
現在、新しいコンテナには以下のようなログが繰り返し表示され、何も提供されていません。
(42) 新しいユニコーンマスターPIDを待機中...
(42) 新しいユニコーンマスターPIDを待機中... 1265109
(42) 古いPIDは: 1264439 新しいPIDは: 1265109
シャットダウン中
run-parts: /etc/runit/3.d/01-nginx を実行中
ok: down: nginx: 0s, normally up
run-parts: /etc/runit/3.d/02-unicorn を実行中
(42) 終了します
ok: down: unicorn: 1s, normally up
run-parts: /etc/runit/3.d/10-redis を実行中
ok: down: redis: 0s, normally up
run-parts: /etc/runit/3.d/99-postgres を実行中
ok: down: postgres: 0s, normally up
ok: down: nginx: 2s, normally up
ok: down: postgres: 1s, normally up
ok: down: redis: 1s, normally up
ok: down: unicorn: 2s, normally up
ok: down: cron: 0s, normally up
ok: down: rsyslog: 0s, normally up
run-parts: /etc/runit/1.d/00-ensure-links を実行中
run-parts: /etc/runit/1.d/00-fix-var-logs を実行中
run-parts: /etc/runit/1.d/01-cleanup-web-pids を実行中
run-parts: /etc/runit/1.d/anacron を実行中
run-parts: /etc/runit/1.d/cleanup-pids を実行中
古いPIDファイルをクリーンアップ中
run-parts: /etc/runit/1.d/copy-env を実行中
runsvdir を起動しました、PIDは 34
ok: run: redis: (pid 48) 0s
ok: run: postgres: (pid 44) 0s
supervisor pid: 45 unicorn pid: 76
(45) ログを再オープンします
シャットダウン中
run-parts: /etc/runit/3.d/01-nginx を実行中
ok: down: nginx: 1s, normally up
run-parts: /etc/runit/3.d/02-unicorn を実行中
(45) 終了します
ok: down: unicorn: 0s, normally up
run-parts: /etc/runit/3.d/10-redis を実行中
ok: down: redis: 1s, normally up
run-parts: /etc/runit/3.d/99-postgres を実行中
ok: down: postgres: 1s, normally up, want up
ok: down: nginx: 2s, normally up
ok: down: postgres: 1s, normally up, want up
ok: down: redis: 1s, normally up
ok: down: unicorn: 1s, normally up
ok: down: cron: 0s, normally up
ok: down: rsyslog: 0s, normally up
run-parts: /etc/runit/1.d/00-ensure-links を実行中
run-parts: /etc/runit/1.d/00-fix-var-logs を実行中
run-parts: /etc/runit/1.d/01-cleanup-web-pids を実行中
run-parts: /etc/runit/1.d/anacron を実行中
run-parts: /etc/runit/1.d/cleanup-pids を実行中
古いPIDファイルをクリーンアップ中
run-parts: /etc/runit/1.d/copy-env を実行中
runsvdir を起動しました、PIDは 34
ok: run: redis: (pid 48) 0s
ok: run: postgres: (pid 44) 0s
supervisor pid: 49 unicorn pid: 70
config/unicorn_launcher: line 71: kill: (70) - No such process
config/unicorn_launcher: line 15: kill: (70) - No such process
(49) 終了します
ok: run: redis: (pid 48) 5s
ok: run: postgres: (pid 86) 1s
supervisor pid: 88 unicorn pid: 92
config/unicorn_launcher: line 71: kill: (92) - No such process
config/unicorn_launcher: line 15: kill: (92) - No such process
(88) 終了します
ok: run: redis: (pid 48) 7s
ok: run: postgres: (pid 109) 0s
supervisor pid: 106 unicorn pid: 112
config/unicorn_launcher: line 71: kill: (112) - No such process
config/unicorn_launcher: line 15: kill: (112) - No such process
(106) 終了します
ok: run: redis: (pid 48) 10s
ok: run: postgres: (pid 121) 0s
supervisor pid: 128 unicorn pid: 132
config/unicorn_launcher: line 71: kill: (132) - No such process
config/unicorn_launcher: line 15: kill: (132) - No such process
(128) 終了します
ok: run: redis: (pid 48) 13s
ok: run: postgres: (pid 149) 0s
supervisor pid: 146 unicorn pid: 152
config/unicorn_launcher: line 71: kill: (152) - No such process
config/unicorn_launcher: line 15: kill: (152) - No such process
(146) 終了します
ok: run: redis: (pid 48) 16s
ok: run: postgres: (pid 171) 0s
supervisor pid: 168 unicorn pid: 174
config/unicorn_launcher: line 71: kill: (174) - No such process
config/unicorn_launcher: line 15: kill: (174) - No such process
(168) 終了します
ok: run: redis: (pid 48) 20s
ok: run: postgres: (pid 193) 1s
また、./launcher rebuild はPostgreSQLへの接続エラー(「/var/run/postgresql/.s.PGSQL.5432」そのようなファイルまたはディレクトリはありません)により、新しいコンテナをビルドできません。
両方のアプリが同時に実行され、同じDBにアクセスしていた期間が問題を引き起こしたようです。
これを修復するにはどうすればよいですか?