SlideShare a Scribd company logo
1 of 104
Session Code: T1-407




    Effective Hyper-V
    アーキテクチャ解説と
    パフォーマンスTips


    佐々木邦暢 <ksasaki@microsoft.com>
    マイクロソフト株式会社

2
本日の内容
    アーキテクチャ解説
     Virtual Serverとの比較
     ペアレント / チャイルドパーティション
     ハイパーバイザの正体
     ストレージの仕組みと推奨構成
    主要な機能
     スナップショット
     クラスタリング
    その他
     性能測定
     Hyper-V上でのMicrosoft製品
3
Hyper-V アーキテクチャ




4
仮想化ソフトウェアの分類
     ホストOS型     ハイパーバイザ型

      ゲストOS
     仮想化ソフト     管理OS   ゲストOS
      ホストOS       仮想化ソフト
     ハードウェア       ハードウェア

     ホストOS上の      CPU等の
    1アプリケーション   ハードウェア資源を
      として動作       直接制御
5
具体的には、
          ホストOS型              ハイパーバイザ型

    Microsoft     Microsoft
     Virtual       Virtual    Microsoft Hyper-V
       PC          Server


     VMware       VMware         VMware ESX
    Workstation    Server

                              Xen 系       Solaris xVM

                              XenServer   OracleVM
6
ホストOS型
    Virtual Serverから

7
ハイパーバイザ型
     Hyper-Vへ

8
その進化を
      解説
9
アーキテクチャ
       の違い

10
仮想マシン      ペアレント      チャイルド
                    (VM)     パーティション    パーティション
        Virtual
ユーザー                アプリ       Hyper-V     アプリ
        Server
モード                ケーション     関連サービス      ケーション
       サービス

                    ゲストOS
                    カーネル


カーネル              VMMカーネル    ペアレントOS     ゲスト OS
モード      ホストOS カーネル           カーネル       カーネル


                                  ハイパーバイザ

11
                            ハードウェア
機能の違い

12
Virtual Server vs. Hyper-V
                      Virtual
           機能         Server    Hyper-V
                     2005 R2
         32-bit VM     ○          ○
         64-bit VM     ×          ○
       VMのSMPサポート      ×        最大4CPU

       VMの最大メモリ      3.6 GB      64 GB


13
      スナップショット作成       ×          ○
機能・性能比較


     Virtual Server 2005
              vs. Hyper-V
14
1CPU VM同士での比較
                                  演算能力の比較
                       Virtual Server (1CPU)      Hyper-V (1CPU)

                                                               598.7   611.5




                                               301.0
                                   252.2


      105.0    116.2



     CPU - Integer Math       CPU - Floating Point Math     CPU - Image Rotation

15
「全力」勝負
                                  演算能力の比較
                       Virtual Server (1CPU)      Hyper-V (4CPU)

                                                                        2444




                                               1238

                                                               598.7
               461.5
                                   252.2
      105.0


     CPU - Integer Math       CPU - Floating Point Math     CPU - Image Rotation


16
ディスクアクセス性能の比較
        スループットはほぼ同じだが、
        Hyper-VはCPU使用率が格段に低い
     100.0                         25.0

      80.0                         20.0
                         Virtual                      Virtual
      60.0               Server    15.0               Server

      40.0               Hyper-V   10.0               Hyper-V

      20.0                          5.0

       0.0                          0.0
             転送量(MB/s)                    CPU使用率(%)

17
性能は
     なんとなく
     わかったので
18
あらためて
     アーキテクチャ
        解説
19
ペアレント
                                  チャイルド パーティション
     パーティション
       Windows        Hyper-V対応        Xen対応      その他
      Server 2008      Windows          Linux    一般のOS

       仮想マシン
                      アプリケーション       アプリケーション   アプリケーション
      管理サービス等

                                                 カーネル
       VSP                  VSC         VSC
                    VMBus
                            VMBus               エミュレート
                                                  された
                       Hyper-V対応       Xen対応     デバイス
                        カーネル           カーネル
      デバイス
      ドライバ                    ハイパーバイザ



20
                              ハードウェア
ペアレントとチャイルド




21
ペアレント パーティション
     ディスク、NIC等のデバイスを所有
      デバイスドライバはハイパーバイザではなく
      ペアレント パーティションにある
      XenのDomain-0に相当
     リモート管理のインタフェース
      WMIプロバイダ
      RDP接続の受け入れ
     単一障害点となるので
     留意が必要
      余計なソフトを動かさない
      server core構成も検討する
22    クラスタ化 (MSCS)
チャイルドパーティション (VM)
     完全仮想化の 64-bit 仮想マシン
      Hyper-V上での実行を考慮されていないOSも、
      無修正で実行できる (サポータビリティはまた別の問題・・・)
     準仮想化の要素もある
      カーネルの最適化
       Hypercallの活用
       Windows Vista SP1
       Windows Server 2008
      準仮想化ドライバ
       “統合サービスコンポーネント”
       “VMBus”デバイス
       Xenの ”HVMドメイン
       +準仮想化ドライバ” 構成に近い
23
統合I/Oアーキテクチャ




24
Hyper-V 2種類のI/Oデバイス
              ゲストOSに
              「統合サービスコンポーネント」が
     統合デバイス   インストールされている場合に利用可能
              いわゆる準仮想化デバイスであり、
              オーバヘッドが少ない

              「統合サービスコンポーネント」が用意され
              ていないOSをゲストとして動かす場合は、
              こちらのモードになる
     エミュレート
     デバイス     Virtual Serverと同様に、実際のハードウェア
              を完全にエミュレートしたデバイスで、
              エミューションのオーバヘッドの分、
              CPUに負荷がかかる
25
統合サービスコンポーネント
     Integration Services Component

       統合デバイスを利用するには、ゲストOSに
       「統合サービスコンポーネント (IC)」の
       インストールが必要
       「サポートされた」OSはICが用意されている
          Windows Server 2008
          Windows Vista SP1
          Windows Server 2003 SP2
          Windows XP SP2 / SP3
          Windows 2000 Server SP4
          SUSE Linux Enterprise Server 10 SP1 / SP2
          Red Hat Enterprise Linuxも対応予定
26
VSP, VSC, VMBus
      「統合デバイス」の構成要素
      VSP (Virtualization Service Provider)
        ペアレント パーティションで動作する、いわゆる
        バックエンドドライバ
        ストレージVSP, ネットワークVSP等が存在
      VSC (Virtualization Service Client)
        いわゆるフロントエンド
        ドライバ
      VMBus
        VSPとVSCの通信経路
        実体は共有メモリ
27
エミュレートデバイスのI/O
      ペアレント     チャイルド       チャイルド パーティ
     パーティション   パーティション
                            ションのデバイスドラ
      ワーカー                  イバの動きをハイパー
               アプリケーション
      プロセス                  バイザがハンドリング

                ファイル        ペアレント パーティ
                システム        ションのユーザーモー
                            ドプロセスも介在
                デバイス
                ドライバ        モード遷移が多い
     デバイス
     ドライバ          ハイパーバイザ



28
                   ハードウェア
統合デバイスのI/O
      ペアレント           チャイルド       例えばディスクへの書
     パーティション         パーティション
                                  き込み要求は、
      ワーカー                        VSC→VMBus→VSPと
                     アプリケーション
      プロセス                        カーネルモードだけで
                                  完結
                      ファイル
                      システム        チャイルド パーティ
                                  ション内でのデバイス
      VSP    VMBus     VSC        エミュレーション処理
                                  がないので、オーバ
     デバイス                         ヘッドが少ない
     ドライバ                ハイパーバイザ



29
                         ハードウェア
ハイパーバイザの正体と
     Hyper-Vの起動シーケンス




30
ハイパーバイザの正体
     実は.exeファイル
      %systemroot%System32 に存在


      hvix64.exe   Intel プロセッサ用

      hvax64.exe AMD プロセッサ

     ちなみに、サイズは800キロバイト弱

31
ハイパーバイザ?
     ここで疑問が・・・
      Windowsの下で動いているはずの
      ハイパーバイザが、なぜWindows上の
      ファイルなのか?
      ペアレント パーティションというのも
      結局ホストOS
      だったのか?




32
Hyper-V起動シーケンス (1)
      Windows
     Server 2008   電源投入、Windows起動

                   この時点ではまだ、
       Windows     ハイパーバイザは動いて
       カーネル
                   いない
                   通常の物理Windowsマシンと
                   して起動する



33
                     ハードウェア
Hyper-V起動シーケンス (2)
      Windows
     Server 2008   HVBoot.sys
                    ハイパーバイザをロードする
                    ためのデバイスドライバ
       Windows      Hyper-Vロール追加時に有効化
       カーネル         される
      HVBoot.sys   Windows起動直後に、
                   このデバイスドライバも開始
                   される


34
                      ハードウェア
Hyper-V起動シーケンス (3)
      Windows
     Server 2008    HVBoot.sysの動き
                      ハイパーバイザの存在チェック
                      プラットフォームの判別
       Windows        CPUの仮想化支援機構が有効に
       カーネル           なっているか、チェック
      HVBoot.sys      ハイパーバイザを起動

              ハイパーバイザ
              VTやAMD-Vは
                 Intel?
              使えるかな?
               あるかな?
                起動!
                AMD?




35
                          ハードウェア
Hyper-V起動シーケンス (4)
      ペアレント
      Windows
     パーティション       ハイパーバイザの動き
     Server 2008
                    CPUの仮想化支援機構を活用し、Windows
      仮想マシン
                    カーネルの下に潜り込む
     管理サービス等
                    「ペアレント パーティション」を形成し、
                    その中でWindowsの起動を続行
       Windows      仮想マシン管理サービスなどが
       カーネル         起動され、Hyper-V起動完了

      HVBoot.sys




                    ハイパーバイザ



36
                     ハードウェア
仮想化
     支援機構
       ?
37
CPUの仮想化支援機構
     ハイパーバイザの実装を助ける
     プロセッサ側の機構
      Intel VT-x
      AMD AMD-V


     Hyper-Vの実行には必須




