Windows TIPS
[System Environment]
TIPS   Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

パフォーマンス・モニタでHyper-Vサーバの実際のCPU使用率を調査する

解説をスキップして操作方法を読む

デジタルアドバンテージ 打越 浩幸
2009/11/06
対象OS
Windows Server 2008
Windows Server 2008 R2
Hyper-Vハイパーバイザ環境では、ホストOS上でタスク・マネージャを使っても、CPUの真の使用率をモニタすることはできない。ペアレント・パーティションですら仮想化されているからだ。
実際のCPUの使用率をモニタするには、パフォーマンス・モニタでHyper-V用のカウンタの値をチェックする。

解説

 Windows Server 2008/Windows Server 2008 R2で導入されたHyper-V仮想化環境では、ハイパーバイザ方式の仮想化アーキテクチャが利用されている。従来のVirtual PCやVirtual Serverのようなホスト・アーキテクチャ型とは異なり、ゲスト仮想マシンだけでなく、ペアレント・パーティションですらハイパーバイザの管理する仮想マシンの1つとして管理されている。そのため、ホストOS(ペアレント・パーティション上で稼働しているOSのこと)のタスク・マネージャを見ても、Hyper-Vのホスト・コンピュータ自身の実際の物理的なCPU使用率を知ることはできない。そこに表示されているのは、ホストOSに割り当てられたCPU時間内における、CPUの使用割合に過ぎないからだ。

 例えば1つのホストOSと3つのゲストOSに均等にCPU時間が割り当てられているとすると、ホストOSのCPU使用率が100%で、ほかが0%となっていても、実際のCPUの使用率は全体で25%にすぎない。逆に、ホストOSのCPU使用率が0%で、ほかが100%となっていても、ホストOSのタスク・マネージャでは0%としか表示されず、実際の使用率を正しく把握できないことになる。

 ホスト・コンピュータ全体の実際のCPU使用率を調べるためには、タスク・マネージャではなく、パフォーマンス・モニタを使って、Hyper-Vに関するカウンタ値を調査する必要がある。本TIPSではその方法について解説する。

操作方法

連載 Hyper-V実践サーバ統合術 第2回「Hyper-Vゲスト環境管理法」

 Hyper-Vのハイパーバイザや各パーティションにおけるパフォーマンスに関する値は、新しく導入された「Hyper-V 〜」という名称のカウンタでモニタできる。カウンタの一覧については関連記事などを参照していただきたいが、ホスト全体の実際のCPU使用率を調査するには、「Hyper-V Hypervisor Logical Processor」カテゴリにある「% Total Run Time」をモニタすればよい。ハイパーバイザ自身のCPU使用率やゲストOSだけのCPU使用率(このゲストOSには、ペアレント・パーティションのOSも含む)も調査したければ、次のカウンタ値もモニタすればよい。

カウンタ項目 説明
% Total Run Time Hyper-Vホスト全体の実際のCPU使用率。次の2つを合計したもの
% Guest Run Time Hyper-V管理下の各仮想マシンの実際のCPU使用率の合計。ホストOS(ペアレント・パーティション上のOS)のCPU使用率も含む値
% Hypervisor Run Time Hyper-VのハイパーバイザのCPU使用率
Hyper-VホストのCPU使用率のカウンタ
Hyper-Vのホスト・コンピュータ自身の実際のCPU使用率を調査するには、これらのカウンタの値をモニタする。

 具体的には次のように操作してカウンタ値を表示させる。まず[管理ツール]の[信頼性とパフォーマンス モニタ]を起動し、左側のツリーから[信頼性とパフォーマンス]−[モニタ ツール]−[パフォーマンス モニタ]を選択する。そして右側ペインにある緑色の[+]ボタンをクリックする(パフォーマンス・モニタの基本的な使い方についてはTIPS「パフォーマンス・モニタの使い方(基本編)」参照)。

パフォーマンス・モニタの起動
Hyper-V環境における実際のCPU使用率をモニタするには、パフォーマンス・モニタを利用する。これはWindows Server 2008 R2のパフォーマンス・モニタの例だが、ほかのコンピュータからリモートでモニタすることも可能。
これを選択する。
これをクリックしてカウンタを追加する。
デフォルトでは、ホスト・コンピュータ(ホストOS)のCPU使用率が表示されているが(これはタスク・マネージャの「CPU使用率」と同じ)、これは削除してもよい。

 「カウンタの追加」ダイアログが表示されたら、先ほどの3つのカウンタを追加する。

Hyper-VのCPU使用率モニタ用カウンタの追加
Hyper-Vホスト・コンピュータのCPU使用率モニタする3つのカウンタを追加する。
ここではHyper-VサーバのホストOSペアレント・パーティションで表示させているが、リモートから監視することも可能。その場合は「\\<サーバ名>」を指定する。
Hyper-V Hypervisor Logical Processor」カテゴリを選択し、右側の[+]マークをクリックして展開する。
このカウンタを選択する。
必要に応じて、これらもモニタするとよい。[Ctrl]キーを押しながらクリックすると、複数選択できる。
インスタンスはデフォルトの「_Total」を選択する。論理プロセッサごとにモニタすることもできるが、通常はまとめて1つだけ選択すればよい。
これをクリックしてモニタ対象に追加する。
このように追加する。
これをオンにすると、カウンタの説明が下に表示される。
カウンタを追加したら、これをクリックしてダイアログを閉じる。

 結果は次のようになるはずである。ここでは、元からあったカウンタ値(%Processor Time)は削除している。End of Article

Hyper-VホストのCPU使用率のモニタ例
3つのカウンタを追加すると、このように、実際のCPU使用率が確認できる。
これが実際のCPU使用率。分かりやすくするために、太線に変更している。次の2つのグラフの合計。一番上が100%。
これはハイパーバイザのCPU使用率。
これはゲストOSのCPU使用率(チャイルド・パーティションだけでなく、ホスト・パーティション)で使用しているCPU使用率も含んでいる。
これを選択すると、次のの部分に実際の数値が表示される。
で選択されたカウンタの実際の値。
この例のグラフのように、背景にグリッドを表示させるには、この[プロパティ]ボタンをクリックして、[グラフ]タブにある[垂直のグリッド]と[水平のグリッド]のチェック・ボックスをオンにする。

「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間