るみくるサーバ障害

この文書は、21日(月)朝に『犬夜叉考察』の「運営掲示板」に投稿したものです。但し、こまかい表現などはいくつか修正されてます。

前回までのあらすじ

18日(金)夕方から現在(21日)に至るまで、『犬夜叉考察』の「フォーラム(犬夜叉フォーラム)」及び「おえびB(お絵描き掲示板B)」が停止しています。これは、それらのCGIスクリプトが置かれている「るみくるサーバ( www.rumic.gr.jp )」のサービスが停止しているからです。なお、「おえびA」が不安定なのは「おえびB」停止によって単純に「おえびA」へアクセスが集中しているからだと思います。

さて、るみくるサーバダウンによる影響は「フォーラム」及び「おえびB」が停止するだけではありません。非常に深刻なことに、るみくるサーバーにある全てのWWWサイトとメールサービスなどが停止しているのです。るーみっく系最古参のサイトうる星系の最大手のサイトやいくつかのメーリングリストなども使用不能になっています(そして、私のサイトもメールアドレスも使用不能になっています)。

状況の推移

サーバの復旧には管理会社に申請しリブートしてもらうことが必要です。19日(土)朝、管理会社によるリブートによっていったんは復旧しましたが、その後すぐに再びダウンしました。20日(日)昼も同様でした。

サーバダウンの原因

管理会社から「サーバダウンの原因はスワップ領域を使い果たした為に起こっているものと思われます」と報告がありました(20日午後)。るみくるサーバにあるコンテンツでそのような挙動を示すものは限られています。具体的に言うと、『犬夜叉考察』の「おえびB(/pict/picture.cgi)」及び「おえびB軽量版(/pict/nph-picture.cgi)」です。

これらのCGIスクリプトについて「運営掲示板」の発言No.7184(SIMOONさん)によれば「現在使用されているスクリプトは、全テキストログがひとつのファイルにまとめられているために次第に肥大化し、表示時の処理では何回もループさせるのでメモリ消費量が激しいという点がもっとも問題であると認識しています。この処理をどうにか出来ないかと考えてみたのですが、仕様そのものを変更しないかぎり大幅な改善はないと結論しました。」とのこと。そして、夏休み(あるいは連休)に入ったこともあり「おえびB」にアクセスが集中したものと推察できます。

これらを併せ考えるに、『犬夜叉考察』の「おえびB」&「おえびB軽量版」がサーバダウンの原因と思われます。

対策そのものは簡単だが…

対策そのものは単純なのですが、その実施にはとてもやっかいなことがあります。先述したように、サーバの復旧には管理会社によるリブートが必要です。何時何分にリブートがなされるのかは不明です。そして、サーバが復旧したとしても「おえびB」にアクセスが集中すると再びサーバはダウンしてしまいます。従って、サーバが復旧してから対策を施すまでの間ずっと「おえびB」へのアクセスは控えてもらわなければなりません

これがどんなに難しいことか想像できるでしょうか?!。現在の「おえびB」は閲覧するだけでもCGIスクリプトが稼動する仕様であり、通常なら毎日数千回のアクセスがあるのです(毎日の投稿件数から推定)。『犬夜叉考察』から「おえびB」へのリンクを外したところで、お気に入り(ブックマーク)や履歴などからダイレクトにアクセスする人がいるでしょう。アクセスを控えるように呼びかけても、それを無視する人もいるでしょう。そして、検索エンジンのロボットの巡回も予想されます。

そこで、「おえびB(暫定)を別サーバに移してそちらにみんなを呼び寄せる」ことを『犬夜叉考察』に対して提案します。他にも良い案があったら是非とも教えて欲しいです。特に、『犬夜叉考察』運営委員立候補者各位に期待します。

もちろん、管理会社には「次回のリブート時に当該CGIを実行不能に」しておいてもらうよう申請します。

追記 20030721夕方

21日(月)15時頃、るみくるサーバが復旧しました。すぐに電話で毛利さん(旅行中)から許可を貰い「お絵描き掲示板B」のCGIスクリプトを通常版・軽量版ともども暫定的にリネームし元の名前でリクエストしても実行できない状態にしました。従って、お絵描き掲示板Bへのアクセスを控えるよう呼びかける必要はもはやなくなりました!

サーバの完全復旧の確認にはもうすこし時間がかかります。

追記 20030722

サーバ管理人の三浦%店長さんによれば「ログを見てみると今回計3回のリブートを行なったわけですが、いずれもリブート後3分以内にswap不足エラーになっていました」とのこと。少し気になったので、表示時の処理では何回もループさせるという肥大化した「おえびBテキストログ」というのをあらためて調べてみました。

ファイルサイズの2メガバイトって何ですか?(笑)

追記 20040511

http://mm.apache.or.jp/pipermail/newbie/2001-February/000430.html

Satoshi ARAI ( arai@rumic.gr.jp )