38
CPUの特権レベル
                      実行環境
     x86系のCPUには
     4つの「特権レベル」       ユーザー
                     プログラム
      リング0~3         (リング 3)
       リング0が最強
     WindowsやUnix系
     OSでは、普通0と3を
                     OSカーネル
     カーネルモード、         (リング 0)
     ユーザーモードに使用

39
                     ハードウェア
ゲストOSを支配せよ
     ハイパーバイザは、       実行環境

     ゲストOSの動きを完全に    ユーザー
     制御できなければならない   プログラム
                    (リング 3)



     ゲストOSのカーネルが
     動く「リング0」より     OSカーネル
     下に潜り込む必要がある     (リング 0)


                    ハイパーバイザ

40
                    ハードウェア
ハイパーバイザの動作モード
     通常の”リング0~3”の特権レベルとは別の切り口で
     動作モードが追加されている
      「仮想マシンモード」
      「ハイパーバイザモード」




41
CPUの仮想化支援機構とは
      ハイパーバイザは「仮想マシンモード」で実行される
      プログラムを完全に制御できる。
      「ハイパーバイザがWindowsより下で動いている」
      というのはこのことを指している。




42
「仮想マシンモード」や
     「ハイパーバイザモード」は
      正式な用語ではありません

       Intel VTとAMD-V
      それぞれで呼び方が
     異なるため、便宜的に
     こう表記しております。
43
ハイパーバイザ
     起動の仕掛けが
     判明しました。
44
次に、
     ハイパーバイザが
     どのようにCPUを
     管理しているのか
45
簡単に
      図解
46
ハイパーバイザのCPU管理
      ペアレント        チャイルド1        チャイルド2        チャイルド3
     パーティション        (2CPU)        (2CPU)        (4CPU)




     VP 0   VP 0   VP 1   VP 1   VP 0   VP 2   VP 1     VP 3
      Root VP 0     Root VP 1     Root VP 2       Root VP 3
        LP 0          LP 1          LP 2            LP 3

                          ハイパーバイザ
        コア0           コア1           コア0            コア1
              ソケット0                       ソケット1
47
ここで
      重要
     なのは
48
ペアレントの
     CPUもVirtual
     だということ
49
CPUに関する注意点
     CPUはハイパーバイザが掌握している


     ペアレント パーティションから見えている
     CPUも、Virtual Processorである


     ペアレント パーティションのCPUを見て
     も、
     マシン全体のCPU使用率はわからない!
50
マシン全体のCPU使用率
     ペアレント パーティションの
     パフォーマンス カウンタ
     "Hyper-V Hypervisor Logical Processor“
     オブジェクト
     他のカウンタについては
     後ほど




51
まとめ: Hyper-Vの構造
      ハイパーバイザ
       CPUの仮想化支援機構を活用し仮想マシンを掌握
      ペアレント パーティション
       ディスクやNIC等のデバイスを管理する
      チャイルド パーティション
       完全仮想化と準仮想化、双方の長所をあわせ持つ
       「完全仮想化VM + 準仮想デバイス」
      統合I/O
       オーバヘッドの少ないI/Oの秘密は
       「統合サービスコンポーネント」
       によって導入される準仮想デバイス
52
ストレージ




53
ストレージ
       重要
54
一般的に
55
CPUの
      能力は
     あまり気味
56
ディスクは
       結構
      忙しい
57
二つの観点から
     仮想マシンのストレージ
      仮想ハードディスクの種類
      パススルー ディスクの使用
      接続形態 (IDE/SCSI)


     ホストのストレージ
      物理ディスク構成
58
仮想マシンのディスク種別
     仮想ハードディスク
      ホスト上のファイル(.vhd)をVMに割り当て
       ペアレント パーティション           VM

     ボリューム   X:VHDsVM1.vhd   C:



     パススルーディスク
      ホストのディスクをVMに直結
       ペアレント パーティション           VM

     ボリューム                     C:
59
仮想ハードディスクの種類

     固定サイズ
     可変サイズ
     差分ディスク


60
固定サイズVHD
     ディスクサイズ≒VHDファイルのサイズ
       ペアレント パーティション                 VM

     ボリューム   X:VHDsVM1.vhd         C:

              ファイルサイズ          ≒   ディスク容量



     速度
      物理ディスクとの速度差は概ね10%以内
      パススルーにはやや劣るが十分に高速

61
可変サイズVHD
     ファイルサイズ
      ゲストOS上でディスクへの書き込みが
      行われると動的に拡張される
     速度
      読み込みは固定サイズVHDと同等
      書き込みは、VHDファイル拡張の
      オーバヘッドで遅くなる




62
可変VHDの構造と注意点
                                  ヘッダ
     VHDの内部はデータ
                      BAT (Block Allocation Table)
     ブロックが並んでいる
                     ビット      セクタの並び (1セクタ=512bytes)
                     マップ      0   1   2   3   4   5   6   7
                    0 1 0 0
     可変ディスクの        1 1 1 0
     データブロックは、                データブロック 1
     先頭にセクタビット       ビット              セクタの並び
     マップを持つ          マップ      0   1   2   3   4   5   6   7
                    1 0 1 1
                    0 1 0 1
                              データブロック 2
     ビットの値が”0”なら、
     対応セクタはオール0               データブロック n
                                  フッタ
63
可変VHDの構造と注意点
     読み込み時の動作         400
      まずビットマップを検査     350
                                    Read
      ビットが0なら実際にセクタ                 Write
                      300
      から読み込むことなく、
      セクタサイズ分の0を返す    250

     テスト時に注意          200

      ベンチマークツールは、   150
      テスト用ファイルを0埋めで 100
      作成することが多い      50
      このようなファイルの読み込   0
      みは「幻の速さ」を示す
                            可変VHD   固定VHD

64
差分VHD
     既存のVHDを「親」として
     作成された、「子」VHD          親.vhd
      親VHDは読み取り専用
      書き込みはすべて子VHDへ   子1.vhd   子2.vhd

      親ディスクは複数の
                      孫1.vhd   孫2.vhd
      差分VHDで共有可能
      差分VHDは多段連結可能
                               ひ孫1.vhd




65
差分VHD利用イメージ
                 マスターイメージをコピーする
      ペアレント      ことなく仮想マシンを複製可能
     パーティション
                 時間とディスク領域の節約
       親VHD
     sysprep済み
     OSイメージ      VM1     VM2      VM3

      子VHD        C:

      子VHD                   C:

      子VHD                         C:


66
                   ハイパーバイザ
差分VHDの注意点
     パフォーマンス劣化
      差分ディスク(子ディスク)は、必ず可変サイズ
      VHDになる
       可変ディスクのオーバヘッドによる性能低下
      あまり多段階の接続を行うと、チェインを
      たぐるオーバヘッドが無視できなくなる




67
VHDの使い分け
     「本番固定、開発可変」が原則
      本番環境では、固定サイズの速度を優先
      開発環境では、可変サイズの柔軟性を生かす


     ただし、原則はあくまで原則
      例えば、フロントエンドのWebサーバのように
      「ステートレスな」サーバは、可変サイズVHD
      も選択肢の一つ
     ※ MSDN, TechNetの本番Webサーバは、
      250GBの可変VHDを使っています
68
VHDはフラグメントに注意
       仮想環境では起きうる箇所が増える
                            data.mdf        仮想マシン内で
     仮想マシン
     内のファイル     C:                           デフラグ


     仮想ハード      H                      F
                                             管理ツールで
     ディスクの      E
                A   BAT                O
                                       O


     ブロック配置
                D                      T
                                           「ディスクの最適化」


                          VM01.vhd
     ホスト上の                                   ホスト上で
     .vhdファイル             V:VHDs           デフラグ
69
パススルーディスク
     物理ディスクを仮想マシンに直結
      接続の単位は、物理ディスク全体
       パーティション単位ではない


     速度は物理ディスクとほぼ同等
     制限事項
      スナップショットがとれない
      エクスポート・インポートできない
      「物理マシン」と「OSの稼働環境」を切り離すことが
      できるという、仮想化の主要なメリットを失う


70
固定サイズVHD vs. パススルー
     50
     45
     40
                            5%程度の差
     35
     30
     25
     20
     15                   ※ あくまでも
     10                     参考値です
     5
     0
          パススルー   固定サイズ
71
IDEか? SCSIか?
      VMへのディスク接続方式
       仮想IDEと仮想SCSIの2種類
      OSを起動できるのはIDEのみ
      お奨めは、
      「起動IDE」「データSCSI」
      両者に性能差はほぼ無いが、
      監視のしやすさに差がある
       SCSIはディスク毎にカウンタがある
       IDEはコントローラ単位全体で一つの
       カウンタにまとめられてしまっている
        しかも現在はバグのため、ICありだと機能しない
72
IDEとSCSI – カウンタの違い
                 IDEはVM全体で
                  1インスタンス




       SCSIは、
      ディスク毎に
     個別インスタンス
73
ホストのストレージ
     構成の原則
      システムドライブとVM配置ドライブは分ける
     システムドライブの構成
      RAID1 (ミラーリング) 構成を推奨
        ペアレント パーティションをハードウェア障害から
        保護

                 VHD         VHD         VHD

                       VHD         VHD         VHD

      システムドライブ           VM配置ドライブ

74
ホストのストレージ (続き)
     VM配置ドライブの構成
      ディスク台数
       本番環境では、“仮想マシン1台あたり1スピンドル”
       を下回らない台数が必要
      ディスクは別々に使わず、束ねる
       複数のディスクをストライピングし、
       一つに束ねる(RAID1+0等)編成を推奨
       ただし、RAID5はお奨めしない (書き込みが遅い)
      クラスタサイズを大きめに
       VMボリュームとしての普通サイズは16KB
       ヘビーな書き込みが行われるなら64KBでも良い
