2009/06/20

情報システム部屋さん

今日の夕方システムの不調が発生。システムの事を理解していないながらも対応を迫られる。

まずシステムにログインする方法を探す。運よく引継ぎ資料にあった。Tomcatが応答していないようだ。「使えない」というクレームがきているということは使えてる人はまずいないということで、問答無用に落とす。そして起動する。

ところが起動しない。何度やってもダメだ。特定のポートが云々言っている。こういう場合幾つか考えられる。
  • そのポートを使ってるプログラムがシグナルに応答しない→終了しない→再起動してきた同じプログラムがポートに繋げない
  • Well Known ポートでない場合や、特権範囲外のポートの場合、外部接続用のポートとして使われてしまっているとか
  • システムのメモリ上の情報が異常となってしまっている
  • ディスク関係のトラブル
今回の場合上二つは大丈夫だった。となると再起動したくなる。どうせサービスとしては停止しているのだからと「えいやっ」と決断した。が、甘かった。

前に運用を担当していた時は、まずpingを-tで打って、正常アクセスを確認している状態でshutdown -r nowみたいな感じでやっていた。しかも起動時にfsckとか動いてしまうと怖いからtune2fsとか使って起動時にfsckが絶対動かないようにしたりしていた。

今回はそんな事を調べることも考える余裕もなかった。あわててpingを打ったが当然ながら応答無し。そこから待つこと10分。流石にヤバイ。応答がない。fsckでエラーが出たか、fsに異常があってシングルユーザモードに落ちたか。もしかしてCDブートを切るのを忘れてて、かつCDを抜き忘れたとか。まさかboot時に特別な操作が必要なんてないよな、https使ってたな、SSLのフレーズ大丈夫かななんて超ブルー、だけど頭上では赤いパトランプ回転しまくり状態になった。

そこから慌てて対策を検討、連絡が取れるはずもない前任者の携帯番号を聞き出して電話するものの応答なし。別サーバからなら裏LANでアクセスできたりするかもしれないと考えて踏み台サーバにアクセスするも無応答。サービスを止め続けてしまったら大事だから事務所に飛んだ。

無応答だった踏み台サーバは熱暴走風味。古いノートでファンがガラガラ言ってたからそれが原因だろう。その サーバを再起動し、そこを踏み台に別サーバにアクセス。そこ経由で問題のサーバにアクセスするとなぜか応答あり。

とすると表LANが死んでるのか?と思って逆方向にpingするとちゃんと応答がある。ということはfirewallかと思って確認してもフィルタは空っぽ。なんでだーと探し回るとルーティングの設定が変なことに気づく。他とdefaultルートが異なってる。ただ直してみたが状況変わらず。

色々調べたり情報を聞きまわったりした結果、設置しているデータセンターのfirewallがちょっと曲者で、過去何度もアクセスをブロックされてしまった事があるらしい。しかもsshでのアクセスは通常の22番ではなくてちょっと変わったポート番号。

と言う話を頭でぐるぐるするとと閃いた。22番はうちでもアタックをよく受けていて半自動的にフィルタしていた。多分そのfirewallは22番宛でアクセスがあると即シャットアウトするのだろう。80番とか443番とかを空けるのは当然として、それ以外は基本honey potよろしくアタックのトリガとして検知しているのではないか。確かに自分は間違ってデフォルトでsshを実行してしまっていた。

ということで協力エンジニアに再確認。どうも外部向けのページは正常にアクセスできているらしい。なるほどっ。そんなこと引継ぎ資料に書いておいて欲しいところだ。おかげで4時間とガソリンを無駄にした。

結局詳細を知らないシステムは運用できない。できるのはルーチンワークだけだ。特に前任者不在とか引継ぎ不可能といったシステムはその後まともな運用にならないケースがほとんどだ。持って数年。その後「使えないシステム」の烙印を押されてリプレースの憂き目にあう。今回は立ち上げ直後だ。にもかかわらず運用の前任者はおろか開発者にすらまともに連絡が出来ない状況である。更に言えば社内システムすら管理者が消え、ネットワークの把握からの話になってしまっている。引き受けてから10日。こんな状態では保守開発にこぎつけるまでにはかなりの時間がかかりそうだ。

P.S.
調べてみると今日は情シスオフなんてのがあったらしい。なんだよ。行きたかったなぁ。でも行ってても今回のトラブルで結局飲み会の部は参加できなかった訳だし、まぁ次回参加予告でもしておこう。

0 件のコメント:

コメントを投稿