サーバは多数のクライアントPCからの要求を受けて動作するため、当然ながらクライアントPCよりも負荷が高い。そして、サーバのレスポンスが悪いとユーザーからの苦情が殺到する。

ここで重要なのが、動作状況・負荷状況を確実に把握することだ。レスポンスが悪いといっても、その原因がCPUなのか、メモリなのか、ストレージなのか、ネットワークなのか、それがわからないことには適切な対策を打てない。

もっとも、ファイルサーバならストレージ、リモートデスクトップサービスのサーバならCPU・メモリ・ストレージ、データベースサーバならCPUとストレージ、といった具合に、利用形態によって、負荷がかかりやすいポイントを推測することはできる。しかし、推測と事実が必ずしも一致するとは限らない。

そこで、サーバの動作状況や負荷状況を知るための手段を取り上げることにしたい。これを用いて、サーバのレスポンスを悪化させている「証拠」をつかむことができれば、対策に必要な費用を出してもらうのも(少なくとも証拠がない場面よりは)容易になるはずだ。

[タスクマネージャ]と[リソースモニタ]

とりあえずメモリやCPUの負荷状況を確認するだけなら、[タスクマネージャ]の[パフォーマンス]タブを利用すればよい。起動方法は従来と同じで、以下のいずれかの方法を使用する。

  • [Ctrl]+[Alt]+[Del]キーを押すと表示される画面で[タスクマネージャの起動]を選択する
  • タスクバーの空き部分で右クリックして[タスクマネージャの起動]を選択する

このタブでは、CPU使用率とメモリ使用率をリアルタイムでグラフ表示している。マルチプロセッサ、マルチコアCPU、あるいはHT(Hyper Threading)テクノロジーを使用しているCPUであれば、表示するCPUの個数が増えて、個別に表示されるので賑やかだ。

[パフォーマンス]タブの左には、[サービス]タブと[プロセス]タブが並んでいる。前者は動作中のサービス一覧を、後者は動作中のプロセス一覧(実行形式ファイル<*.EXE>が単位となる)を確認できるほか、プロセスごとにCPU負荷を表示させることもできる。つまり、どのプロセスがCPUパワーを食っているかを確認できる。

メモリとCPUの負荷は[タスクマネージャ]で確認可能。このほか、[プロセス]タブではプロセスごとのメモリ消費量やCPU負荷を確認可能

このほか、[リソースモニタ]管理ツールもある。これは、以下の方法で実行可能である。

  • [タスクマネージャ]の[パフォーマンス]タブで[リソースモニタ]をクリックする
  • [スタート]-[すべてのプログラム]-[アクセサリ]-[システムツール]-[リソースモニタ]を選択する

トップ画面

[リソースモニタ]では、CPU、ディスク、ネットワーク、メモリの負荷状況をグラフ表示するだけでなく、それぞれの見出し部分右端にある[▲][▼]をクリックすることで、詳細な情報表示の展開/折り畳みが可能になっている。以下の画面例では、[CPU]が展開した状態になっており、プロセスごとの状況を表示している。

[リソースモニタ]の画面例。ここでは[CPU]の状況表示を展開している

上の画面は[概要]タブのものだが、さらに[CPU][メモリ][ディスク][ネットワーク]と4枚のタブがあり、それぞれの分野ごとに詳細な情報を確認できる。たとえば[メモリ]タブではメモリの割り当て状況を確認できるし、[ネットワーク]タブではプロセスごとにどのポートをリッスンしているかを確認できる。

[メモリ]タブの表示例。割り当て状況は一目瞭然

[ネットワーク]タブの表示例。ポートのリッスン状況が分かるので、特にインターネット向けのサーバで役立つかも知れない

[サーバーマネージャ]による動作状況確認

Windows Server 2008で登場した[サーバーマネージャ]には、組み込まれている「役割」や「機能」の動作状況が一目でわかる機能が備わっている。左側のツリー画面を展開して、確認したい役割や機能の名称をクリックすると、右側に以下の情報が現れる仕組みだ。

[概要]以下の[イベント]
選択した役割に関わるイベントログを表示する。右側にあるリンク群を使って、イベントビューアの呼び出し、フィルタイベントの設定(表示する種類の絞り込みを行う機能)、プロパティ表示などの指定が可能

[概要]以下の[システムサービス]
選択した役割に関連するサービスの動作状況を表示する。右側にあるリンク群を使って、[サービス]管理ツールの呼び出しや、サービスの起動・停止が指示可能

[詳細ツール]
分野ごとの管理作業を管理ツールに呼び出すためのリンクが並べてある。つまり、作業に必要な管理ツールを迅速に呼び出せる

[リソースとサポート]
ヘルプやオンラインリソースを呼び出すためのリンクが並べてある

つまり、[サーバーマネージャ]が動作状況の確認や管理ツール呼び出し、あるいはその際に必要となる情報にアクセスするためのポータルになっている。もちろん、個別に管理ツールを呼び出す従来と同様の方法も使えるが、ことに初めてWindowsサーバを使うユーザーにとっては、目的とする管理ツールなどを探し回る手間を省けるので、ワンストップで用が足りる方が楽だろう。

概要の表示例(ファイルサービス)

[リソースとサポート]の表示例(ファイルサービス)

[パフォーマンスモニタ]管理ツール

[スタート]-[管理ツール]-[パフォーマンスモニタ]を選択すると実行できる[パフォーマンスモニタ]管理ツールは、Windows NT時代と同様のパフォーマンスモニタ機能である。

これは、計測対象となるカウンタを追加することでグラフ表示を行える機能で、[カウンタの追加]ダイアログ左上にある分野別のリストボックスでは、[Processor]などのカテゴリごとに、右端に表示を展開する矢印を備えている。それをクリックすると表示が展開して、カテゴリごとのカウンタ一覧を表示する仕組みである。

また、画面上部にある[+]をクリックすると表示するダイアログで、カウンタを追加できる。逆に、カウンタを削除するには画面下部の一覧で削除したいカウンタを選択してから[×]をクリックすればよい。

もちろん、どの情報を知るにはどのカウンタを追加すればよいかは知っておかなければならないが、それがわかっていればカウンタごとの負荷状況をリアルタイムにグラフ表示できるので、なかなか重宝する。

Windows NTの時代からおなじみの[パフォーマンスモニタ]も利用可能。ツールバーの[+]をクリックするとカウンタの追加が可能で、同時に複数の項目をグラフ化できる

[安定性レポート]で安定性を確かめる

Windows Server 2008では、[パフォーマンスモニタ]管理ツール左側のツリー画面で[モニタツール]以下の[信頼性モニタ]を選択すると、安定性レポートが表示される(R2には、この機能はないようだ)。

ここでは[ソフトウェアのインストールまたはアンインストール][アプリケーションエラー][ハードウェアエラー][Windowsエラー][その他のエラー]といったカテゴリごとに、[+]をクリックして展開して詳細情報を確認できる。

また、右上のリストボックスで、[すべて選択]あるいは[日付の選択]を選択して、レポートの対象となる期間を指定する。すると、画面上部の[システム安定性グラフ]で項目ごとのイベント発生状況を確認できる。また、画面下側ではレポートを項目ごとに展開でき、こちらは詳細な情報を把握する際に有用である。

レポートの対象期間は任意に指定可能

[安定性レポート]の結果表示例。トラブルが多発するほど「安定性が低い」と見なされる