75
ストレージ構成の例
          VM1              VM2             VM3                 VM4              VM5
     C:       D:      C:      D:      C:      D:          C:      D:       C:      D:

     IDE     SCSI     IDE    SCSI     IDE    SCSI     IDE        SCSI      IDE    SCSI




                             VHD       VHD           VHD             VHD         VHD

                            VHD      VHD            VHD          VHD         VHD




           システム
           (RAID 1)                 仮想マシン配置ドライブ (RAID 50)

76
まとめ: Hyper-Vストレージ
      仮想マシンのディスク構成
      本番: 固定VHD
      開発、テスト: 可変VHD
      パススルーは慎重に
      起動ドライブ以外はSCSI接続
      ホストのディスク構成
      システムと、VM配置ドライブは分ける
      VM配置ドライブはストライピングせよ
      クラスタサイズは大きめに

77
スナップショット




78
スナップショット
     仮想マシンの一時点での状態を保存し、
     いつでもその状態に戻すことができる
      VMが実行中でも停止中でも作成できる
     仮想マシン毎に50個まで
     システムに重大な変更を
     加える前等に作成して
     おくと、変更前の状態へ
     簡単に戻せるため便利


79
スナップショットの仕組み
      VM新規作成              初期状態
                    構成情報           メモリ情報
 仮想マシンは4種類の          (.xml)         (.bin)
 ファイルから構成される
                  仮想ディスク            状態情報
                    (.vhd)           (.vsv)
                          スナップショット①作成後
        スナップショット①             構成情報           メモリ情報
 VMの構成ファイルをコピーする               (.xml)         (.bin)
 VHDは大きすぎるので
 コピーせず差分ディスクを作る          差分ディスク       状態情報
                          (.avhd) スナップショット②作成後
                                       (.vsv)
               スナップショット②                構成情報       メモリ情報
                                         (.xml)     (.bin)
 スナップショットを作成する度に
 差分ディスクの連鎖が長くなっていく                 差分ディスク          状態情報
                                    (.avhd)         (.vsv)
80
スナップショットの注意点
     性能面
      差分ディスクなので、ディスクの連鎖をたぐる
      オーバヘッドがある
      差分ディスクは可変サイズディスクなので、
      書込時にファイル拡張のオーバヘッドがある


     分散システムの整合性
      過去や未来を簡単に往復できるので、
      複数サーバが連携するシステムでの使用は
      注意が必要
81
スナップショットの注意点
     推奨されない使い方
      基本的に本番環境では非推奨
       ソフトウェア開発・テスト環境や、更新プログラム
       の検証環境での仕様を想定


      ドメインコントローラのスナップショット作成
       イメージバックアップからのリストアと同じ問題


      MOSSやExchange Serverのように、
      ロールの異なる複数のマシンから構成される
      システムでのスナップショット作成
82
Hyper-Vをクラスタリング




83
Hyper-Vのクラスタ化
      Hyper-Vのホストマシン同士を、
      Windows Server 2008のフェールオーバー
      クラスタ機能でクラスタ化
       最大ノード数は16
       仮想マシンは共有ストレージに配置
       SAN (FC/iSCSI)が基本だが、NASも使用可能




84
Hyper-V ホストクラスタリング




          VHD   VHD   VHD
           VHD   VHD   VHD
            VHD   VHD   VHD
85
仮想マシンをクラスタへ登録
     Windows Server 2008のフェールオーバー
     クラスタリングは、Hyper-Vの仮想マシン
     を認識




86
仮想マシンをクラスタへ登録
     一覧から選択するだけで、仮想マシンを
     クラスタに登録




87
Quick Migration
      クラスタに登録された仮想マシンは、
      クラスタノード間を移動可能になる
      計画停止、非計画停止の両方を想定
        計画停止時は、VMのメモリ内容をいったん
        ファイルへ保存し、移動先のノードで復元する
        非計画停止時は、移動先ノードでVMが再起動
        される




88
Quick Migration 概念図

                VM2用LUN
                 VM2.xml

                 VM2.vhd

       VM2       VM2.bin

                VM1用LUN
                 VM1.xml
       VM1
                 VM1.vhd

                 VM1.bin


89      ノード1   共有ストレージ     ノード2
Quick Migrationの留意点
      フェールオーバの単位
       仮想マシンの移動 == 物理ディスクのフェール
       オーバ
       フェールオーバはLUN単位なので、1つのLUN
       に複数の仮想マシンを配置すると、それらは個
       別に移動できず、常にまとまって移動すること
       になる
       VM毎に専用のLUNを割り当てることになり、
       管理が煩雑になる可能性がある


90
単一LUN, 複数VMの問題点
     単一LUNに複数VMを押し込むと、
     個別に移動でき       なくなる
                単一LUN
                VM2.xml

                VM2.vhd

      VM2       VM2.bin



                VM1.xml
      VM1
                VM1.vhd

                VM1.bin


91     ノード1   共有ストレージ     ノード2
性能測定




92
仮想環境の性能測定
     性能測定は二段構え
      仮想マシン内の性能測定
      通常の物理マシンと同じように測定する
      実際に利用するアプリケーションを
      計測対象とするのが望ましい
      ペアレント パーティションでの性能測定
      ゲストOS内から測定できるのは、
      仮想マシン単体の状況のみ
      ペアレント パーティションにはHyper-V固有の
      パフォーマンスカウンタが存在
       個々の仮想マシンの性能
93
       マシン全体としての性能
Hyper-V パフォーマンスカウンタ
      ペアレント パーティションで取得可能
     用途               カウンタ名

     マシン全体のCPU使用率     Hyper-V Hypervisor Logical Processor

     ペアレント パーティションの   Hyper-V Hypervisor Root Virtual Processor
     CPU使用率

     仮想マシンのCPU使用率     Hyper-V Hypervisor Virtual Processor

     仮想マシンのディスク       Hyper-V Virtual IDE Controller
     (IDE)
     仮想マシンのディスク       Hyper-V Virtual Storage Device
     (SCSI)
     仮想NICの使用状況       Hyper-V Virtual Network Adapter

94
性能測定: 概念図
      ペアレント      仮想マシン      仮想マシン      仮想マシン
     パーティション                 その2        その3
                  その1

       Hyper-V    性能測定対象     性能測定対象     性能測定対象
     パフォーマンス     アプリケーション   アプリケーション   アプリケーション
      カウンタ


                 仮想マシンの     仮想マシンの     仮想マシンの
     マシン全体の
                 単体性能を       単体性能を      単体性能を
      性能を測定
                   測定          測定         測定


                     ハイパーバイザ



95
                     ハードウェア
マシン全体の状況を把握するには
     対象     オブジェクト          カウンタ                           備考
     CPU    Hyper-V         % Total Run Time               ※ “Processor”オブジェクト
            Hypervisor                                     はマシン全体のCPU使用率
            Logical                                        を示さないことに注意!
            Processor

     メモリ    Memory          Pages/sec
            Physical Disk   Disk Transfers/sec             ページファイルのあるドラ
                                                           イブの値を取得
                                                           Pages/secがこの値の20%
                                                           に達するようであれば、メ
                                                           モリが足りない

     ディスク   Physical Disk   Avg. Disk sec / Read           VHDファイルの配置ドライ
                            Avg. Disk sec / Write          ブの値を取得
                            Avg. Disk Read Queue Length    Queue Lengthはディスクの
                            Avg. Disk Write Queue Length   スピンドル数の1.5倍以内程
                                                           度に収まるのが目安


96
Hyper-Vと
     マイクロソフト製品




97
サーバー製品の仮想化対応情報
     2008/8/19 KB公開
      “Microsoft server software and supported
      virtualization environments”
      http://support.microsoft.com/kb/957006/en-us

      31種類のサーバー製品について、
      Hyper-V上での動作についての情報を公開


     さらに、”90日ルール”の一部撤廃を発表
      Quick MigrationやVMotionの活用に対応


98
BizTalk Server on Hyper-V
      BizTalk Server 2004, 2006, 2006 R2は
      完全サポート
      MSDNに「Hyper-V Guide」公開
        BizTalk Server 2006 R2 Hyper-V Guide
        http://msdn.microsoft.com/en-us/library/cc768518.aspx

        パフォーマンス測定結果も公開
           シナリオ1: 単一VM + 物理SQL Server
           シナリオ2: 複数VM + 物理SQL Server
           シナリオ3: 複数VM + 仮想SQL Server
           シナリオ4: 複数VM + 仮想SQL Server 単一筐体集約

99
Exchange Server on Hyper-V
      サポートされるバージョン
        Windows Server 2008上でのExchange Server 2007 SP1
      サーバー ロール
        ユニファイド メッセージング (UM) 以外はすべてサポート
      プロセッサ
        VP:LP比率は2:1まで
      仮想ハードディスク
        本番環境では、固定サイズVHDだけをサポート
        可変サイズおよび差分ディスクの使用は非サポート
        → 必然的にスナップショットも非サポート
      Exchange DBとログは、VM自体とは別スピンドルのディスクに配置
      することをお奨め
      Microsoft Support Policies and Recommendations for Exchange
      Servers in Hardware Virtualization Environments
        http://technet.microsoft.com/en-us/library/cc794548.aspx
100
SQL Server on Hyper-V
      SQL Server 2005, 2008
        (ほぼ)完全にサポート
        ただし、仮想マシン同士でのフェールオーバー クラス
        タリングは非サポート
         データベースミラーリングはサポート



      詳細は、こちらの技術情報をご参照ください
        「ハードウェア仮想化環境で Microsoft SQL Server 製
        品を実行する場合のサポート ポリシー」
        http://support.microsoft.com/kb/956893/ja


101
関連セッション
      T4-311
      System Center & Dynamic IT バード ビュー
       8 月 27 日(水) 13:40 - 14:55


      T4-310
      System Center Virtual Machine Manager を
      利用した Windows Server 2008 Hyper-V
      管理のベスト プラクティス
       8 月 29 日(金) 13:40 - 14:55

