Server」カテゴリーアーカイブ

Hyper-Vにおけるパフォーマンスカウンタのまとめ

先日マイクロソフトが主催するセミナーに参加し得た情報を記載しておきます。意外とこの情報って見つからないんですよね~

主に着目すべきパフォーマンスカウンタと意味

■プロセッサの使用率
Hyper-Vホスト全体    :Hyper-V Hypervisor Logical Processor
ペアレントOS    :Hyper-V Hypervisor Root Vitual Processor
仮想マシン    :Hyper-V Hypervisor Vitual Processor

■Hyper-V Hypervisor Logical Processor(_Total)% Total Run Time
このカウンタは、ペアレントOSとすべてのゲストOSの実行に消費されたプロセッサー時間の使用率をパーセンテージで示します。% Total Run Timeは% Guest Run Timeと% Hypervisor Run Timeの合計値です。パフォーマンスの分析には、次の値を参考にしてください。

– 60%以下         =正常
– 60%~89%      =監視または注意が必要
– 90%~100%    =重大、パフォーマンスに悪影響

■Hyper-V Hypervisor Logical Processor(_Total)% Guest Run Time
このカウンタは、ゲストOSが消費した総プロセッサー時間の割合です。

■Hyper-V Hypervisor Logical Processor(_Total)% Hypervisor Run Time
このカウンタは、ハイパーバイザコードが消費した総プロセッサー時間の割合です。

■Memory% Committed Bytes In Use
このカウンタは、ページングファイルに対して領域が予約されている物理メモリの割合を示します。この値が常に高い値(90%以上)を示す場合、物理メモリとページングファイルの両方の追加が必要です。

■MemoryAvaiable Mbytes
このカウンタは、Hyper-Vホスト全体の物理メモリ容量に対する利用可能な秋メモリの割合を示します。パフォーマンスの分析には、次の値を参考にしてください。

-50%以上の空きメモリ      =正常
-25%の空きメモリ            =監視が必要
-10%の空きメモリ            =注意が必要
-5%以下の空きメモリ        =重大、パフォーマンスに悪影響

■MemoryPages/sec
このカウンタは、ハードページフォールトを解決するためにディスクから読み取られた、またはディスクへ書き込まれたページの数を示します。ハードページフォールトを解決するためには、OSはメモリの内容をディスクにスワップする必要があります。これは、パフォーマンスにネガティブな影響を与えます。このカウンタが過度のページ数を示す場合、物理メモリ容量が不足しています。パフォーマンスの分析には、次の値を参考にしてください。

-500以下        =正常
-500~1000    =監視または注意が必要
-1000以上      =重大、パフォーマンスに悪影響

■PhisicalDisk(*)Avg. Disk sec/ReadおよびAvg. Disk sec/Write
これらのカウンタは、ディスクからの読み取り平均時間(秒)およびディスクへの書き込み平均時間(秒)を示します。パフォーマンスの分析には、次の値を参考にしてください。この値は7200rpmの単一ディスクドライブの、キャッシュなしの一般的なシーク時間をベースとした目安になります。

-1ms~15ms      =正常
-16ms~25ms    =監視または注意が必要
-26ms以上         =重大、パフォーマンスに悪影響

■Hyper-V Virtual IDE ControllerRead Bytes/secおよびWrite Bytes/sec
これらのカウンタは、仮想マシンのIDEコントローラで1秒間に読み取られた、または書き込まれたバイト数を示します。

■Hyper-V Virtual Storage Device Error Count
このカウンタは、仮想マシンのディスク(VHDディスクまたはパススルーディスク)で発生したエラーの合計数を示します。ディスク単位で監視することが出来ます。

■Hyper-V Virtual Storage Device Read Bytes/secおよびWrite Bytes/sec
これらのカウンタは、仮想マシンのディスク(VHDディスクまたはパススルーディスク)から、1秒間に読み取られた、または書き込まれたバイト数を示します。ディスクごとのインスタンスを指定して、ディスク単位で監視することができます。

■Network Interface(*)Bytes Recived/secおよびBytes Sent/sec
このカウンタは、ネットワークアダプタ上で送受信されるバイト数を示します。これらの値の合計値(Bytes Total/sec)に8を掛けることで、使用帯域を示すBps(Bit/sec)値に変換することが出来ます。物理ネットワークの帯域幅に対する使用帯域のパーセンテージを計算することで、ネットワーク使用率を算出できます。パフォーマンスの分析には、次の値を参考にしてください。

-40%以下        =正常
-40%~64%    =監視または注意が必要
-65%~100%    =重大、パフォーマンスに悪影響

