ある晩、監視サービスからアラートメールが飛んできた。このウェブサーバーがダウンした模様。原因は読み込みタイムアウトだって。500とかじゃなくてタイムアウト?早速調べるためにssh接続を試みるもログインプロンプトさえ表示されない。やばい予感、マジで焦る。
DigitalOceanのコントロールパネルからサーバーのロード状態を見ると、CPU負荷が140%、ディスクアクセスが2MB/sを超えている。普段はCPU負荷は10%を超えることは稀で、ディスクアクセスも常時ゼロに等しい。明らかに何かが起きているな。コントロールパネルからコンソール接続を試みるも反応無し。もう打つ手無しと諦めてDropletを電源オフする。少し待って再投入したところ、元の静かな状態に戻った。
以下がロード状態のグラフ。8:00pmごろから負荷が急激に上がっている。再起動したことで元の状態に戻ったので、高負荷状態は20分以内で収まった。もし外出先とかですぐ対応できなかったらと思うと恐ろしい。
原因は何だったのだろうか。最初に疑ったのはDDoS。Apacheのログを見たんだけど、疑わしいアクセスは十数件程度しか記録されていない。それは異なるGeoロケーションからのアクセスだけどAgentはどれも同じ名前のロボット。各地のマシンを踏み台にして集中アクセスしてきたのだろうか。だとしたらログ件数が少なすぎる。こんな弱小サイトが、ウェブサーバーでログが記録できなくなるほどの集中砲火を浴びるとは考え難いよなぁ。
他の可能性としては、サーバー上で稼動するソフトの暴走とか?。でも、サーバー上のログを一通り目を通してみたけど、怪しい挙動を示すものは見つからず。もう何ヶ月も同じコンフィギュレーションで稼動させているけど、こんなことが起こったのは初めて。原因がわからないのは気持ち悪いけど、いろいろ考えて出来る限りの方策はしておかないとなーと実感した出来事だった。