「配電盤の電源を切る」


Advent Calendar 2021 本番環境でやらかしちゃった人
12/6日の記事です。

本番環境でやらかしたことのうち、電源系を中心に整理。

配電盤の電源を切る。

30年以上前のことで、記憶が一部あいまいかもしれません。

無停電電源装置など、電源系の機器があり、配電盤の電源を切ると、システムが自動的に落ちるように設計してあったはず。

システムが暴走していて、応答がなくなり、装置の電源ボタンを押しても落ちない。
定常業務の終了時間を待って、最後の手段の配電盤の電源を切った。

無事、システムは止まり、配電盤の電源を入れて、システムの電源を入れた。

強制終了したことに対する警告の画面が出て、システムは立ち上がった。

暴走する前に走らせていたいくつかのプログラムは起動しないように、他の仕事を実行した。

システムが暴走していたため、定常業務で定時に終わっていなかった仕事が一部はじまったのかもしれない。

惨劇はなぜおこってしまったのか

大規模なデータを計算して記録するプログラムを走らせ、
計算するメモリも保存するディスクも足りなくなったことを想定。

二度と惨劇を起こさないためにどうしたのか

プログラムを走らせる前に、必要なメモリ、必要なディスクを見積もり、
必ず空き要領の半分未満のプログラムしか走らせないようにした。

システムの電源断のボタンを押す

システム暴走のうち、何度かはシステムの電源断ボタンを押して、一部異常終了したものの、
5分待って、電源を入れたら、無事システムが立ち上がった。

惨劇はなぜおこってしまったのか

3年くらいかかる計算を始めてしまい、他のプログラムが走らなくなったらしい。

二度と惨劇を起こさないためにどうしたのか

プログラムが暴走しはじめて、そのプログラムを終了させるプログラムが動かないことをあらかじめ想定して、3日異常かかるプログラムは原則、走らせない。走らせる場合には、毎日、中間結果を保存して、途中から再開できるようにする。