■Network Interface(*)Output Queue Length
このカウンタは、ネットワークアダプタの発信パケットのキューの長さを示します。このキューの長さが2より長い場合は、処理遅延が発生し、ボトルネックになります。その結果、ネットワークのパフォーマンスは低下し、コリジョンが多発する可能性があります。この問題を解消するには、物理ネットワークアダプタの追加と、追加したネットワークアダプタの仮想マシンへの割り当てが必要になります。パフォーマンスの分析には、次の値を参考にしてください。

-0             =正常
-1~2        =監視または注意が必要
-2以上       =重大、パフォーマンスに悪影響

■Hyper-V Virtual Network AdapterBytes Recived/secおよびBytes Sent/sec
これらのカウンタは、仮想ネットワークアダプタで1秒間に送受信されたバイト数を示します。

■Hyper-V Virtual SwitchBytes Received/sec,Bytes Sent/sec,Packets Flooded/sec
Bytes Received/secとBytes Sent/secは、仮想ネットワーク(スイッチ)で1秒間に送受信されたバイト数を示します。Packets Flooded/secは、仮想ネットワーク(スイッチ)でオーバーフローした1秒間あたりのパケット数を示します。

■Hyper-V Virtual Switch PortBytes Received/secおよびBytes Sent/sec
これらのカウンタは、仮想ネットワーク(スイッチ)のポート毎に、1秒間に送受信されたバイト数を示します。

Hypre-V スナップショットに関して

Hyper-Vのスナップショットはその時点の状態をメモリ情報も含め保存しておき、いつでもその保存した時点に戻ったりすることができる機能になります。

この機能を使えば、サービスパックの適用前にスナップショットを取っておき、その後適切な動作が行われないなどの不具合があるようなら適用前に戻るなんてこともできますね。

さて、ここで問題があります。それはパフォーマンスに関することになります。

Hyper-Vでのディスク構成としては

  1. 容量可変
  2. 容量固定
  3. パススルー

があります。

本番環境では容量固定が推奨になります。容量可変ではどうしてもHDDの拡張を行いながらの書き込みとなるため、そのオーバーヘッドが問題になる可能性があります。パススルーは仮想環境のメリットである「物理環境に依存しない」が失われるのでお勧めはしません。そもそも、パススルーをするようなサーバーを仮想環境に持ってくるのはいかがなものか?と考えてしまいます。まあ、これはあくまでも私の意見です。

さて、では本番環境で容量固定で使っていたとします。

