hyper vを理解する
TRANSCRIPT
Windows Server 2012 R2Hyper-V を理解する!
阿部直樹(Naoki ABE)
Microsoft MVP – Hyper-V
自己紹介•阿部直樹( Naoki ABE )
• マイクロソフト認定トレーナー
• エディフィストラーニング株式会社所属
•主な担当分野• Windows Server (AD,Network,Security,Cluster,Hyper-V)
• System Center
• Lync
• Microsoft MVP – Virtual Machine( Apr.2010 - Mar.2015 )
• Blog : MCTの憂鬱<http://naonao71.wordpress.com/>
アジェンダ• Part1 Hyper-V の基礎知識
• Part2 CPU(プロセッサ)
• Part3 メモリー
• Part4 ディスク
• Part5 ネットワーク
• Part6 その他
Part1Hyper-V の基礎知識
Hyper-V インストール要件• BIOS
• ハードウェア仮想化支援• Intel Virtualization Technology(Intel VT)
• AMD Virtualization(AMD-V)
• ハードウェア実行防止(DEP)• INTEL XD ビット(exclude disable
bit)
• AMD NX ビット(no execute bit)
• 64 ビットプロセッサ
Hyper-V アーキテクチャ
物理マシン
Windows Hypervisor
仮想マシンA
ゲストOS
(Windows Server 2008/2003)ホストOS ゲストOS
(Xen Linux)ゲストOS
(その他OS)
ゲストOSアプリ ゲストOSアプリ ゲストOSアプリ ゲストOSアプリ ゲストOSアプリ ゲストOSアプリWMIプロバイダVMサービス VMワーカープロセス
仮想マシンB 仮想マシンC
デバイスドライバ
カーネル
VSCカーネル
VSP
Linux VSCHypercall
Adapterハードウェアエミュレーション
VMBus
親パーティション 子パーティション
ブートローダーの変化• Hyper-V を導入することにより次の項目が追加されハイパーバイザが起動する• Hypervisorlaunchtype Auto
リソースの配分管理
リソース パラメーター
プロセッサ 予約、限度、相対的な重み
メモリ スタートアップ RAM、最少 RAM、最大 RAM、メモリバッファー、メモリの重み
ディスク I/Oストレージ QoS(サービス品質)
ネットワーク I/O 帯域幅管理
仮想マシンの構成情報
プロセッサー
ネットワーク
メモリ
ディスク
構成情報(.xml)
状態情報(.VSV)
メモリ情報(.bin)
仮想ディスク(.vhd)
スナップショット(.avhd)
構成ファイル
ペアレントOS 仮想マシン構成要素
各種リソースのアップデート確認
Part2 プロセッサ
プロセッサの管理
仮想マシン1
仮想マシン2仮想プロセッサ数:2
仮想プロセッサ数:4
物理プロセッサ1
物理プロセッサ2
論理プロセッサ1
論理プロセッサ2
論理プロセッサ3
論理プロセッサ4
サーバに搭載されたプロセッサ・コア数 ≧仮想マシンに設定するVPの総数が推奨ちなみに、ExchangeサーバーではLP:VP=1:2までサポートする
Windows Server 2012 のサポートCPU数•日本語サイト
• http://technet.microsoft.com/ja-jp/library/hh831531.aspx
• Windows Server 2008 with Service Pack 2 (SP 2)・・・8
•英語版サイト
• http://technet.microsoft.com/en-us/library/hh831531.aspx
• Windows Server 2008 with Service Pack 2 (SP 2)・・・4
Windows Server 2008 R2 では最大 VP は 4つまで。しかし、Windows Server 2012 より VP は最大 64
までサポートした。しかし、ゲスト OS としての Windows Server 2008 は 4 つまでのサポートとなる。ただし、設定は可能である。動作することとサポートすることは異なる。
AMD と Intel 間での移行• CPU の互換性の設定は、同じメーカーの製品で世代が異なる際に使用する• Intel と AMD での CPU の違いを吸収するものではない
• 主に同一メーカーの世代が異なるCPU 上で、ライブマイグレーションを行う場合に使用する
•状態情報(.vsv)には CPU 情報やネットワーク情報が入っている。• .bin や .vsv ファイルは VM 起動時に作成される
• VM を停止し(.bin や .vsv ファイルがない状態)、エクスポートする。異なる CPU ホストで インポートする
NUMA 設定
SMP (対称型マルチ プロセッシング)
• 1 個のメモリ コントローラが、全てのプロセッサとメモリを接続している。
• どのプロセッサも、メモリ全体に同じ速度でアクセスできる。
• プロセッサ数が少ないうちは、これで問題なかった。
プロセッサ
チップセット(メモリ コントローラー)
コア コア
プロセッサ
コア コア
プロセッサ増加による課題
• プロセッサが増えるとメモリへの経路がボトルネックになる
• 多くのプロセスのそれぞれが、広大なメモリ空間の大部分をなめるようにアクセスすることは少ない
• 参照の局所性
チップセット(メモリ コントローラー)
プロセッサ
コア コア
コア コア
プロセッサ
コア コア
コア コア
プロセッサ
コア コア
コア コア
プロセッサ
コア コア
コア コア
NUMAアーキテクチャ(Nehalemなど)
プロセッサ
コア コア
コア コアチップセット
(
メモリ
コントローラー)
プロセッサ
コア コア
コア コア チップセット
(
メモリ
コントローラー)
NUMA ノード NUMA ノード
Interconnect
Hyper-V on Windows Server 2008 R2• ハイパーバイザは NUMA を認識
• VM 配置時に NUMA ノードを考慮。
• 可能な限り、NUMA ノードをまたがないように VM のメモリを確保する
•単一NUMAノード内で足りない場合は「NUMA ノードにまたがるメモリ割り当て」の設定によって挙動が変わる
• ON の場合• 単一の NUMA ノード内でメモリを確保できなかった場合は、ノードをまたいでメモリを確保する
• メモリに空きがあれば、 NUMA ノードの大きさを超える「大きな VM」も配置できることになる
• OFF の場合• NUMA ノードをまたぐメモリ割り当ては行わない
• 「システム全体でみればメモリが空いているように見えるが、 VM を起動できない」ことがあり得る
物理マシン
NUMA ノード 0
Hyper-V on Windows Server 2008 R2
• Windows や SQL Server のような“NUMA-aware” ソフトウェアがその能力を発揮できない
• NUMA ノードをまたいだメモリもローカルであるように見える• 通常は「OFF」として設定
コア
NUMA ノード 1
コア
仮想マシン
NUMA ノード 0
コア
コア
VM
作成
物理マシン
NUMA ノード 0
Hyper-V on Windows Server 2012
• NUMA ノードまたぎを過度に避ける必要はない• 通常は「ON」として設定
• ただし、動的メモリを使用する場合は単一 NUMA として認識される• 動的メモリを使用する場合は「OFF」として設定
コア
NUMA ノード 1
コア
VM
作成
物理マシン
NUMA ノード 0
コア
NUMA ノード 1
コア
Part3 メモリー
動的メモリ
•動的メモリ設定を行うことにより、物理マシンに搭載されている最大メモリ量以上のメモリを VM に割り当てることが可能
•動的メモリの最大 RAM は 1T の設定になっている
動的メモリの動作
• スタートアップ RAM• VM 起動時に割り当てる RAM
• 最大 RAM• 物理マシンに存在する RAM で割り当て可能な容量がある場合は、VMからの要求により設定した容量まで割り当てる
• 最小 RAM• VM でのメモリ使用量が少なくなると使用していないメモリを、設定した容量までホストに返却する
ホストの予約メモリー• Hyper-V ホストが使用するメモリを予約• Windows Server 2012 以降は自動調整するので設定はしないほうがよい
• Windows Server 2008 R2 ではレジストリで設定する必要がある
• レジストリで予約可能• キー:HKEY_LOCAL_MACHINE¥
SOFTWARE¥Microsoft¥Windows NT¥CurrentVersion¥Virtualization
• 値の名前 (型): MemoryReserve (DWORD値)
• 値のデータ: 管理用 OSに予約するメモリ サイズ (MB)
スマートページング• スマートページングは、動的メモリを使用時、物理メモリ不足で仮想マシンを起動できない状況を回避する機能• 主にVDI(Virtual Desktop Infrastructure)環境などでの使用をターゲットとした機能
•一時的な追加のメモリとしてディスク上のスマートページングファイルを使用
• スマートページングが使用される条件仮想マシンの再起動
使用できる物理メモリが不足
ホスト上で実行されている他の仮想マシンにも、再利用できるメモリがない
Part4 ディスク
仮想ハードディスク
IDE と SCSIIDE
•接続デバイス• ハードディスク
• DVD/CD
• 1 コントローラーあたり 2 デバイスサポート
• 2 コントローラーまで接続可能
•起動サポート
SCSI
•接続デバイス• ハードディスク
• 1 コントローラーあたり 64 台までサポート
• 4 コントローラー まで接続可能
• ホットアド対応仮想マシンが起動した状態でディスクを追加可能
AFT(Advanced Format Technology)• AFT は HDD の容量拡大を目的とした高密度化に伴い、セクタサイズを4Kバイトに変更し、512 バイトセクタを論理セクタとしてエミュレーションする技術
• Windows Server 2008 以降のOS で対応• Hyper-V の VHD は 512 バイトでの I/O
• VHD は 1 セクター 512 バイトまでの対応なので 4K ネイティブディスクでは使用不可
セクターあたりのバイト数
物理セクターあたりのバイト数
種類
4096 4096 ネイティブの 4 K
512 4096 512エミュレーション
512 512 ネイティブの 512
Read-Modify-Write
•書き込みされる512バイトの論理セクタが含まれる4Kbの物理セクター全体をキャッシュに読み込む
• 4Kbのキャッシュの中に含まれる、書き込み対象の512バイトを更新する
•更新した4Kbのキャッシュ全体をディスクの物理セクターに書き込む
出典:大容量ディスクとセクター サイズ拡大に対応する Windows 8
http://blogs.msdn.com/b/b8_ja/archive/2011/12/02/windows-8-enabling-
large.aspx
VHD と VHDXVHD
•以前のバージョンから使用されている仮想ディスクフォーマット形式
• 2 T バイトまで対応
• OS レベルではAFTに対応していても、VHD が対応していないのでパフォーマンスの劣化が起こる(KB2515143)• KB では約 30 % の劣化が起こると記載
VHDX
• Windows Server 2012 より採用された新しい仮想ディスクフォーマット形式
• 64 T バイトまで対応
• 4Kbytesセクタ(AFT)のサポート• 内部データ構造を4Kbytes境界に配置することにより、AFT形式のディスクでのパフォーマンス低下を抑止
Part5 ネットワーク
仮想ネットワーク
内部
VM VM
vSW
HOST
vNIC
プライベート
VM
vSW
VMVM VM
vSW
HOST
NIC
vNIC
SW
外部
Hyper-V ネットワーク構成時のポイント
NIC をホストとVM で共有可能物理マシン
Windows Server2012
NIC
SW
NIC
SW
Hyper-V シンプル構成
VM VM
vSW
HOST
NIC
SW
NIC
SW
VM VM
vSW
HOST
NIC
vNIC
SW
管理オペレーティングシステムにこのネットワークアダプタの共有を許可する
帯域幅管理•仮想マシンのNIC単位でネットワークの帯域幅を調整
•帯域幅設定の変更は実行中の仮想マシンに対しても可能
•最少帯域幅を設定した仮想マシンは、ホスト側でその帯域を確保できない場合、起動やライブマイグレーション、フェールオーバーなどに失敗する
• アウトバウンドでの制御
• Set-VMNetworkAdapterコマンドレッドでの制御
MACアドレスのスプーフィングセキュアモード(OFF)
1. 仮想ネットワークに設定されたMACアドレスのみが自分が送るパケットの唯一の送信元MACアドレスになる
2. 仮想マシンは宛先MACアドレスが登録されたMACアドレスのユニキャストのみを受信する。そのMACを宛先とするパケットは他のポートにフラッディングされることはない
3. 仮想スイッチは学習するのでルーティングテーブルを含む様々な内部構造をメンテナンスする。仮想マシンを起動し仮想ネットワークが起動したらルーティングテーブルに自分のMACアドレスを登録し、他のポートに移動しないようにする
4. トラフィックがスイッチによってフラッディングされる必要がある場合、セキュアモードになっているそのポートに対しては行われない
5. 仮想マシン内のMACアドレスは上書きはされない
セキュアレスモード(ON)
1. 仮想マシンはすべてのMACアドレスのトラフィックを送受信する
2. 仮想マシンはフラッディングされたユニキャストパケットを受信する
3. ポートに対して複数のMACアドレスを学習させることができる。またルーティングテーブルはスイッチポートを通過した時点で学習される
4. 仮想マシンはMACアドレスを上書きできる
ネットワークポートの高度な機能
機能 説明
DHCPガード不正なDHCPサーバーとして動作する仮想マシンからのDHCPパケットが、ネットワークに流れることを防ぐ
ルーターガード不正なルーターとして動作する仮想マシンからの、ルーターアドバタイズメッセージおよびリダイレクトメッセージをブロックする
ポートミラーリング仮想マシンが送受信するパケットをコピーし、監視用仮想マシンが接続するスイッチポートに転送する
保護されているネットワークホスト クラスター上で動作している仮想マシンでネットワークが切断された場合、その仮想マシンを別のクラスターノードに移動する
仮想ポートACL仮想マシンが通信できるコンピューターを制限したり、通信量を測定したりすることができる
MAC アドレス•仮想マシンに割り当てられる
MAC アドレスは次のアルゴリズムで生成される
• ホストIPの第 3、4 オクテットを16進数に変換し、先頭に「00-15-5D」を付与する
•例としては• ホストの IP アドレスが
192.168.10.200 の場合
• 00-15-5d-0a-c8-00から00-15-5d-0a-c8-ffの範囲
レガシーネットワークアダプター• PxE ブートをサポートするのは「レガシネットワークアダプター」のみ• ネットワークアダプターはサポートしない
• PxEブート起動するには• スタートアップ順序で「レガシネットワークアダプター」を上位にする
• IDE にハードディスクを接続
VMQ(仮想マシンキュー)
VMHost VM
VMBus
vNIC
VMBus
デフォルトキュー
vNIC
Q2
Virtual Switch
Q1
ルーティングVLANフィルタリングデータコピー
スイッチ/ルーティングユニット
SR-IOV(シングルルートI/O仮想化)
VMHost VM
SR-IOV
VF
driver
Virtual Switch SR-IOV
VF
SR-IOV NIC
Part6 その他
仮想マシンの世代第1世代 第2世代*1
ファームウェア BIOS UEFI *2
メモリ ○ ○
プロセッサ ○ ○
IDEコントローラー ○ ×
SCSIコントローラー ○ ○*3
レガシーネットワークアダプター ○ ×
ネットワークアダプター ○ ○*4
ファイバーチャネルアダプター ○ ○
COMポート ○ ×
フロッピーディスクドライブ ○ ×
*1 Windows Server 2012以降、またはWindows 8 x64以降のみをサポート*2 セキュアブートに対応*3 ハードドライブおよびDVDドライブ接続、起動ディスクコントローラー対応*4 ネットワークブートをサポート
セキュアブート• Secure Bootとは、UEFI(Unified Extensible Firmware
Interface)で規格化された技術で、OSの起動時にデジタル署名のあるソフトウェアのみ実行
BIOSAny OSLoaderCode
OSStart
従来のブートプロセス
UEFIVerifiedOS LoaderOnly
OSStart
セキュアブート
PC の OS 起動前の環境は、ブート ローダー ハンドオフを悪意を持つ可能性のあるローダーへとリダイレクトする攻撃に対して脆弱
ファームウェア内に存在するポリシーと証明書を使用して、適切に署名および認証されたコンポーネント以外は実行が許可されない
自動仮想マシンライセンス認証(AVMA)• 仮想マシンの自動ライセンス認証(AVMA:Automatic
Virtual Machine Activation)
• Hyper-V ホスト がライセンス認証されていれば、そのHyper-V
ホスト上で稼働する仮想マシンも自動的にライセンス認証される
• Datacenterエディション :Y4TGP-NPTV9-HTC2H-7MGQ3-DV4TW
• Standardエディション : DBGBW-NPF86-BJVTX-K3WKJ-MTB6V
• Essentialsエディション :K2XGM-NMBT3-2R6Q8-WF2FK-P36R2
②仮想マシンの作成
①Hyper-Vホストの準備
③仮想マシンの起動時
④仮想マシンの再起動時、または7日ごと
DataCenterエディションのキーでライ
センス認証
エディションごとの固定キーを使用
自動ライセンス認証 自動ライセンス認証
拡張セッションモード
• 接続するコンピューターと仮想マシン間での、ファイルのコピー
• 接続するコンピューターのデバイスを仮想マシンにリダイレクト• サウンドカード• プリンター• ディスク• USBデバイス
• ゲストOSがWindows Server 2012 R2またはWindows 8.1である場合のみサポート
Q&A
•ご清聴ありがとうございました