102
参考資料
      Performance Tuning Guidelines for Windows Server 2008
      http://www.microsoft.com/whdc/system/sysperf/Perf_tun_srv.mspx
      Hyper-V: Integration Components and Enlightenments
      http://blogs.msdn.com/tvoellm/archive/2008/01/02/hyper-v-integration-components-and-
      enlightenments.aspx
      Hyper-V: How to make sure you are getting the best performance
      when doing performance comparisons
      http://blogs.msdn.com/tvoellm/archive/2008/04/19/hyper-v-how-to-make-sure-you-are-getting-the-
      best-performance-when-doing-performance-comparisons.aspx
      Hyper-V Performance Counters
      http://blogs.msdn.com/tvoellm/archive/tags/Hyper-V+Performance+Counters/default.aspx
      Storage options for Windows Server 2008 Hyper-V
      http://blogs.technet.com/josebda/archive/2008/02/14/storage-options-for-windows-server-2008-s-
      hyper-v.aspx
      Microsoft.com Operations Virtualizes MSDN and TechNet on Hyper-V
      http://download.microsoft.com/download/6/C/5/6C559B56-8556-4097-8C81-
      2D4E762CD48E/MSCOM_Virtualizes_MSDN_TechNet_on_Hyper-V.docx



103
© 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
      The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should
       not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS,
                                                                                 IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.




104

More Related Content

What's hot

仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディング仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディングTakuya ASADA
 
OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)Takeshi HASEGAWA
 
Hyper-V の本格採用に必要なエンタープライズ設計術
Hyper-V の本格採用に必要なエンタープライズ設計術Hyper-V の本格採用に必要なエンタープライズ設計術
Hyper-V の本格採用に必要なエンタープライズ設計術Daichi Ogawa
 
Hyper vを理解する
Hyper vを理解するHyper vを理解する
Hyper vを理解するNaoki Abe
 
Vertica 8.0.0 新機能
Vertica 8.0.0 新機能Vertica 8.0.0 新機能
Vertica 8.0.0 新機能Kaito Tono
 
#ljstudy KVM勉強会
#ljstudy KVM勉強会#ljstudy KVM勉強会
#ljstudy KVM勉強会Etsuji Nakai
 
パタヘネゼミ 第6章
パタヘネゼミ 第6章パタヘネゼミ 第6章
パタヘネゼミ 第6章okuraofvegetable
 
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)Takeshi HASEGAWA
 
Windows server technical preview hyper v の新機能
Windows server technical preview hyper v の新機能Windows server technical preview hyper v の新機能
Windows server technical preview hyper v の新機能Syuichi Murashima
 
SC 2012 VMM SP1によるHyper-Vホストの展開
SC 2012 VMM SP1によるHyper-Vホストの展開SC 2012 VMM SP1によるHyper-Vホストの展開
SC 2012 VMM SP1によるHyper-Vホストの展開Norio Sashizaki
 
仮想化技術の基本の基本
仮想化技術の基本の基本仮想化技術の基本の基本
仮想化技術の基本の基本terada
 
TechEd2010_T2-401_EffectiveHyper-V
TechEd2010_T2-401_EffectiveHyper-VTechEd2010_T2-401_EffectiveHyper-V
TechEd2010_T2-401_EffectiveHyper-VKuninobu SaSaki
 
Lxc で始めるケチケチ仮想化生活?!
Lxc で始めるケチケチ仮想化生活?!Lxc で始めるケチケチ仮想化生活?!
Lxc で始めるケチケチ仮想化生活?!Etsuji Nakai
 
物理マシンをケチる技術
物理マシンをケチる技術物理マシンをケチる技術
物理マシンをケチる技術Satoshi KOBAYASHI
 
20190225_VxRailCC2_VxRail4.7アップデート_EMC
20190225_VxRailCC2_VxRail4.7アップデート_EMC20190225_VxRailCC2_VxRail4.7アップデート_EMC
20190225_VxRailCC2_VxRail4.7アップデート_EMCVxRail ChampionClub
 
TechEd2009_T1-402_EffectiveHyper-V
TechEd2009_T1-402_EffectiveHyper-VTechEd2009_T1-402_EffectiveHyper-V
TechEd2009_T1-402_EffectiveHyper-VKuninobu SaSaki
 
System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理junichi anno
 
Windows Server 2012 で管理をもっと自動化する
Windows Server 2012 で管理をもっと自動化するWindows Server 2012 で管理をもっと自動化する
Windows Server 2012 で管理をもっと自動化するjunichi anno
 

What's hot (20)

仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディング仮想化環境におけるパケットフォワーディング
仮想化環境におけるパケットフォワーディング
 
OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)OSC2011 Tokyo/Fall 濃いバナ(virtio)
OSC2011 Tokyo/Fall 濃いバナ(virtio)
 
Hyper-V の本格採用に必要なエンタープライズ設計術
Hyper-V の本格採用に必要なエンタープライズ設計術Hyper-V の本格採用に必要なエンタープライズ設計術
Hyper-V の本格採用に必要なエンタープライズ設計術
 
Hyper vを理解する
Hyper vを理解するHyper vを理解する
Hyper vを理解する
 
Vertica 8.0.0 新機能
Vertica 8.0.0 新機能Vertica 8.0.0 新機能
Vertica 8.0.0 新機能
 
#ljstudy KVM勉強会
#ljstudy KVM勉強会#ljstudy KVM勉強会
#ljstudy KVM勉強会
 
パタヘネゼミ 第6章
パタヘネゼミ 第6章パタヘネゼミ 第6章
パタヘネゼミ 第6章
 
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
エンジニアなら知っておきたい「仮想マシン」のしくみ v1.1 (hbstudy 17)
 
Windows server technical preview hyper v の新機能
Windows server technical preview hyper v の新機能Windows server technical preview hyper v の新機能
Windows server technical preview hyper v の新機能
 
SC 2012 VMM SP1によるHyper-Vホストの展開
SC 2012 VMM SP1によるHyper-Vホストの展開SC 2012 VMM SP1によるHyper-Vホストの展開
SC 2012 VMM SP1によるHyper-Vホストの展開
 
Osc2009 Do Xen Hara
Osc2009 Do Xen HaraOsc2009 Do Xen Hara
Osc2009 Do Xen Hara
 
仮想化技術の基本の基本
仮想化技術の基本の基本仮想化技術の基本の基本
仮想化技術の基本の基本
 
KVM+cgroup
KVM+cgroupKVM+cgroup
KVM+cgroup
 
TechEd2010_T2-401_EffectiveHyper-V
TechEd2010_T2-401_EffectiveHyper-VTechEd2010_T2-401_EffectiveHyper-V
TechEd2010_T2-401_EffectiveHyper-V
 
Lxc で始めるケチケチ仮想化生活?!
Lxc で始めるケチケチ仮想化生活?!Lxc で始めるケチケチ仮想化生活?!
Lxc で始めるケチケチ仮想化生活?!
 
物理マシンをケチる技術
物理マシンをケチる技術物理マシンをケチる技術
物理マシンをケチる技術
 
20190225_VxRailCC2_VxRail4.7アップデート_EMC
20190225_VxRailCC2_VxRail4.7アップデート_EMC20190225_VxRailCC2_VxRail4.7アップデート_EMC
20190225_VxRailCC2_VxRail4.7アップデート_EMC
 
TechEd2009_T1-402_EffectiveHyper-V
TechEd2009_T1-402_EffectiveHyper-VTechEd2009_T1-402_EffectiveHyper-V
TechEd2009_T1-402_EffectiveHyper-V
 
System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理
 
Windows Server 2012 で管理をもっと自動化する
Windows Server 2012 で管理をもっと自動化するWindows Server 2012 で管理をもっと自動化する
Windows Server 2012 で管理をもっと自動化する
 

Similar to TechEd2008_T1-407_EffectiveHyper-V

20120609 cod ws2012概要
20120609 cod ws2012概要20120609 cod ws2012概要
20120609 cod ws2012概要Osamu Takazoe
 
20120822_dstn技術交流会_仮想化について
20120822_dstn技術交流会_仮想化について20120822_dstn技術交流会_仮想化について
20120822_dstn技術交流会_仮想化についてdstn
 
Osc2009 Sendai Xen 0124
Osc2009 Sendai Xen 0124Osc2009 Sendai Xen 0124
Osc2009 Sendai Xen 0124Kazuhisa Hara
 
今さら聞けない!Windows server 2012 r2 hyper v入門
今さら聞けない!Windows server 2012 r2 hyper v入門今さら聞けない!Windows server 2012 r2 hyper v入門
今さら聞けない!Windows server 2012 r2 hyper v入門Trainocate Japan, Ltd.
 
SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版Kishima Masakazu
 
command-shift紹介資料
command-shift紹介資料command-shift紹介資料
command-shift紹介資料Takano Masaru
 
N110 ws12概要 osamut_公開版
N110 ws12概要 osamut_公開版N110 ws12概要 osamut_公開版
N110 ws12概要 osamut_公開版Osamu Takazoe
 
2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)
2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)
2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)Takahiro Shinagawa
 
Wakame Project - 自作クラウド研究会
Wakame Project - 自作クラウド研究会Wakame Project - 自作クラウド研究会
Wakame Project - 自作クラウド研究会axsh co., LTD.
 
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティSaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティKuniyasu Suzaki
 
Linux on Power と x86 Linux との技術的な相違点
Linux on Power と x86 Linux との技術的な相違点Linux on Power と x86 Linux との技術的な相違点
Linux on Power と x86 Linux との技術的な相違点Shinichiro Arai
 
今さら聞けないMicrosoft azure仮想マシン入門
今さら聞けないMicrosoft azure仮想マシン入門今さら聞けないMicrosoft azure仮想マシン入門
今さら聞けないMicrosoft azure仮想マシン入門Trainocate Japan, Ltd.
 
次世代仮想化テクノロジー
次世代仮想化テクノロジー次世代仮想化テクノロジー
次世代仮想化テクノロジーSyuichi Murashima
 