そしてスナップショットを使うとどうなるか?(あくまでもスナップショットはテスト環境での使用を想定しているので、本番環境での使用は推奨しません

スナップショットを行うと、VMフォルダのsnapshotsホルダ内に[idフォルダ]が作られAVHDファイルに以後のデータが書き込まれるようになります。以後はこのスナップショット(AVHD)がHDDとして使用されます。このスナップショットは差分ディスク(容量可変)として動作しますので書き込みのパフォーマンスが問題になる場合がありますね。

でもしばらくはいつでも戻せる状態で運用したいなんてことがあるかも知れません。

そして1週間くらい使用して問題ないようなら容量固定に戻したい(スナップショットを削除したい)

ではどうやるの?

容量固定VHDとスナップショット(AVHD)の結合はスナップショットを削除すると自動で行われます

手順
1.バックアップ
2.エクスポート
3.シャットダウン時にスナップショットの削除を行う(シャットダウンしていないと結合が行われないので)
4.自動的に結合される(結合が完了するとAVHDが削除される)
5.全てのAVHDが無くなったことを確認してから起動
6.起動確認

ここで不測の事態が発生(起動できない)場合は、バックアップから復元するか、インポートを使用して元に戻す

ただし、DCやSQL、Exchange等の更新系のアプリが動いている環境では絶対に使用してはいけません

FSRMのファイルスクリーン

ファイルサーバーリソースマネージャー(FSRM)には次の機能があります。

  1. クォータの管理
  2. ファイル スクリーンの管理
  3. 記憶域レポートの管理

今回はファイルスクリーンの処理に関して述べてみます。

ファイルスクリーンとは特定の種類のファイルを会社のサーバーに保存することがセキュリティポリシーで禁じられている場合があります。例えば、iso、avi、wmvなど割と大きなファイルなどは対象になりそうですね。そんなときにこのファイルスクリーンを使用することによってサーバーに置かれた際通知をだしたり、そもそも置けなくするなどの処理を行うことができます。

このファイルスクリーンを運用する際の注意点として次のことがあげられます。

 

folder

たとえば、このようなフォルダ構成になっていて、上位のフォルダに対して実行形式ファイルの「パッシブスクリーン処理」とイベントログへ送信する設定を行います。

ちなみにファイルスクリーンの処理は2パターン

  • アクティブ:承認されていないファイルの保存を許可しない
  • パッシブ:承認されていないファイルの保存を許可する(監視用)

ここで本題

実行形式ファイルをTemp1フォルダにコピーします。そうすると、イベントログのアプリケーションには警告、イベントID8215が発生します。これは想定された動作になります。更にTemp2に対しても同じ動作をします。しかし、イベントログには上がってきません。

WS000000

実はこれってFSRMの通知間隔の問題なんです。デフォルトでは60分間隔で行われているため、その間は何度通知条件が発生しても通知は行われません。

通知間隔を確認するには

filescrm screen list /list-notifications

この通知間隔は変更することができるようです。

参考:KB926092

更に注意点があります。このファイルスクリーンのレポートを出すためには設定が必要なんです。

WS000001

この設定はファイルサーバーリソースマネージャーのオプションの構成>「ファイルスクリーンの監査」タブより設定します。この設定をしておかないといざレポートを見ようと思ってもみれません。私はこれではまりました・・・

WS000003

さてそれではこれでファイルスクリーンの監査レポートが見れる状態になりました。

このとき、アクティブの設定をしていると、こんな監査レポートが上がります。

WS000002

このレポートを見る限り、なんと8回も繰り返し禁止されている操作をしているように見えますよね。しかし、どうやらこれは内部動作の仕様のようです。実際には1回コピーしようとしてはじかれただけなんですけどね。

さて、このことを考えるとあっという間にレポートの上限である1000を超えちゃいそうですね!

そこで安納さんのブログで紹介されている

【Management】FSRM 記憶域レポートの上限値を変更するには

が役にたつのではないでしょうか?

このようなことから、間違ってもユーザーがわざと禁止されている操作を繰り返し行っていると勘違いしないでくださいね(笑)

SCVMMのライブラリ

SCVMMを使用する際に必ずライブラリを追加すると思われます。デフォルトの状態ではC:ドライブに作られるのでさすがにそのフォルダは使わないでしょう。

ということは、別のライブラリフォルダを作成すると思います。

ライブラリの実態はファイルサーバーになるのでテストした際に、Windows Server 2003にファイル共有を作成してそれをライブラリにしようとしましたがうまくいかない。

実は、VMM サーバー、全てのバーチャル マシン ホスト、および VMM によって管理されるすべてのライブラリ サーバーにSCVMMのライブラリWS-Management Version 1.1をインストールしておく必要があります。VMMは、WinRM(WS-Management)を使用して、VMM サーバー、バーチャル マシン ホスト、およびライブラリ サーバーにまたがった操作を実行するためです

Windows Server 2008及びVistaは既に導入済みなので考慮する必要はないですね。

いうことで、Windows Server 2003にWinRMをインストールすることによってライブラリ登録ができるようになります。

そこで、Windows 2000 Serverのファイル共有は使えるのか?と考えるとWindows 2000 Server用のWinRMが提供されていない現状では使えないということになりますね。

更にWindows Server 2008におけるFWの問題が発生する場合は、ファイル共有を行っているサーバーで「WinRM Quickconfig」を実行します。

このコマンドが行っている内容は安納さんのブログで紹介されていますので割愛します

【Windows Server 2008】WinRM Quickconfig って裏で何をやっている?

こんな些細なことでも知らないと結構はまってしまうかも・・・

お掃除好きなあなたへ・・・便利なツールが付いてきました

サービスパックつながりでのお知らせです。

Windows Server 2008 SP2がでましたね。このSP2は特に新機能が追加されたということはなく個々の修正が行われています。

(1)Hyper-V RTM版の搭載
(2)ターミナルサーバーのライセンスキー下位互換のサポート
(3)電源管理機能の強化
(4)WebDAV リダイレクタの認証オプションの改善
(5)Windows Search 4.0の搭載とグループポリシーの拡張

そしてこのほかに

Service Pack クリーンアップ ツール

が入ってきました。

これを使用すると、Windows UpdateなどからインストールされたSP2に含まれる更新モジュールのインストール履歴を削除する事ができ、ディスクの容量を節約する事が可能となります。

WindowsSystem32Compcln.exe

のコマンドで実行します。

ただし、このコマンドを実行するとSPのアンインストールはできなくなるようです。

よって、そこら辺は自己責任で実行してください。

ちなみに私はVistaで実行してみました。なんだかお掃除ができてすがすがしい気持ちになりました(笑)

Windows 2000 をHyper-Vで使用する

Windows 2000 シリーズはHyper-Vでサポートされています。ただしSP4に限りますが・・・

しかし、以下の制限があることに注意が必要です。

特にP2Vを行ってバーチャル環境に移す時には要注意

  1. 512Mの実メモリが必要
  2. SCSIコントローラーはサポートしていない
  3. 統合コンポーネント(仮想ゲストサービス)を導入するとシャットダウンやログオフに時間がかかる場合がある

1.についてはP2Vを行う際に Windows 2000 の場合はWinPEを使用して物理ディスクのデータを取り出しますが,WinPEの制限で512Mの実メモリが必要です。バーチャル環境では512Mの容量は必須ではありません。

2.に関してはハードディスクを5台以上つなげているような環境では問題になります。またKB958667の問題もあります。これはSCSIコントローラーを追加するとゲストOSがSTOPエラーとなる問題です。先ほどホストOSをSP2に上げたHyper-Vでテストしたところ起動はできました。ということでSP2ではSTOPエラーの問題は治っているようです。

Win2000-1

ただしSTOPエラーは出ませんがOS的には無視されるようです。

Win2000-2

ちなみにSCVMMでの設定はSCSIがつながっています。

3.に関してはKB959781の問題です。どうやらWMIとの相性があるらしく、WMIのサービスを停止すれば治るそうです。が、これを停止するとWindows Updateができなくなります。そこでホストをSP2にして確かめてみました。特に問題なくシャットダウンできますね。ただし、文章の表現として場合がある・・・とあるので本当にこの問題がSPによって解決したのかは定かではありません。少なくとも私の環境においてはこの問題は出ませんでした。

(追記)やはりシャットダウン時に現象出ました(涙)5分たっても落ちないよ~~~

(更に追記)また試しました。今度はうまくいく。先ほど落ちなかった際はCPUを無理やり2個に設定していたこともあり1個に戻したら問題なくシャットダウンできました。SCVMMからもVMビューからもうまくダウンしました。どうやら構成さえ問題なければ大丈夫なような気がします。

ということで、これらの注意点があることを認識してからHyper-V環境に移行しましょう。

また、Windows Server 2008 のSP2が提供されましたので適用をお勧めします。

仮想化テクノロジに関して

ここらへんで、一旦マイクロソフトが提供している仮想化環境についてまとめてみたいと思います。

今仮想化というと、どうしてもHyper-Vがメインかな~なんて思いますが、マイクロソフトではそのほかの仮想化ソリューションが出ています。そこでどのような仮想化製品?が提供されているのでしょうか?

image

ちょっと安納さんが提供しているPPTを拝借します(笑)

サーバー・デスクトップ仮想化

  • Hyper-V
    いわずとしれた、Windows Server 2008から搭載された仮想化技術です
  • Microsoft Virtual Server 2005 R2
    この製品のバージョンアップ版がHyper-Vという位置づけになっています。最新のOSではわざわざMicrosoft Virtual Server 2005 R2を使う必要性はないかもしれません。ただし、NT4の動作サポートをしていることは強みかもしれませんね
  • Virtual PC
    クライアント上で仮想化環境を使用したい場合に利用するアプリです

ローカルアプリ

  • Microsoft Enterprise Desktop Virtualization (MED-V)<アプリ互換性確保>
    これはVirtual PCとの連携によって、アプリケーションをホストOSで動かしているように(実際にはVirtual PCで動作)操作できる特徴を持つ。これによってアプリとホストOSの互換性問題をクリアすることができる。Windows7のXP Modeもこの技術を使用していますね
  • Virtual Desktop Infrastructure (VDI)
    ハイパーバイザー ベースの仮想化、Windows デスクトップが稼働する仮想マシンの管理、およびライセンスの各領域における、マイクロソフト最新の革新技術を綿密に結合したものになります。その技術として主に2つあります。

    • Microsoft Application Virtualization (App-V)<アプリ競合回避>
      App-VはMicrosoft Desktop Optimization Pack の一部になります。App-Vの利点はアプリそのものを仮想化環境にしてしまうことにあります。この製品はSoftGridといわれていました。ですので今までバージョンの異なるアプリを同じコンピューター上におけないという問題を抱えていた企業にとっては、このApp-Vを使用することによって解決することが可能です。更にターミナルサーバーによる配信も可能です。
    • RemoteApp<ターミナルサービスによるアプリ公開>
      ターミナルサービスを使用したアプリを、ターミナルサービスのデスクトップ画面を表示せずにアプリケーションのみを表示させることができるものです。このアプリは実際にはターミナルサーバー上で動いています。

ローカルデータ

  • 移動ユーザープロファイル
  • フォルダリダイレクト

SCVMM P2Vを行う

さて、SCVMMの目玉は何と言ってもP2V(物理マシンから仮想マシンへの移行)ではないでしょうか?

ということで、P2Vを試してみました。

まずは「物理変換の変換ウィザード」を実行します。

WS000000

ここで変換元サーバーのIPアドレス、管理者のユーザーID(通常はadministrator)とパスワード、コンピューター名を指定します。

WS000001

そして仮想マシンの管理名を入力

WS000002

そうすると、先の情報を利用して変換元にVMMエージェントを入れ込みます

WS000003

変換するボリュームを選択します。ここでHDDを可変や固定など選択できます

WS000004

プロセッサ数とメモリ容量を指定

WS000005

どの物理マシンに変換するかを指定

WS000006

保存場所のパス指定

WS000007

仮想ネットワークの指定(最初はつなげない方がいいかもしれません)

WS000008

追加のプロパティ指定(自動起動など)

WS000009

ここで変換情報の確認を行います。この場合は変換元のOSがWindows Server 2003 R2 SP2だったのでsp2.cabというファイルがないとだめだよ~という情報が・・・

あわてずに、sp2.cabを入手して指定の場所へコピー

再確認をすると・・・

WS000010

問題なし

WS000011

これで作成をすれば出来上がり~

ということで、終了になります。

WS000012

実際には、この後に移行した仮想環境のメンテナンスを行う必要があります。

ポイントとしては移行元のアプリにおいて、マシン依存のアプリやウイルスソフトはあらかじめアンインストールしておくことをお勧めします。そうそう、移行して気づいたことは移行最中に仮想ゲストサービス(統合サービス)が自動的に行われるようです。

Live Migration 試しました

今はHyper-V関連のコース立ち上げ準備をしている最中なのですが、SCVMMとかいろいろ試行錯誤しながら動かしています。じゃあ、ついでにWindows Server 2008 R2 RC を使ってLive Migrationも試してみました。

そうそう、Live Migrationの操作はフェイルオーバークラスターマネージャから行います。ちなみに、クラスターへの追加は今までと同じ方法なので割愛します。

WS000001

そして「仮想マシンを別のノードにライブ移行」を行います。

しかし、なぜかうまくいくときといかないときが発生しました。そして設定を見てみると・・・・あ、これだ

WS000004

依存関係にディスクを追加しました。ディスクが立ち上がってから起動しないとだめですよね~~~これ、忘れてました(笑)これをやらないとパラレルで起動するのでたまたまディスクがあとに立ち上がるとエラーになります。

それから細かい設定を確認してみると気になるものが・・・

WS000003

指定した期間内の最大エラー数がデフォルトは「1」でした。「1」ということは1回フェールオーバーしたら終わりということになります。ここは考慮するポイントになりますね。

WS000005

リソースエラーへの対応で「リソースが失敗状態になった場合は、現在のノードで再起動を試みる」がデフォルト「1」でした。これもちょっと少ないんでないかい?ここも考慮するポイントになりそうです。

Live Migrationですが瞬時に移動するイメージですが私の環境では、実際には1分くらいかかりました。でも接続が切れるのが約1秒という感じ。またクイックマイグレーションは約40秒くらいで接続が切れるのが10秒くらいかな?

今回ご紹介した内容はあくまでRC版ですのでRTMでは数値などは変わるかもしれません。

Windows Server バックアップ に関して~その4~

Windows Server バックアップ の利点としてこの話題をなしには語れません。それはシステムリカバリーがものすごく簡単になったことです。

今までのNtbackupでは以下の手順でのリカバリーを行う必要がありました。

<NTBackup ASR>

  1. インストールCDで起動
  2. ASRフロッピー挿入
  3. CDからファイルコピー
  4. 再起動
  5. 基本設定
  6. バックアップファイルをリストア
  7. 再起動
  8. リカバリー完了

ではWindows Server バックアップではどのようになったのか?

2008 Windows RE

  1. インストールDVDで起動(WinRE)
  2. バックアップファイルをリストア
  3. 再起動
  4. リカバリー完了

以上で終了です。

単純に半分のステップになりました。また実際に行ってみるとわかりますが、こんな簡単にリカバリーできていいの?と思うくらい簡単に復元できます。

ですので運用時のお勧めは、絶対にWindows Server バックアップを使って1度は完全バックアップを作っておくこと。そうすればリカバリーはものすごく簡単に行うことができます。