今日の恭麿
HIEDA NET Corpration
 > これは変だよ  > リソース?


 

ファイルサーバのサービス停止

ネットワーク越しにWindows Serverの共有フォルダにアクセスできない事態が発生した。保守チームに報告すると
  「最近多いんだよね。すぐに対応するからまってて。」
という。保守チームでもいつも対応している人は休みということで、ほかの方が対応し始めた。対処方法はローカルログオンして再起動。あっそっ!

保守チームは「兎に角再起動」という方法で対処しているように見えた。障害発生が繰返し起きるようならば、暫定対処ではなく根本解決をと思う。そのためには、原因を探るべきだろう。

pingはReplyするし、ローカルログオンできるのだから、ファイル共有サービス付近の障害だろう。詳しくはイベントログとサービスのプロパティからどのサービスが停止しているのか確認すればよい。
  「原因判っているんですか?。」
  「担当者はわかっている。」
(あなたは知らん、ということ?)

まともな原因追求ができているのならばね障害再発はない、と考えるので、まともに話の通じそうなKMさんに、イベントログの保存方法と停止しているサービスの確認方法を教えた。

停止しているサービスを確認しないで再起動してるとは

まったく、な〜に考えているんだろうね!

後日、再度障害が起きた時には担当者がいたので、同様にログの保存と停止したサービスの確認を教えといた。

リソースって何さ?

小隊長集会でT原さんから保守チームのY川さん

  • 原因をつかんでいるのか
  • どのような対処策を考えているのか
を訊いてもらった。結果、
  • 原因はサーバリソース不足である
  • もう一台サーバを購入して、共有フォルダを分ける予定
という。たかだか200人のアクセスで共有フォルダを分けるほどの負荷があると考えた人がいるようだね。まったくDELLの2650で不足と考えたのかな?または、Windows ServerというOSを過小評価しているのかな?

そして小隊長集会で出席者全員が疑問を持たなかったことに悲しみを感じる。

リソースって資源のことだろう

で、サーバのリソース(資源)のうち、何の資源が足らなくなっているんだ?そんな説明が無いじゃないか!

かっこいいカタカナ言葉に騙されゃった人が多いようだが、リソース=資源 である。今回の障害の原因として誰が「リソース不足」という語を最初に言ったのか知らないが、
  「便乗してサーバを一台買っちゃおうぜ!」
なんて考えている人がいるのだろうか?

メモリリークではない

Windowsで用意しているpagefile.sysや環境変数のTMP・TEMP以外にも、システム使用の一時的フォルダやファイルがディスクの領域を圧迫しているのは確かである。

これらは再起動でディスク領域を開放するものもあるだろう。だからディスクの空き領域が無くなったときにサービス停止し、再起動で解消する、という事象になる。

チョット知ったかの人達は「メモリリーク」という語で今回の障害を説明しているらしいが、CPUとメモリの使用状況を見ると、いわゆるメモリリークの兆候はない。

あるのは、使用してもいないサービスが多々常時起動している事、や

  • Cドライブにシステム
  • Dドライブにアプリケーション
  • Eドライブにデータ
という設計・設定でインストールしてあるサーバを
  • 何でもかんでもデフォルトインストールだかんね〜
  • ユーザプロファイルもデフォルト設定だぜ〜
という阿呆な運用方法である。

こんな使用方法ではCドライブの空き領域がすぐに無くなって、サービス停止障害が出るのもおかしくない。

しかも、管理担当者はそんな事も知らない。解消方法もわからないという。大体、原因追求なんてできないのだろうし。(スキルも無いんだろうし!)

新規購入したサーバとこのサーバと共有フォルダのファイルを分けても何の解決にもならない。当該サーバのCドライブの状況は変わらないので、障害再発必至。共有フォルダのファイルを分けてもCドライブの状況は変わらないのだ。

バッカだねぇ〜、こんなことも判らないなんて

意味のあるいくつかの解決方法は、

  1. 新規購入のサーバに乗り換える
    • 古いサーバをそのまま使用している限り、Cドライブの状況は変わらないので、障害再発必至。
  2. 当該サーバにOSを再インストールする。
    • インストール時にパーテーションを切り直し、Cドライブを8〜20GB程度確保する。
      • Cドライブにシステム
      • Dドライブにアプリケーション
      • Eドライブにデータ(含むユーザプロファイル)
      という設計守った運用をする。
    • かつて起動していた使用しないサービスはインストールしない。
だ。当然、新規購入する必要の無い2.案のほうが、経済的負担は軽い
※ License違反も一つ解消する。

でもきっと、「もう注文してしまった」とか言う理由で無駄な金使いになるんだろうな。

まともに運用管理できる人が保守チームにいない、まともに原因追求が出来る人が保守チームにいない、ということがお金の無駄遣いを生んでいるのだろうね。

新規購入しても、古いサーバをそのまま使用するならば、そこで障害はまだ発生するよ。

Linuxでも

  • /bootに100MB(Redhatの6.2の頃は25MB程度でよかったのにね。)
  • 残りのディスク領域を/にする
なんてパーテーションの切り方をするね。サーバとしての使用用途によっては、
  • /homeや/usrも別領域にする
なんてこともする。Windowsでの
  • Cドライブにシステム
  • Dドライブにアプリケーション
  • Eドライブにデータ(含むユーザプロファイル)
なんてのもLinuxのパーテション分けと同様の理由なのだ。(と書いてもここではその理由を明らかにはしない。)

Windows Serverを1ドライブで運用するってことは、Linuxで"/"もswap領域も同じパーテーションで運用するのとほとんど同意だ。(実際には、データ領域とswap領域を同じパーテーションにはできないのだけれどね。)

学生の頃からWindows触ってます、とか、コマンド操作のUnix互換OSできます、などで、Windowsのサーバ管理なんて「朝飯前さ、簡単さ、勉強なんて必要ないさ」なんて考え方の人がいるようだけれどね。

今日の自慢

一見、悪口っぽい書き方だけれど、判る人が読むとほとんど親切な内容である。やっぱり天災って親切なんだなぁ!
※ 最初から聞く耳持たないY川には判らないだろうなぁ。。。

初出 Mar 02 2006
更新 Mar 02 2006


 

 (C)2003 HIEDA NET Corporation All rights reserved.