次世代仮想化テクノロジー
次世代仮想化テクノロジー次世代仮想化テクノロジー
次世代仮想化テクノロジーSyuichi Murashima
 
Hyper-v、オンプレミスでもコンテナを (トレノケ雲の会 mod2)
Hyper-v、オンプレミスでもコンテナを (トレノケ雲の会 mod2)Hyper-v、オンプレミスでもコンテナを (トレノケ雲の会 mod2)
Hyper-v、オンプレミスでもコンテナを (トレノケ雲の会 mod2)Trainocate Japan, Ltd.
 

Similar to TechEd2008_T1-407_EffectiveHyper-V (20)

20120609 cod ws2012概要
20120609 cod ws2012概要20120609 cod ws2012概要
20120609 cod ws2012概要
 
20120822_dstn技術交流会_仮想化について
20120822_dstn技術交流会_仮想化について20120822_dstn技術交流会_仮想化について
20120822_dstn技術交流会_仮想化について
 
Osc2009 Sendai Xen 0124
Osc2009 Sendai Xen 0124Osc2009 Sendai Xen 0124
Osc2009 Sendai Xen 0124
 
今さら聞けない!Windows server 2012 r2 hyper v入門
今さら聞けない!Windows server 2012 r2 hyper v入門今さら聞けない!Windows server 2012 r2 hyper v入門
今さら聞けない!Windows server 2012 r2 hyper v入門
 
クラウド入門
クラウド入門クラウド入門
クラウド入門
 
第3回「マイクロソフトの仮想化と、クラウドの今後」(2011/06/16 on しすなま!) ①Microsoft様資料
第3回「マイクロソフトの仮想化と、クラウドの今後」(2011/06/16 on しすなま!) ①Microsoft様資料第3回「マイクロソフトの仮想化と、クラウドの今後」(2011/06/16 on しすなま!) ①Microsoft様資料
第3回「マイクロソフトの仮想化と、クラウドの今後」(2011/06/16 on しすなま!) ①Microsoft様資料
 
SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版SC2012 VMM SP1 Update ヒーロー島 版
SC2012 VMM SP1 Update ヒーロー島 版
 
command-shift紹介資料
command-shift紹介資料command-shift紹介資料
command-shift紹介資料
 
N110 ws12概要 osamut_公開版
N110 ws12概要 osamut_公開版N110 ws12概要 osamut_公開版
N110 ws12概要 osamut_公開版
 
2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)
2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)
2010-11-02 第1回クラウドコンピューティング基盤シンポジウム(品川)
 
VIOPS02: 仮想データセンター構築を目指して!
VIOPS02: 仮想データセンター構築を目指して!VIOPS02: 仮想データセンター構築を目指して!
VIOPS02: 仮想データセンター構築を目指して!
 
Wakame Project - 自作クラウド研究会
Wakame Project - 自作クラウド研究会Wakame Project - 自作クラウド研究会
Wakame Project - 自作クラウド研究会
 
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティSaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ
 
XenServer Overview
XenServer OverviewXenServer Overview
XenServer Overview
 
Linux on Power と x86 Linux との技術的な相違点
Linux on Power と x86 Linux との技術的な相違点Linux on Power と x86 Linux との技術的な相違点
Linux on Power と x86 Linux との技術的な相違点
 
第21回「Windows Server 2012 DeepDive!! Hyper-V と VDI を徹底解説」(2012/10/18 on しすなま!)...
第21回「Windows Server 2012 DeepDive!! Hyper-V と VDI を徹底解説」(2012/10/18 on しすなま!)...第21回「Windows Server 2012 DeepDive!! Hyper-V と VDI を徹底解説」(2012/10/18 on しすなま!)...
第21回「Windows Server 2012 DeepDive!! Hyper-V と VDI を徹底解説」(2012/10/18 on しすなま!)...
 
今さら聞けないMicrosoft azure仮想マシン入門
今さら聞けないMicrosoft azure仮想マシン入門今さら聞けないMicrosoft azure仮想マシン入門
今さら聞けないMicrosoft azure仮想マシン入門
 
次世代仮想化テクノロジー
次世代仮想化テクノロジー次世代仮想化テクノロジー
次世代仮想化テクノロジー
 
次世代仮想化テクノロジー
次世代仮想化テクノロジー次世代仮想化テクノロジー
次世代仮想化テクノロジー
 
Hyper-v、オンプレミスでもコンテナを (トレノケ雲の会 mod2)
Hyper-v、オンプレミスでもコンテナを (トレノケ雲の会 mod2)Hyper-v、オンプレミスでもコンテナを (トレノケ雲の会 mod2)
Hyper-v、オンプレミスでもコンテナを (トレノケ雲の会 mod2)
 

More from Kuninobu SaSaki

A100 GPU 搭載! P4d インスタンス 使いこなしのコツ
A100 GPU 搭載! P4d インスタンス使いこなしのコツA100 GPU 搭載! P4d インスタンス使いこなしのコツ
A100 GPU 搭載! P4d インスタンス 使いこなしのコツKuninobu SaSaki
 
EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活Kuninobu SaSaki
 
Automatic Mixed Precision の紹介
Automatic Mixed Precision の紹介Automatic Mixed Precision の紹介
Automatic Mixed Precision の紹介Kuninobu SaSaki
 
GTC Japan 2018 NVIDIA NEWS
GTC Japan 2018 NVIDIA NEWSGTC Japan 2018 NVIDIA NEWS
GTC Japan 2018 NVIDIA NEWSKuninobu SaSaki
 
ISC17 NVIDIA NEWS 日本版
ISC17 NVIDIA NEWS 日本版ISC17 NVIDIA NEWS 日本版
ISC17 NVIDIA NEWS 日本版Kuninobu SaSaki
 
20150821 Azure 仮想マシンと仮想ネットワーク
20150821 Azure 仮想マシンと仮想ネットワーク20150821 Azure 仮想マシンと仮想ネットワーク
20150821 Azure 仮想マシンと仮想ネットワークKuninobu SaSaki
 
Azure仮想マシンと仮想ネットワーク
Azure仮想マシンと仮想ネットワークAzure仮想マシンと仮想ネットワーク
Azure仮想マシンと仮想ネットワークKuninobu SaSaki
 
もっとわかる Microsoft Azure 最新技術アップデート編 - 20150123
もっとわかる Microsoft Azure最新技術アップデート編 - 20150123もっとわかる Microsoft Azure最新技術アップデート編 - 20150123
もっとわかる Microsoft Azure 最新技術アップデート編 - 20150123Kuninobu SaSaki
 
Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」
Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」
Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」Kuninobu SaSaki
 
20140818 オープン白熱塾 ksasakims
20140818 オープン白熱塾 ksasakims20140818 オープン白熱塾 ksasakims
20140818 オープン白熱塾 ksasakimsKuninobu SaSaki
 
YAPC::Asia Tokyo 2013 ランチセッション
YAPC::Asia Tokyo 2013 ランチセッションYAPC::Asia Tokyo 2013 ランチセッション
YAPC::Asia Tokyo 2013 ランチセッションKuninobu SaSaki
 
Windows Azure HDInsight サービスの紹介
Windows Azure HDInsight サービスの紹介Windows Azure HDInsight サービスの紹介
Windows Azure HDInsight サービスの紹介Kuninobu SaSaki
 
Effective Hyper-V - 久しぶりエディション
Effective Hyper-V - 久しぶりエディションEffective Hyper-V - 久しぶりエディション
Effective Hyper-V - 久しぶりエディションKuninobu SaSaki
 
HPC Azure TOP500 2012-11
HPC Azure TOP500 2012-11HPC Azure TOP500 2012-11
HPC Azure TOP500 2012-11Kuninobu SaSaki
 

More from Kuninobu SaSaki (19)

A100 GPU 搭載! P4d インスタンス 使いこなしのコツ
A100 GPU 搭載! P4d インスタンス使いこなしのコツA100 GPU 搭載! P4d インスタンス使いこなしのコツ
A100 GPU 搭載! P4d インスタンス 使いこなしのコツ
 
EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活EnrootとPyxisで快適コンテナ生活
EnrootとPyxisで快適コンテナ生活
 
Automatic Mixed Precision の紹介
Automatic Mixed Precision の紹介Automatic Mixed Precision の紹介
Automatic Mixed Precision の紹介
 
GTC 2019 NVIDIA NEWS
GTC 2019 NVIDIA NEWSGTC 2019 NVIDIA NEWS
GTC 2019 NVIDIA NEWS
 
SC18 NVIDIA NEWS
SC18 NVIDIA NEWSSC18 NVIDIA NEWS
SC18 NVIDIA NEWS
 
GTC Japan 2018 NVIDIA NEWS
GTC Japan 2018 NVIDIA NEWSGTC Japan 2018 NVIDIA NEWS
GTC Japan 2018 NVIDIA NEWS
 
ISC17 NVIDIA NEWS 日本版
ISC17 NVIDIA NEWS 日本版ISC17 NVIDIA NEWS 日本版
ISC17 NVIDIA NEWS 日本版
 
GTC17 NVIDIA News
GTC17 NVIDIA NewsGTC17 NVIDIA News
GTC17 NVIDIA News
 
SC16 NVIDIA NEWS
SC16 NVIDIA NEWSSC16 NVIDIA NEWS
SC16 NVIDIA NEWS
 
20150821 Azure 仮想マシンと仮想ネットワーク
20150821 Azure 仮想マシンと仮想ネットワーク20150821 Azure 仮想マシンと仮想ネットワーク
20150821 Azure 仮想マシンと仮想ネットワーク
 
Azure仮想マシンと仮想ネットワーク
Azure仮想マシンと仮想ネットワークAzure仮想マシンと仮想ネットワーク
Azure仮想マシンと仮想ネットワーク
 
