Windowsサーバクラッシュの3大原因とその回避策(後編)
互換性のないストレージドライバによるWindowsクラッシュ
Windowsサーバをクラッシュさせる原因を詳しく説明し、その回避に必要なベストプラクティスを紹介する。
前編の「古いウイルス対策ソフトウェアによるWindowsサーバクラッシュ」に引き続き、1000件近いWindowsクラッシュの分析を通して分かった3大原因を紹介する。今回は「互換性のないストレージドライバ」「多過ぎるフィルタドライバ」などによって引き起こされるクラッシュの詳細な内容と、それらの回避に必要なベストプラクティスを紹介する。
互換性のないストレージドライバ
サーバクラッシュの中で、「古いウイルス対策ソフトウェア」の次に多いのが「互換性のないストレージドライバ」に起因するものだ。ご存じのように、サードパーティーストレージベンダーは、HBA(ホストバスアダプター)の制御とストレージデバイスへのアクセスに使われるデバイスドライバを提供している。米Qlogic、米Emulex、米Hewlett-Packard(HP)など、ベンダーごとにデバイスドライバはそれぞれ異なるが、それらはいずれもMicrosoftのStorportというドライバに依存している。Storportドライバは、こうしたベンダー固有のドライバがI/O操作時に使用する一般的なルーチンセットを提供する。
互換性のないストレージドライバの問題は、ウイルス対策ドライバの問題と同様の理由で起こる。ベンダー固有のドライバが変更された場合、それらをStorportの現行バージョンに対して再テストし、互換性が保たれていることを確認しなければならない。Storportが更新された場合についても同じことがいえる。全てのHBAドライバを再テストし、新しいStorportドライバと組み合わせて利用できることを確認しなければならない。だが、それは大変な作業だ。例えば、Windows Server 2003では、Storportに関する修正プログラムが50件以上公開されたからだ。
Storportを更新する際は、サードーパーティーベンダーのHBAドライバが更新されていないかを事前に確認しておき、HBAドライバを更新する際はStorportが更新されていないかを事前に確認しておくのが原則だ。では、どのストレージドライバがStorportに依存しているのかは、どうすれば識別できるのか。幸い、ドライバ間の依存関係を調べられる「Dependency Walker(depends.exe)」という無料ツールがある。
このツールの圧縮ファイルをダウンロードして展開し、depends.exeを実行し、[File]メニューで調べたいドライバを開く。この例では、Hpcisss2.sysドライバを選択した。このドライバは、HP Smart Arrayのために使われている。以下のように、このツールは、Hpcisss2ドライバが「STORPORT.SYS」と「NTOSKRNL.EXE」の両方に依存していることを示している。
多過ぎるフィルタドライバ
Windowsサーバのクラッシュの中で3番目に多いのが、「インストールされているフィルタドライバが多過ぎる場合のスタックオーバーフロー」に起因するものだ。I/O要求を途中で受信して付加的な機能を実行するドライバは、全てフィルタドライバと考えられる。ウイルス対策ドライバがフィルタドライバと考えられることは既に見た通りだ。さらに、例えばディスククォータ管理、ディスクミラーリング、バックアップエージェントなどもフィルタドライバだ。
フィルタドライバが多数インストールされていても、それ自体は問題ではない。しかし、それらのドライバが相互再帰的にやりとりし、限られたカーネルスタック領域を使い果たしてしまう恐れがある。カーネルスタック領域は、コンピュータアーキテクチャによって異なり(x86では12Kバイト、x64では24Kバイト)、これらの限られたカーネルスタック領域を全てのデバイスドライバが使用する。カーネルスタック領域が使い果たされると、Stop 0x7Fエラーが発生し、バグチェックが行われてシステムがクラッシュする。これは、Microsoftの何百もの記事で説明されている。
多くのフィルタドライバに対応してカーネルスタック領域を増やすことはできない。唯一の選択肢は、これらのフィルタドライバを特定し、不要なものを無効にするか、アンインストールすることだ。Windows Serverに搭載されている「FLTMC(Filter Manager Controlプログラム)」というツールを使えば、どのようなフィルタドライバがインストールされているかを把握できる。
お分かりのように、Windows Serverはさまざまな原因でクラッシュする。だが、こうしたサーバ停止の大部分は、以上の3つの問題に起因している。これらの問題によるサーバ停止は、Windowsのアップグレード時や関連する修正プログラムの適用時に、必ずサードパーティードライバも更新することに加え、使われていないフィルタドライバの数を抑えることで回避できる。
本稿筆者のブルース・マッケンジーロウ氏は、MCSE/MCSAの資格を持ち、米Hewlett-Packard(HP)でマスターコンサルタント兼システムソフトウェアエンジニアとして、同社の全世界の顧客にWindowsベース製品に関するサポートを提供している。コンピュータ業界での20年以上の経験を生かし、クラスタ、SAN、ネットワーキング、システムの内部機構にかかわる非常に複雑な問題を解決する専門家として有名。キャリアを通じて豊富な講師歴を持ち、技術についての熱弁で聴衆を沸かせてきた。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
事例
[ポールトゥウィン株式会社] 開発スピードと品質を両立、DONUTSが実践する「ハイブリッドなQA体制」の構築術 -
製品レビュー
[ポールトゥウィン株式会社] 開発スピードと品質は両立できる? DONUTSの「ジョブカン」に学ぶQA戦略 -
市場調査・トレンド
[レッドハット株式会社] 「プラットフォームエンジニアリング」調査レポート:利点・課題・未来像を詳説 -
市場調査・トレンド
[レッドハット株式会社] 生成AI活用のためのテクノロジー基盤、構築に際しての7つの検討事項とは? -
製品資料
[レッドハット株式会社] ビジネスの現場へのAI導入と活用、何から始めてどのように進めるべきか?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
【漫画付き】ひとり情シス協会が明かす、RAG導入でしくじる企業「2つの共通点」
-
2
「RAGの利用」に関するアンケート
-
3
「AI活用を前提とした業務PCへの移行」に関するアンケート
-
4
IT製品の導入に関するアンケート「PC&デバイス」編
-
5
IBM iのブラックボックス化を打破 資産継承と進化を実現する「IBM Bob」の実力
-
6
Nutanix+Everpure構成の実力は? 既存資産を生かす「脱VMware」の検証
-
7
BI導入の成否はプロジェクト企画段階で決まる!【第3回】
-
8
忙しいけど成果ゼロ 情シスの「静かな崩壊」を防げ
-
9
脱VMwareか、継続か? 仮想化ソフト主要6製品の料金とライセンスを徹底比較
-
10
一度は失敗、ある古着販売業者がたどり着いた「データ駆動型経営」の全て
ホワイトペーパーランキング PR
-
1
DX/AI投資の壁を突破、現代の最高財務責任者が直面する課題と克服のヒント
-
2
バックアップは“取っているから大丈夫”なのか? ランサムウェア時代の備え方
-
3
システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
-
4
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
5
5分で分かる Microsoft 365のデータ損失に備えるためのバックアップの仕組み
-
6
「NAS」「SAN」「DAS」は何が違う? いまさら聞けないストレージの基礎
-
7
ネットワーク遅延の原因、「パケットロス」の基礎知識と効果的な解決策
-
8
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
9
ソフトウェア開発の属人化と手戻りをどう防ぐ? 速さと品質を両立させる方法
-
10
ランサムウェア攻撃“究極の対策”はこれだ
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー