R2対応 〜 Hyper-V 2.0とVirtual Machine Manager 2008 R2 によるサーバー仮想化

  • Webサーバを追加したい->機器の発注から行っている(=柔軟性が低い)
    • 柔軟にインフラを構築できる(ダイナミックIT)
  • 可用性上げる->クラスタ化(=高価)
    • 仮想マシン単位でのフェイルオーバークラスタリングに対応
  • TCOの削減
    • HWの削減
      • 設置場所、消費電力、空調設備の省略
  • HWは10~15%しか利用されていない(=85~90%は昼寝)
    • 1台のサーバで複数のサーバをのせることで改善
  • MSの仮想化ソリューション=Microsoft Virtualization 360
    • プレゼンテーションの仮想化=Remote Desktop Service(従来のターミナルサービス)
      • いつでもどこでも業務アプリにアクセスできるようにする
    • アプリケーションの仮想化=Microsoft Application Virtualization(App-V)(SoftGrid)
    • デスクトップの仮想化=VirtualPC
    • サーバの仮想化=Virtual Server R2,Hyper-V
  • Hyper-V
    • OSの一部である。
    • ハイパーバイザの採用
      • パフォーマンスと信頼性がアップ
    • 最新HWに対応
      • 64bitCPU、マルチプロセッサ、大規模メモリ
    • GUIとスクリプトによる容易な管理
      • Hyper-VマネージャとWMI
  • ハイパーバイザ(上位の管理者)
    • HW->Winodwsハイパーバイザー->仮想マシン(パーティション)
    • Hyper-Vでは仮想マシンを「パーティション」と呼ぶ
    • WindowsハイパーバイザはCPUとメモリのみ管理
    • 入出力デバイス管理は親パーティションが管理
    • 親パーティション=VSPドライバ(物理ドライバ)
    • 子パーティション=VSCドライバ(仮想ドライバ)
    • 子パーティションがドライバを使うとき
      • VSCドライバ->VMBus->VSPドライバ
  • Virtual Serverとの比較
    • Virtual Server=ホストOS型
      • ドライバ処理が二回
    • ハイパーバイザの方がシンプル=安定性が高い
  • ハイパーバイザ型との比較
    • モノリシック(一枚岩)型
      • VMware
      • i/oドライバの処理はハイパーバイザで行う
    • マイクロカーネル型
      • Hyper-V,Xen
      • i/oドライバの処理は管理OS(親パーティション)
      • ドライバ依存が低いメリットがある
        • Hyper-V用ドライバはない(=2008用ドライバでOK)
  • Hyper-Vの導入
    • BIOSの変更
      • VTを有効にする
        • 有効にした後一旦電源を落とす
    • 2008R2のインストール
      • 普通にインストールすればよい
        • どのEditionでもHyper-Vは利用可能
        • 32bit版では利用できない
        • R2は全て64bit版
        • フルインストールでもServer CoreでもHyper-Vは利用できる
          • フルインストールにするとGUIでローカル管理できる
          • Server Coreだとリモート管理のみになる
        • ドメイン参加に関係なくHyoper-Vは利用可能
    • Hyper-Vのインストール
      • 先にインストールした2008R2が親パーティションになる
      • フルインストール->役割「Hyper-V」を追加する,ServerManagerCmd -install Hyper-V
        • コマンドプロンプトからのインストールでは仮想ネットワークは作成されない
      • ServerCore->Start /w ocsetup “Microsoft Hyper-V”
      • ブートローダーが書き換わり、再起動後はHyper-V経由で起動する
      • 再起動時のログオンはインストールユーザと同じユーザでログオンすること
        • 後処理が走らないため
      • Hyper-Vマネージャ
        • LocalAdminsグループが利用できる
        • Windows7用はKB958830からダウンロード
        • Vista用はKB952627からダウンロード
        • XP用は無い
      • OSイメージはインストール時に全てHDDにコピーされているのでDVDを入れる必要はない
  • Hyper-VのCPU要件
    • 64bit
    • 仮想化支援(VT,AMD-V)
    • DEP(ハードウェアデータ実行防止)
      • 現在販売中のBIOSは通常ONになっている
  • Hyper-Vの設定
    • 親パーティションには余計なアプリは入れるべきではない
    • サーバ
      • 1つのマシンで2つのファイル
        • 仮想HDDの保存パス=仮想HDD
          • 仮想マシンは親パーティションのHDDに作成される
        • 仮想マシンの保存パス=構成情報ファイル
  • Hyper-Vの管理
    • 仮想マシンの作成
      • 「仮想マシンの新規作成ウィザード」
        • 名前(通常はコンピュータ名をそのままつける)
        • 場所(仮想マシンの構成情報ファイルの保存場所)
        • メモリサイズ
        • ネットワーク(接続しない)
        • 仮想HDDの接続(仮想HDDファイルの指定)
          • 新規、既存を選択可能
            • 新規であればHDDサイズを指定する
            • 最大サイズは2TB
          • 新規の場合はOSインストールまでウィザードで指定できる
            • CD/DVD(ISO含む)、FD、ネットワークベース(展開サービス)
        • 作成後は「オフ」
    • 仮想マシンへのOSの導入手順
      • インストールメディアの準備
      • 仮想マシンの起動
      • 仮想マシンの接続
    • 仮想マシンの操作(重要なもの)
      • 停止=電源オフ(無理矢理電源を落とすのと同義)
      • 一時停止=CPUは割り当てられていない、メモリは使っている
      • 保存=仮想マシンはオフの状態だが、メモリ状態はファイルに吐き出されている=ハイバネートと同じ。CPU、メモリは割り当てられていない。
      • シャットダウン=OSのシャットダウン処理を実行する
    • 仮想マシンの接続
      • Hyper-Vマネージャ
      • vmconnect.exe(スタートメニューにないのでProgram Filesから持ってくる)
      • マウスカーソルの解放=Ctrl+Alt+←
      • Ctrl+Alt+Del=Ctrl+Alt+End
    • 統合サービスのインストール
      • 仮想マシン(子パーティション)にインストールするアドオン
      • パフォーマンスの向上
        • VSCドライバの追加
          • VMBusに変わる
      • サービスの提供
        • シャットダウン
        • 時刻同期
        • データ交換
        • ハートビート
        • バックアップ
        • マウスカーソルの透過
      • Windows7と2008R2はOSに組み込まれているため追加が不要
      • Linux向け統合サービスもある
        • Microsoft Connect(http://connect.microsoft.com/)
        • SUSEとRHEL
        • パフォーマンス向上が主
        • netvsc,strvscデーモンなどが起動する
    • スナップショット
      • Hyper-Vの目玉機能
      • アプリケーションの互換性テストに役立つ
      • どんなOSでもスナップショットは取れる
  • 仮想マシンを構成するファイル
    • 構成情報(.xml)
      • メモリサイズ、NIC、仮想HDD
      • ファイル名は仮想マシンのID
    • 仮想ディスク(.vhd)
      • 仮想HDDそのもの
    • 仮想マシンを起動すると作られる=シャットダウンすると消される
      • メモリ情報(.bin)=「保存」するときに利用されるが、HDDの確保のため仮想マシン起動時に作成される
      • 状態情報(.vsv)=「保存」するときに利用される。レジスタ情報が保存される。
    • スナップショット
      • 構成情報、メモリ情報、状態情報をコピーしている
      • 仮想HDDは差分ディスク(.avhd)を保存する
        • スナップショットはバックアップではない
    • 仮想マシンの設定
      • 仮想マシンの作成ウィザードで設定できない内容を設定できる
      • 仮想マシンの起動中は設定できない(=グレーアウトする)
      • 管理カテゴリ
        • 統合サービスで利用するサービスを指定できる
        • スナップショットの保存場所
        • 自動開始アクション
          • 物理コンピュータ(親パーティション)が起動した時の仮想マシンの動作を選ぶ
          • デフォルトは「保存していた場合は再開する」
          • 起動待ち時間
            • 親パーティションが起動した後何秒待ってから再開する
            • システムの起動順の制御に利用する
        • 自動停止アクション
          • 物理コンピュータ(親パーティション)のシャットダウン時の仮想マシンの動作を選ぶ
          • 物理サーバにUPSを接続するとき停電時に親パーティションをシャットダウンさせるだけで良い
          • デフォルト=保存
      • 仮想プロセッサ
        • 論理プロセッサ=CPUコアの数
          • OSによって変わる
            • !3-23のリスト
        • リソースコントロール
          • デフォルトでは自由度が高い(=必要なら使い、不要なら使わない)
          • 仮想マシンの予約
            • CPUの使用率を確保する
          • 仮想マシンの限度
            • 使用率を制限する
          • 相対的な重み
            • CPU飽和(使用率100%)時の仮想マシン間の使用率の割合を調整する
        • プロセッサの互換性
          • WindowsNTなどの古いOSを実行する
            • CPUが新しすぎる場合に備える
            • パフォーマンスは多少劣化するが、互換性が高まる
    • 仮想ネットワーク
      • 仮想ネットワーク(SW,HUB)
        • 外部
          • 外のコンピュータと通信するためのネットワーク
          • 親パーティションの通信できる
          • Hyper-Vの役割追加時に作成すると外部になる
          • 物理NICはIPがつかなくなる=IPをつける時は仮想NICに設定を行う
        • 内部
          • 外のコンピュータとは通信できないネットワーク
          • 親パーティションと通信できる
        • プライベート
          • 仮想マシン間のみ通信できるネットワーク
          • 親パーティションと通信できない
          • 追加しても親パーティションのNICは追加されない
        • Hyper-Vの「仮想ネットワークマネージャ」で管理する
      • 仮想ネットワークアダプタ(NIC)
        • 2種類(パフォーマンスの違い)
          • ネットワークアダプタ=パフォーマンス高い
            • VSCドライバ=統合サービスのインストールが必要
            • 最大8枚
            • デフォルトでインストールされる=統合サービスインストール時まで利用できない
          • レガシネットワークアダプタ=パフォーマンス低い
            • HWエミュレーションドライバ
            • 統合サービスが入ってなくても利用できる(=Linuxなど)
            • 最大4枚
      • 仮想HDD
        • 容量可変
          • HDDの効率が良い/オーバーヘッドが高い
        • 容量固定
          • HDD非効率/高いパフォーマンス
        • 差分
          • HDD消費効率最高/最も低いパフォーマンス
        • パススルー
          • 物理ディスク(LUN)をマウント
          • 2TB以上のサイズ
            • スナップショットは利用できない
        • パフォーマンス
          • 物理HDD 読み取り 100% 書き込み100%
          • 容量可変 94% 85%
          • 容量固定 100% 100%
          • パススルー 100% 100%
        • 物理HDDから仮想HDDにコピー作成することが可能
        • 作成後、仮想マシンに仮想HDDを割り当てる
      • 仮想ストレージコントローラ
        • IDEコントローラ
          • 2基*2台のHDDが接続可能
          • HDD,DVDどちらも可
          • ブート可能=OSが入っているのはIDE
        • SCSIコントローラ
          • 4基*64台
          • HDDのみ
          • ホットプラグ可
            • R2からの機能
          • ブート不可
          • 統合サービスが必要
          • 仮想マシンのOSがWinXP32bitであれば利用不可(統合サービスが入っていても)
        • IDE,SCSIどちらに.vhdをつないでもパフォーマンスに違いは無い
      • 仮想HDDのメンテナンス
        • 最適化
          • 容量可変HDDに対して行う->実データサイズまで縮小する
        • 変換
          • 容量可変<->容量固定
          • テスト環境->容量可変
          • 本番環境->容量固定
        • 拡張
          • 容量可変、固定のどちらでも利用できる
          • 縮小はできない
        • 結合
          • 差分HDD用
        • 再接続
          • 差分HDD用
          • 迷子になった差分HDDを親のHDDに接続する
      • Virtual Server仮想マシンの移行
        • .vhdファイルはVirtual ServerとHyper-Vと同じ->.vhdファイルのコピーでOK
          • ただし、バーチャルマシン追加機能はアンインストールしておく
          • .vhdファイルをコピー
          • .vscファイル(設定情報)の移行はできない->設定情報はメモ書きしておく
          • 仮想マシンを作成する際に、仮想HDDにはコピーした.vhdを指定する
          • HALのアップグレードを行う
            • 2000,XP,2003は統合サービスをインストールすればHALは自動更新される
            • Vistaと2008はmsconfig.exeでHALの検出を行い再起動する
            • Windows7,2008R2は不要(ブート時に毎回更新)
        • VirtualPCでも全く同じ
      • 仮想マシンの削除
        • 安全のため、仮想マシンを削除しても.vhdファイルは残る=エクスプローラで削除する
        • スナップショットを持っている時は.vhdファイルは読み取り専用になる
          • スナップショットをかなり前に一度でも取っていると.vhdはかなり古い状態になっている
          • ->「現在」のスナップショットを.vhdにマージしてくれる
      • 仮想マシンのライセンス
        • EnterpriseEdition
          • 物理(親パーティション)*1、仮想(子パーティション)*4
        • http://www.microsoft.com/japan/virtualization/licensing/HyperV.msp
  • Hyper-Vの活用
    • Hyper-Vのアクセス管理
      • XMLテキストファイル(InitialStore.xml)で管理
        • 承認マネージャ(azman.msc)で管理
          • 役割の定義を行い、役割にユーザを割り当てる
    • インポートとエクスポート
      • エクスポート=「仮想マシンを適当なフォルダにコピーする」
        • 移動
        • 複製
        • バックアップ
      • 回復
        • 同じIDで同じHWに戻す
      • 移動
        • 同じIDで違うHWに移す
      • コピー
        • 違うIDで任意のHWに移す
      • パススルーディスクでは利用できない
      • 仮想マシンはオフライン(保存orシャットダウン)しておく必要がある
        • 保存状態でエクスポートし、違うHWでインポートするとレジスタ情報の不一致からエラーが発生する可能性がある(CPU違いで発生。AMDとINTEL、プロセッサバージョン)
          • シャットダウンした状態でエクスポートすればOK
          • CPU設定の互換性部分でプロセッサバージョンの異なるコンピュータに移行する、で回避可能
      • インポート時に「移動、回復、コピー」を選択可能
        • 同じIDのマシンがある場合は移動/回復は失敗する
        • インポート時に「ファイルをコピーしてからインポートする」のチェックを入れないと、エクスポートしたファイルの保存場所がそのまま、仮想HDDの置き場となる
    • 仮想デスクトップインフラストラクチャ(VDI)
      • Hyper-Vの仮想マシンをエンドユーザのデスクトップ環境として提供
      • (ユーザから見て)ターミナルサーバ(2008の役割)
        • RD接続ブローカー->ターミナルサービスの接続要求
        • RDセッションホスト->仮想デスクトップの引き当て
        • RDWebアクセス
      • RD仮想化ホスト/Hyper-Vが仮想デスクトッププールを用意
    • Hyper-Vのクラスタリング
      • 仮想マシン間のクラスタリング=ゲストクラスタリング
        • 物理サーバのクラスタリングと同じ
      • Hyper-Vサーバ同士のクラスタリング=ホストクラスタリング
      • ホストクラスタリングの構築
        • Hyper-Vサーバの障害時に別のHyper-Vサーバに仮想マシンの稼働を引き継ぐ
          • VMwareHA
        • 必要なもの
          • 共有ストレージ
            • iSCSI、FC
          • Hyper-Vサーバにフェールオーバークラスタリングをインストール
            • 16ノードまでフェールオーバクラスタリングに参加可能
          • 仮想マシンは共有ストレージに保存
      • クイックマイグレーション
        • 障害対応ではない=2台のHyper-Vサーバは稼働している状態で行う
          • 元:構成情報の転送
          • 先:仮想マシンの作成
          • 元:LUNのオーバーシップの変更
          • 先:仮想マシンの切り替え
          • 先:仮想マシンの再開
          • 元:仮想マシンの削除
        • 仮想マシンは一旦「保存」される
          • ユーザは一旦削除される
      • ライブマイグレーション
        • 仮想マシンをオンライン状態で移行
          • 元:構成情報の移行
          • 先:仮想マシンの作成
          • 元:メモリ情報の転送
          • 元:仮想マシンの一時停止
          • 先:LUNのオーバーシップの変更
          • 先:仮想マシンの再開
        • クラスタ共有ボリューム(CSV=Cluster Shared Volume)が必須
          • 仮想マシンを共有ディスクに保存する際にLUNに保存するための情報
            • LUN単位にしかオーバーシップを持てない
            • 仮想マシンごとにフェイルーバーする場合はLUNを複数作らないといけない
            • ドライブレターの数には限りがある
          • 複数の仮想マシンを1つのLUN保存することができる
          • 全てのノードに単一の名前空間を提供
          • CSVの中に仮想マシンを保管しないとライブマイグレーションできない
          • オーバーシップの切り替えには負荷がかかるが、ファイルの編集ですむ=素早い
          • フェイルオーバクラスタマネージャで設定する
    • Hyper-Vのアップグレード
      • インプレースアップグレード
        • 統合サービスは上書きインストールでアップグレードする必要がある
      • 仮想マシンのインポート/エクスポート
        • Hyper-V1.0でエクスポート、2.0にインポートでアップグレード
          • 統合サービスは別途アップグレードが必要
      • バックアップツール
        • ツールが1.0と2.0に対応している必要がある
  • SCVMMの導入
    • シンプルな運用
      • 自動化と標準化
    • 複数の仮想サーバの効率的な管理
      • ライブマイグレーションの透過的な利用など
    • 利用者に応じた仮想マシンの活用
      • 一般ユーザ向けのサービス
    • 導入してもHyper-Vの機能が拡張されるわけではない
      • 管理が簡単/効率的/素早くなる
      • 仮想サーバが5台以上ある場合はVMMを利用するほうが楽(無いと大変)
    • システム構成
      • VMMサーバ
        • コマンドを実行する
      • SQLServer
        • 管理情報のDB
      • VMMライブラリサーバ
        • ISOファイルなどを共有する
      • VMMセルフサービスポータル
        • オプション
      • VMM管理コンソール
        • XPでも稼働する
      • 管理対象の仮想化サーバ
        • Hyper-V:エージェントが常駐
        • VirutalServer:エージェントが常駐
        • VMware:VMMとVmwareの間にVirtualCenterが必要
          • VMMはVirtualCenterに命令を送る
  • SCVMMの導入手順
    • VMMサーバのインストール
      • AD環境が必須
      • 64bitの2008が必須
      • 必要なソフトウェアは全て2008に準備されている
      • 仮想マシンにもインストール可能
      • VMM用途であればSQLerverはExpressEditionで十分
    • VMM管理コンソールのインストール
      • 一般のアプリケーションと同様にインストールすればOK
      • インストールユーザが管理者アクセス許可を割り当てられる
        • Administrarotsは自動で追加されるので、Admins+インストールユーザ、となる
    • ホストの追加
      • AD配下のホスト管理可能
      • ワークグループのホストも管理可能
      • 境界ネットワークのサーバ(FW越し)の管理も可能
      • VMwareはVirtualCenter経由で管理
    • ジョブ
      • 各作業がステップ単位で表示される
    • ホストのプロパティ
      • 仮想マシンの保存場所を変更したりできる
  • SCVMMによる仮想マシンの管理
    • 仮想マシンの作成
      • プロビジョングと呼ぶ=準備
        • 船乗りが出航前に水や網などを用意することを言う
      • 仮想マシンを作成するためのソース(3つ)
        • 既存の仮想マシン
        • 仮想ハードディスク
        • テンプレート=Sysprepが実行された仮想マシン
      • ハードウェア構成の選択
        • プロファイル
          • ハイスペック、標準、低スペックなどのプロファイルを用意しておく
      • 最適なHyper-Vサーバへの配置(展開)
        • 複数のHyper-Vサーバがある場合最適なパフォーマンスに割り振る
          • Intelligent Placement(インテリジェントな配置)
            • 星マークの多い方がおすすめ
        • VMMライブラリに仮想マシンを保存することができる
    • 仮想マシンのプロパティ
      • チェックポイント
        • スナップショットのこと
    • テンプレート
      • Sysprepが適用された仮想HDD
        • 仮想マシンに自動Sysprep/仮想HDDに手動Sysprepしたもの
      • ハードウェアの構成
        • CPUの数など
        • ハードウェアプロファイルを読み込ませることも可能
      • ゲストOS
        • Sysprepの応答ファイル
        • ライセンスキー、コンピュータ名などを仕込んでおく
        • ゲストOSプロファイルを読み込ませる
      • 仮想マシンからテンプレートを作成するとその仮想マシンは壊れる(Sysprep)
      • ライブラリに保存される
    • プロファイル
      • ハードウェアプロファイル
        • ハイスペック、ロースペックなど
      • ゲストOSプロファイル
        • XP用、2003用といったもの
          • Minisetupウィザードを自動実行させるもの
    • ライブラリ
      • デフォルトではVMMサーバがライブラリサーバ
      • ライブラリ共有
        • 全てのHyper-Vサーバからアクセスできる
      • 地区ごとに配置するのがベスト
        • 遠隔地にあると遅い(=配置するファイルはISO等なのでファイルサイズが大きい)
  • SCVMMによるホストの管理
    • 仮想マシンの移行と複製
      • Hyper-V:Hyper-V
      • VirtualServer:Hyper-V (only offline)
      • VMware:Hyper-v (V2V)
    • 物理サーバの変換(P2V)
      • 対象にエージェントをインストールし、作成される仮想マシンにボリュームをコピーする
      • VSSに対応していない場合はオフライン変換のみ
        • 2000の時。WindowsPEで起動するように設定変更され、ボリュームコピーされる
      • Linux、NTはP2Vできない(エージェントが未対応)
    • V2V変換
      • VMware仮想マシンをHyper-V仮想マシンに変換
        • .vmx->.xml
        • .vmdk->.vhd
        • ファイル形式の変換のみ
          • VMwareのアドオンの削除等は行わない
    • 管理の委任
      • GUIからアクセス権の管理が可能
        • ユーザロール
          • 管理者
          • 代理管理者
            • 管理できるHyper-Vサーバが限定される
            • スコープでオブジェクトへのアクセスを限定できる
          • セルフサービスユーザ
            • Webベースの管理ツールが利用できるユーザ
    • VMMセルフサービスポータル
      • ブラウザでアクセスする管理ツール
    • VMwareとの連携
      • 統一された管理
        • 複数のVirtualCenterインスタンスの管理
      • 完全な操作
        • VMotionも操作/設定できる
      • 機能の拡張
        • PowerShellによる自動化
  • SystemCenterによる仮想化環境の管理
    • ハードウェアのプロビジョンング
      • ConfigurationMangaer
    • ワークロードのプロビジョニング
      • VMM
    • システムの管理
      • ConfigurationManager
        • VMMライブラリに入っている仮想マシンのパッチ管理
          • Offline Virtual Machine Servicing Toolsで適用可能
    • システムの監視
      • OpManager
        • SCVMMとOpsMgrの連携
          • PRO(Performance and Resource Optimization)
          • Opsで収集した監視データに基づき、VMMで動的管理を行う
    • バックアップ
      • DataProtectionMangaer
        • VSSによる仮想マシン単位のバックアップと回復
        • 親パーティションに入れるだけでOK
        • 子には統合サービスのみ
        • オンラインでのバックアップが可能
    • ライセンスが高価なため仮想化環境に適応したディスカウントパッケージが用意されている
  • MCP,70-652の受験範囲