もっとわかる Microsoft Azure 最新技術アップデート編 - 20150123
もっとわかる Microsoft Azure最新技術アップデート編 - 20150123もっとわかる Microsoft Azure最新技術アップデート編 - 20150123
もっとわかる Microsoft Azure 最新技術アップデート編 - 20150123
 
Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」
Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」
Cloudera World Tokyo 2014 LTセッション「マイクロソフトとHadoop」
 
20140818 オープン白熱塾 ksasakims
20140818 オープン白熱塾 ksasakims20140818 オープン白熱塾 ksasakims
20140818 オープン白熱塾 ksasakims
 
YAPC::Asia Tokyo 2013 ランチセッション
YAPC::Asia Tokyo 2013 ランチセッションYAPC::Asia Tokyo 2013 ランチセッション
YAPC::Asia Tokyo 2013 ランチセッション
 
Windows Azure HDInsight サービスの紹介
Windows Azure HDInsight サービスの紹介Windows Azure HDInsight サービスの紹介
Windows Azure HDInsight サービスの紹介
 
Effective Hyper-V - 久しぶりエディション
Effective Hyper-V - 久しぶりエディションEffective Hyper-V - 久しぶりエディション
Effective Hyper-V - 久しぶりエディション
 
HPC Azure TOP500 2012-11
HPC Azure TOP500 2012-11HPC Azure TOP500 2012-11
HPC Azure TOP500 2012-11
 
WDD2012_SC-004
WDD2012_SC-004WDD2012_SC-004
WDD2012_SC-004
 

Recently uploaded

論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Danieldanielhu54
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 

Recently uploaded (10)

論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By DanielPostman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 

TechEd2008_T1-407_EffectiveHyper-V

  • 1.
  • 2. Session Code: T1-407 Effective Hyper-V アーキテクチャ解説と パフォーマンスTips 佐々木邦暢 <ksasaki@microsoft.com> マイクロソフト株式会社 2
  • 3. 本日の内容 アーキテクチャ解説 Virtual Serverとの比較 ペアレント / チャイルドパーティション ハイパーバイザの正体 ストレージの仕組みと推奨構成 主要な機能 スナップショット クラスタリング その他 性能測定 Hyper-V上でのMicrosoft製品 3
  • 5. 仮想化ソフトウェアの分類 ホストOS型 ハイパーバイザ型 ゲストOS 仮想化ソフト 管理OS ゲストOS ホストOS 仮想化ソフト ハードウェア ハードウェア ホストOS上の CPU等の 1アプリケーション ハードウェア資源を として動作 直接制御 5
  • 6. 具体的には、 ホストOS型 ハイパーバイザ型 Microsoft Microsoft Virtual Virtual Microsoft Hyper-V PC Server VMware VMware VMware ESX Workstation Server Xen 系 Solaris xVM XenServer OracleVM 6
  • 7. ホストOS型 Virtual Serverから 7
  • 9. その進化を 解説 9
  • 10. アーキテクチャ の違い 10
  • 11. 仮想マシン ペアレント チャイルド (VM) パーティション パーティション Virtual ユーザー アプリ Hyper-V アプリ Server モード ケーション 関連サービス ケーション サービス ゲストOS カーネル カーネル VMMカーネル ペアレントOS ゲスト OS モード ホストOS カーネル カーネル カーネル ハイパーバイザ 11 ハードウェア
  • 13. Virtual Server vs. Hyper-V Virtual 機能 Server Hyper-V 2005 R2 32-bit VM ○ ○ 64-bit VM × ○ VMのSMPサポート × 最大4CPU VMの最大メモリ 3.6 GB 64 GB 13 スナップショット作成 × ○
  • 14. 機能・性能比較 Virtual Server 2005 vs. Hyper-V 14
  • 15. 1CPU VM同士での比較 演算能力の比較 Virtual Server (1CPU) Hyper-V (1CPU) 598.7 611.5 301.0 252.2 105.0 116.2 CPU - Integer Math CPU - Floating Point Math CPU - Image Rotation 15
  • 16. 「全力」勝負 演算能力の比較 Virtual Server (1CPU) Hyper-V (4CPU) 2444 1238 598.7 461.5 252.2 105.0 CPU - Integer Math CPU - Floating Point Math CPU - Image Rotation 16
  • 17. ディスクアクセス性能の比較 スループットはほぼ同じだが、 Hyper-VはCPU使用率が格段に低い 100.0 25.0 80.0 20.0 Virtual Virtual 60.0 Server 15.0 Server 40.0 Hyper-V 10.0 Hyper-V 20.0 5.0 0.0 0.0 転送量(MB/s) CPU使用率(%) 17
  • 18. 性能は なんとなく わかったので 18
  • 19. あらためて アーキテクチャ 解説 19
  • 20. ペアレント チャイルド パーティション パーティション Windows Hyper-V対応 Xen対応 その他 Server 2008 Windows Linux 一般のOS 仮想マシン アプリケーション アプリケーション アプリケーション 管理サービス等 カーネル VSP VSC VSC VMBus VMBus エミュレート された Hyper-V対応 Xen対応 デバイス カーネル カーネル デバイス ドライバ ハイパーバイザ 20 ハードウェア
  • 22. ペアレント パーティション ディスク、NIC等のデバイスを所有 デバイスドライバはハイパーバイザではなく ペアレント パーティションにある XenのDomain-0に相当 リモート管理のインタフェース WMIプロバイダ RDP接続の受け入れ 単一障害点となるので 留意が必要 余計なソフトを動かさない server core構成も検討する 22 クラスタ化 (MSCS)
  • 23. チャイルドパーティション (VM) 完全仮想化の 64-bit 仮想マシン Hyper-V上での実行を考慮されていないOSも、 無修正で実行できる (サポータビリティはまた別の問題・・・) 準仮想化の要素もある カーネルの最適化 Hypercallの活用 Windows Vista SP1 Windows Server 2008 準仮想化ドライバ “統合サービスコンポーネント” “VMBus”デバイス Xenの ”HVMドメイン +準仮想化ドライバ” 構成に近い 23
  • 25. Hyper-V 2種類のI/Oデバイス ゲストOSに 「統合サービスコンポーネント」が 統合デバイス インストールされている場合に利用可能 いわゆる準仮想化デバイスであり、 オーバヘッドが少ない 「統合サービスコンポーネント」が用意され ていないOSをゲストとして動かす場合は、 こちらのモードになる エミュレート デバイス Virtual Serverと同様に、実際のハードウェア を完全にエミュレートしたデバイスで、 エミューションのオーバヘッドの分、 CPUに負荷がかかる 25
  • 26. 統合サービスコンポーネント Integration Services Component 統合デバイスを利用するには、ゲストOSに 「統合サービスコンポーネント (IC)」の インストールが必要 「サポートされた」OSはICが用意されている Windows Server 2008 Windows Vista SP1 Windows Server 2003 SP2 Windows XP SP2 / SP3 Windows 2000 Server SP4 SUSE Linux Enterprise Server 10 SP1 / SP2 Red Hat Enterprise Linuxも対応予定 26
  • 27. VSP, VSC, VMBus 「統合デバイス」の構成要素 VSP (Virtualization Service Provider) ペアレント パーティションで動作する、いわゆる バックエンドドライバ ストレージVSP, ネットワークVSP等が存在 VSC (Virtualization Service Client) いわゆるフロントエンド ドライバ VMBus VSPとVSCの通信経路 実体は共有メモリ 27
  • 28. エミュレートデバイスのI/O ペアレント チャイルド チャイルド パーティ パーティション パーティション ションのデバイスドラ ワーカー イバの動きをハイパー アプリケーション プロセス バイザがハンドリング ファイル ペアレント パーティ システム ションのユーザーモー ドプロセスも介在 デバイス ドライバ モード遷移が多い デバイス ドライバ ハイパーバイザ 28 ハードウェア
  • 29. 統合デバイスのI/O ペアレント チャイルド 例えばディスクへの書 パーティション パーティション き込み要求は、 ワーカー VSC→VMBus→VSPと アプリケーション プロセス カーネルモードだけで 完結 ファイル システム チャイルド パーティ ション内でのデバイス VSP VMBus VSC エミュレーション処理 がないので、オーバ デバイス ヘッドが少ない ドライバ ハイパーバイザ 29 ハードウェア
  • 30. ハイパーバイザの正体と Hyper-Vの起動シーケンス 30
  • 31. ハイパーバイザの正体 実は.exeファイル %systemroot%System32 に存在 hvix64.exe Intel プロセッサ用 hvax64.exe AMD プロセッサ ちなみに、サイズは800キロバイト弱 31
  • 32. ハイパーバイザ? ここで疑問が・・・ Windowsの下で動いているはずの ハイパーバイザが、なぜWindows上の ファイルなのか? ペアレント パーティションというのも 結局ホストOS だったのか? 32
  • 33. Hyper-V起動シーケンス (1) Windows Server 2008 電源投入、Windows起動 この時点ではまだ、 Windows ハイパーバイザは動いて カーネル いない 通常の物理Windowsマシンと して起動する 33 ハードウェア
  • 34. Hyper-V起動シーケンス (2) Windows Server 2008 HVBoot.sys ハイパーバイザをロードする ためのデバイスドライバ Windows Hyper-Vロール追加時に有効化 カーネル される HVBoot.sys Windows起動直後に、 このデバイスドライバも開始 される 34 ハードウェア
  • 35. Hyper-V起動シーケンス (3) Windows Server 2008 HVBoot.sysの動き ハイパーバイザの存在チェック プラットフォームの判別 Windows CPUの仮想化支援機構が有効に カーネル なっているか、チェック HVBoot.sys ハイパーバイザを起動 ハイパーバイザ VTやAMD-Vは Intel? 使えるかな? あるかな? 起動! AMD? 35 ハードウェア
  • 36. Hyper-V起動シーケンス (4) ペアレント Windows パーティション ハイパーバイザの動き Server 2008 CPUの仮想化支援機構を活用し、Windows 仮想マシン カーネルの下に潜り込む 管理サービス等 「ペアレント パーティション」を形成し、 その中でWindowsの起動を続行 Windows 仮想マシン管理サービスなどが カーネル 起動され、Hyper-V起動完了 HVBoot.sys ハイパーバイザ 36 ハードウェア
  • 37. 仮想化 支援機構 ? 37
  • 38. CPUの仮想化支援機構 ハイパーバイザの実装を助ける プロセッサ側の機構 Intel VT-x AMD AMD-V Hyper-Vの実行には必須 38
  • 39. CPUの特権レベル 実行環境 x86系のCPUには 4つの「特権レベル」 ユーザー プログラム リング0~3 (リング 3) リング0が最強 WindowsやUnix系 OSでは、普通0と3を OSカーネル カーネルモード、 (リング 0) ユーザーモードに使用 39 ハードウェア
  • 40. ゲストOSを支配せよ ハイパーバイザは、 実行環境 ゲストOSの動きを完全に ユーザー 制御できなければならない プログラム (リング 3) ゲストOSのカーネルが 動く「リング0」より OSカーネル 下に潜り込む必要がある (リング 0) ハイパーバイザ 40 ハードウェア
  • 41. ハイパーバイザの動作モード 通常の”リング0~3”の特権レベルとは別の切り口で 動作モードが追加されている 「仮想マシンモード」 「ハイパーバイザモード」 41
  • 42. CPUの仮想化支援機構とは ハイパーバイザは「仮想マシンモード」で実行される プログラムを完全に制御できる。 「ハイパーバイザがWindowsより下で動いている」 というのはこのことを指している。 42
  • 43. 「仮想マシンモード」や 「ハイパーバイザモード」は 正式な用語ではありません Intel VTとAMD-V それぞれで呼び方が 異なるため、便宜的に こう表記しております。 43
  • 44. ハイパーバイザ 起動の仕掛けが 判明しました。 44
  • 45. 次に、 ハイパーバイザが どのようにCPUを 管理しているのか 45
  • 46. 簡単に 図解 46
  • 47. ハイパーバイザのCPU管理 ペアレント チャイルド1 チャイルド2 チャイルド3 パーティション (2CPU) (2CPU) (4CPU) VP 0 VP 0 VP 1 VP 1 VP 0 VP 2 VP 1 VP 3 Root VP 0 Root VP 1 Root VP 2 Root VP 3 LP 0 LP 1 LP 2 LP 3 ハイパーバイザ コア0 コア1 コア0 コア1 ソケット0 ソケット1 47
  • 48. ここで 重要 なのは 48
  • 49. ペアレントの CPUもVirtual だということ 49
  • 50. CPUに関する注意点 CPUはハイパーバイザが掌握している ペアレント パーティションから見えている CPUも、Virtual Processorである ペアレント パーティションのCPUを見て も、 マシン全体のCPU使用率はわからない! 50
  • 51. マシン全体のCPU使用率 ペアレント パーティションの パフォーマンス カウンタ "Hyper-V Hypervisor Logical Processor“ オブジェクト 他のカウンタについては 後ほど 51
  • 52. まとめ: Hyper-Vの構造 ハイパーバイザ CPUの仮想化支援機構を活用し仮想マシンを掌握 ペアレント パーティション ディスクやNIC等のデバイスを管理する チャイルド パーティション 完全仮想化と準仮想化、双方の長所をあわせ持つ 「完全仮想化VM + 準仮想デバイス」 統合I/O オーバヘッドの少ないI/Oの秘密は 「統合サービスコンポーネント」 によって導入される準仮想デバイス 52
  • 54. ストレージ 重要 54
  • 56. CPUの 能力は あまり気味 56
  • 57. ディスクは 結構 忙しい 57
  • 58. 二つの観点から 仮想マシンのストレージ 仮想ハードディスクの種類 パススルー ディスクの使用 接続形態 (IDE/SCSI) ホストのストレージ 物理ディスク構成 58
  • 59. 仮想マシンのディスク種別 仮想ハードディスク ホスト上のファイル(.vhd)をVMに割り当て ペアレント パーティション VM ボリューム X:VHDsVM1.vhd C: パススルーディスク ホストのディスクをVMに直結 ペアレント パーティション VM ボリューム C: 59
  • 60. 仮想ハードディスクの種類 固定サイズ 可変サイズ 差分ディスク 60
  • 61. 固定サイズVHD ディスクサイズ≒VHDファイルのサイズ ペアレント パーティション VM ボリューム X:VHDsVM1.vhd C: ファイルサイズ ≒ ディスク容量 速度 物理ディスクとの速度差は概ね10%以内 パススルーにはやや劣るが十分に高速 61
  • 62. 可変サイズVHD ファイルサイズ ゲストOS上でディスクへの書き込みが 行われると動的に拡張される 速度 読み込みは固定サイズVHDと同等 書き込みは、VHDファイル拡張の オーバヘッドで遅くなる 62
  • 63. 可変VHDの構造と注意点 ヘッダ VHDの内部はデータ BAT (Block Allocation Table) ブロックが並んでいる ビット セクタの並び (1セクタ=512bytes) マップ 0 1 2 3 4 5 6 7 0 1 0 0 可変ディスクの 1 1 1 0 データブロックは、 データブロック 1 先頭にセクタビット ビット セクタの並び マップを持つ マップ 0 1 2 3 4 5 6 7 1 0 1 1 0 1 0 1 データブロック 2 ビットの値が”0”なら、 対応セクタはオール0 データブロック n フッタ 63
  • 64. 可変VHDの構造と注意点 読み込み時の動作 400 まずビットマップを検査 350 Read ビットが0なら実際にセクタ Write 300 から読み込むことなく、 セクタサイズ分の0を返す 250 テスト時に注意 200 ベンチマークツールは、 150 テスト用ファイルを0埋めで 100 作成することが多い 50 このようなファイルの読み込 0 みは「幻の速さ」を示す 可変VHD 固定VHD 64
  • 65. 差分VHD 既存のVHDを「親」として 作成された、「子」VHD 親.vhd 親VHDは読み取り専用 書き込みはすべて子VHDへ 子1.vhd 子2.vhd 親ディスクは複数の 孫1.vhd 孫2.vhd 差分VHDで共有可能 差分VHDは多段連結可能 ひ孫1.vhd 65
  • 66. 差分VHD利用イメージ マスターイメージをコピーする ペアレント ことなく仮想マシンを複製可能 パーティション 時間とディスク領域の節約 親VHD sysprep済み OSイメージ VM1 VM2 VM3 子VHD C: 子VHD C: 子VHD C: 66 ハイパーバイザ
  • 67. 差分VHDの注意点 パフォーマンス劣化 差分ディスク(子ディスク)は、必ず可変サイズ VHDになる 可変ディスクのオーバヘッドによる性能低下 あまり多段階の接続を行うと、チェインを たぐるオーバヘッドが無視できなくなる 67
  • 68. VHDの使い分け 「本番固定、開発可変」が原則 本番環境では、固定サイズの速度を優先 開発環境では、可変サイズの柔軟性を生かす ただし、原則はあくまで原則 例えば、フロントエンドのWebサーバのように 「ステートレスな」サーバは、可変サイズVHD も選択肢の一つ ※ MSDN, TechNetの本番Webサーバは、 250GBの可変VHDを使っています 68
  • 69. VHDはフラグメントに注意 仮想環境では起きうる箇所が増える data.mdf 仮想マシン内で 仮想マシン 内のファイル C: デフラグ 仮想ハード H F 管理ツールで ディスクの E A BAT O O ブロック配置 D T 「ディスクの最適化」 VM01.vhd ホスト上の ホスト上で .vhdファイル V:VHDs デフラグ 69
  • 70. パススルーディスク 物理ディスクを仮想マシンに直結 接続の単位は、物理ディスク全体 パーティション単位ではない 速度は物理ディスクとほぼ同等 制限事項 スナップショットがとれない エクスポート・インポートできない 「物理マシン」と「OSの稼働環境」を切り離すことが できるという、仮想化の主要なメリットを失う 70
  • 71. 固定サイズVHD vs. パススルー 50 45 40 5%程度の差 35 30 25 20 15 ※ あくまでも 10 参考値です 5 0 パススルー 固定サイズ 71
  • 72. IDEか? SCSIか? VMへのディスク接続方式 仮想IDEと仮想SCSIの2種類 OSを起動できるのはIDEのみ お奨めは、 「起動IDE」「データSCSI」 両者に性能差はほぼ無いが、 監視のしやすさに差がある SCSIはディスク毎にカウンタがある IDEはコントローラ単位全体で一つの カウンタにまとめられてしまっている しかも現在はバグのため、ICありだと機能しない 72
  • 73. IDEとSCSI – カウンタの違い IDEはVM全体で 1インスタンス SCSIは、 ディスク毎に 個別インスタンス 73
  • 74. ホストのストレージ 構成の原則 システムドライブとVM配置ドライブは分ける システムドライブの構成 RAID1 (ミラーリング) 構成を推奨 ペアレント パーティションをハードウェア障害から 保護 VHD VHD VHD VHD VHD VHD システムドライブ VM配置ドライブ 74
  • 75. ホストのストレージ (続き) VM配置ドライブの構成 ディスク台数 本番環境では、“仮想マシン1台あたり1スピンドル” を下回らない台数が必要 ディスクは別々に使わず、束ねる 複数のディスクをストライピングし、 一つに束ねる(RAID1+0等)編成を推奨 ただし、RAID5はお奨めしない (書き込みが遅い) クラスタサイズを大きめに VMボリュームとしての普通サイズは16KB ヘビーな書き込みが行われるなら64KBでも良い 75
  • 76. ストレージ構成の例 VM1 VM2 VM3 VM4 VM5 C: D: C: D: C: D: C: D: C: D: IDE SCSI IDE SCSI IDE SCSI IDE SCSI IDE SCSI VHD VHD VHD VHD VHD VHD VHD VHD VHD VHD システム (RAID 1) 仮想マシン配置ドライブ (RAID 50) 76
  • 77. まとめ: Hyper-Vストレージ 仮想マシンのディスク構成 本番: 固定VHD 開発、テスト: 可変VHD パススルーは慎重に 起動ドライブ以外はSCSI接続 ホストのディスク構成 システムと、VM配置ドライブは分ける VM配置ドライブはストライピングせよ クラスタサイズは大きめに 77
  • 79. スナップショット 仮想マシンの一時点での状態を保存し、 いつでもその状態に戻すことができる VMが実行中でも停止中でも作成できる 仮想マシン毎に50個まで システムに重大な変更を 加える前等に作成して おくと、変更前の状態へ 簡単に戻せるため便利 79
  • 80. スナップショットの仕組み VM新規作成 初期状態 構成情報 メモリ情報 仮想マシンは4種類の (.xml) (.bin) ファイルから構成される 仮想ディスク 状態情報 (.vhd) (.vsv) スナップショット①作成後 スナップショット① 構成情報 メモリ情報 VMの構成ファイルをコピーする (.xml) (.bin) VHDは大きすぎるので コピーせず差分ディスクを作る 差分ディスク 状態情報 (.avhd) スナップショット②作成後 (.vsv) スナップショット② 構成情報 メモリ情報 (.xml) (.bin) スナップショットを作成する度に 差分ディスクの連鎖が長くなっていく 差分ディスク 状態情報 (.avhd) (.vsv) 80
  • 81. スナップショットの注意点 性能面 差分ディスクなので、ディスクの連鎖をたぐる オーバヘッドがある 差分ディスクは可変サイズディスクなので、 書込時にファイル拡張のオーバヘッドがある 分散システムの整合性 過去や未来を簡単に往復できるので、 複数サーバが連携するシステムでの使用は 注意が必要 81
  • 82. スナップショットの注意点 推奨されない使い方 基本的に本番環境では非推奨 ソフトウェア開発・テスト環境や、更新プログラム の検証環境での仕様を想定 ドメインコントローラのスナップショット作成 イメージバックアップからのリストアと同じ問題 MOSSやExchange Serverのように、 ロールの異なる複数のマシンから構成される システムでのスナップショット作成 82
  • 84. Hyper-Vのクラスタ化 Hyper-Vのホストマシン同士を、 Windows Server 2008のフェールオーバー クラスタ機能でクラスタ化 最大ノード数は16 仮想マシンは共有ストレージに配置 SAN (FC/iSCSI)が基本だが、NASも使用可能 84
  • 85. Hyper-V ホストクラスタリング VHD VHD VHD VHD VHD VHD VHD VHD VHD 85
  • 86. 仮想マシンをクラスタへ登録 Windows Server 2008のフェールオーバー クラスタリングは、Hyper-Vの仮想マシン を認識 86
  • 87. 仮想マシンをクラスタへ登録 一覧から選択するだけで、仮想マシンを クラスタに登録 87
  • 88. Quick Migration クラスタに登録された仮想マシンは、 クラスタノード間を移動可能になる 計画停止、非計画停止の両方を想定 計画停止時は、VMのメモリ内容をいったん ファイルへ保存し、移動先のノードで復元する 非計画停止時は、移動先ノードでVMが再起動 される 88
  • 89. Quick Migration 概念図 VM2用LUN VM2.xml VM2.vhd VM2 VM2.bin VM1用LUN VM1.xml VM1 VM1.vhd VM1.bin 89 ノード1 共有ストレージ ノード2
  • 90. Quick Migrationの留意点 フェールオーバの単位 仮想マシンの移動 == 物理ディスクのフェール オーバ フェールオーバはLUN単位なので、1つのLUN に複数の仮想マシンを配置すると、それらは個 別に移動できず、常にまとまって移動すること になる VM毎に専用のLUNを割り当てることになり、 管理が煩雑になる可能性がある 90
  • 91. 単一LUN, 複数VMの問題点 単一LUNに複数VMを押し込むと、 個別に移動でき なくなる 単一LUN VM2.xml VM2.vhd VM2 VM2.bin VM1.xml VM1 VM1.vhd VM1.bin 91 ノード1 共有ストレージ ノード2
  • 93. 仮想環境の性能測定 性能測定は二段構え 仮想マシン内の性能測定 通常の物理マシンと同じように測定する 実際に利用するアプリケーションを 計測対象とするのが望ましい ペアレント パーティションでの性能測定 ゲストOS内から測定できるのは、 仮想マシン単体の状況のみ ペアレント パーティションにはHyper-V固有の パフォーマンスカウンタが存在 個々の仮想マシンの性能 93 マシン全体としての性能
  • 94. Hyper-V パフォーマンスカウンタ ペアレント パーティションで取得可能 用途 カウンタ名 マシン全体のCPU使用率 Hyper-V Hypervisor Logical Processor ペアレント パーティションの Hyper-V Hypervisor Root Virtual Processor CPU使用率 仮想マシンのCPU使用率 Hyper-V Hypervisor Virtual Processor 仮想マシンのディスク Hyper-V Virtual IDE Controller (IDE) 仮想マシンのディスク Hyper-V Virtual Storage Device (SCSI) 仮想NICの使用状況 Hyper-V Virtual Network Adapter 94
  • 95. 性能測定: 概念図 ペアレント 仮想マシン 仮想マシン 仮想マシン パーティション その2 その3 その1 Hyper-V 性能測定対象 性能測定対象 性能測定対象 パフォーマンス アプリケーション アプリケーション アプリケーション カウンタ 仮想マシンの 仮想マシンの 仮想マシンの マシン全体の 単体性能を 単体性能を 単体性能を 性能を測定 測定 測定 測定 ハイパーバイザ 95 ハードウェア
  • 96. マシン全体の状況を把握するには 対象 オブジェクト カウンタ 備考 CPU Hyper-V % Total Run Time ※ “Processor”オブジェクト Hypervisor はマシン全体のCPU使用率 Logical を示さないことに注意! Processor メモリ Memory Pages/sec Physical Disk Disk Transfers/sec ページファイルのあるドラ イブの値を取得 Pages/secがこの値の20% に達するようであれば、メ モリが足りない ディスク Physical Disk Avg. Disk sec / Read VHDファイルの配置ドライ Avg. Disk sec / Write ブの値を取得 Avg. Disk Read Queue Length Queue Lengthはディスクの Avg. Disk Write Queue Length スピンドル数の1.5倍以内程 度に収まるのが目安 96
  • 97. Hyper-Vと マイクロソフト製品 97
  • 98. サーバー製品の仮想化対応情報 2008/8/19 KB公開 “Microsoft server software and supported virtualization environments” http://support.microsoft.com/kb/957006/en-us 31種類のサーバー製品について、 Hyper-V上での動作についての情報を公開 さらに、”90日ルール”の一部撤廃を発表 Quick MigrationやVMotionの活用に対応 98
  • 99. BizTalk Server on Hyper-V BizTalk Server 2004, 2006, 2006 R2は 完全サポート MSDNに「Hyper-V Guide」公開 BizTalk Server 2006 R2 Hyper-V Guide http://msdn.microsoft.com/en-us/library/cc768518.aspx パフォーマンス測定結果も公開 シナリオ1: 単一VM + 物理SQL Server シナリオ2: 複数VM + 物理SQL Server シナリオ3: 複数VM + 仮想SQL Server シナリオ4: 複数VM + 仮想SQL Server 単一筐体集約 99
  • 100. Exchange Server on Hyper-V サポートされるバージョン Windows Server 2008上でのExchange Server 2007 SP1 サーバー ロール ユニファイド メッセージング (UM) 以外はすべてサポート プロセッサ VP:LP比率は2:1まで 仮想ハードディスク 本番環境では、固定サイズVHDだけをサポート 可変サイズおよび差分ディスクの使用は非サポート → 必然的にスナップショットも非サポート Exchange DBとログは、VM自体とは別スピンドルのディスクに配置 することをお奨め Microsoft Support Policies and Recommendations for Exchange Servers in Hardware Virtualization Environments http://technet.microsoft.com/en-us/library/cc794548.aspx 100
  • 101. SQL Server on Hyper-V SQL Server 2005, 2008 (ほぼ)完全にサポート ただし、仮想マシン同士でのフェールオーバー クラス タリングは非サポート データベースミラーリングはサポート 詳細は、こちらの技術情報をご参照ください 「ハードウェア仮想化環境で Microsoft SQL Server 製 品を実行する場合のサポート ポリシー」 http://support.microsoft.com/kb/956893/ja 101
  • 102. 関連セッション T4-311 System Center & Dynamic IT バード ビュー 8 月 27 日(水) 13:40 - 14:55 T4-310 System Center Virtual Machine Manager を 利用した Windows Server 2008 Hyper-V 管理のベスト プラクティス 8 月 29 日(金) 13:40 - 14:55 102
  • 103. 参考資料 Performance Tuning Guidelines for Windows Server 2008 http://www.microsoft.com/whdc/system/sysperf/Perf_tun_srv.mspx Hyper-V: Integration Components and Enlightenments http://blogs.msdn.com/tvoellm/archive/2008/01/02/hyper-v-integration-components-and- enlightenments.aspx Hyper-V: How to make sure you are getting the best performance when doing performance comparisons http://blogs.msdn.com/tvoellm/archive/2008/04/19/hyper-v-how-to-make-sure-you-are-getting-the- best-performance-when-doing-performance-comparisons.aspx Hyper-V Performance Counters http://blogs.msdn.com/tvoellm/archive/tags/Hyper-V+Performance+Counters/default.aspx Storage options for Windows Server 2008 Hyper-V http://blogs.technet.com/josebda/archive/2008/02/14/storage-options-for-windows-server-2008-s- hyper-v.aspx Microsoft.com Operations Virtualizes MSDN and TechNet on Hyper-V http://download.microsoft.com/download/6/C/5/6C559B56-8556-4097-8C81- 2D4E762CD48E/MSCOM_Virtualizes_MSDN_TechNet_on_Hyper-V.docx 103
  • 104. © 2008 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. 104