5nine Manager for Hyper-VでのHyper-V仮想マシンクローンの作成手順

5NINE SOFTWARE社の5nine Manager for Hyper-V(以下5nine Manager)はHyper-Vサーバ、クライアントHyper-VのGUI管理ツールです。
2015年10月にリリースされた5nine Manager ver 8.0では仮想マシンのパフォーマンスモニタリングデータをSQL Serverに格納できるようになりました。
SQL Serverに格納された個々の素データはMicrosoft SQL Server Management Studioで簡単に閲覧することができます。
Windows 10 ProにはHyper-Vマネジャが付属していますがWindows 10 HomeにはHyper-Vマネジャは付属していません。
そこでHyper-V Server 2012 R2環境の仮想マシンにインストールしたWindows 10 Home(64ビット版)にSQL Server 2014 Express SP1と5nine Manager ver 8.0を導入して5nine Managerの簡単な動作確認をしてみました。
5nine ManagerはHyper-Vマネジャと同じような使い方ができますが仮想マシンクローンを最大100個まで一気に作成する機能やSysprep/Template化機能等の便利機能も備えています。
仮想マシンのクローン作成機能は内部的には「一時的なエクスポート」と「コピータイプのインポート」の組み合わせで実現されています。

ここでは5nine Managerの30日間トライアル版を使ってのHyper-V仮想マシンクローンの作成手順を中心に説明致しますが5nine Managerの特徴についても若干紹介致します。

今回使用したPCのハードウェア/ソフトウェア構成は以下の通りです。



■ 5nine Manager画面
下記は5nine Manager画面(中央画面)とモニタリングデータ格納用SQL ServerのManagement Studio画面(手前の画面)です。



・実寸画像はこちらです。


■ 5nine Managerの入手方法
5nine Managerは大きく分けて以下の3種類がありすべてhttp://www.5nine.com/5nine-manager-for-hyper-v-free.aspxから入手できます。

■ 5nine Managerの特徴
5nine Managerを導入してすぐに気付く特徴としては以下のようなものがあります。


■ 5nine Managerの導入の流れ
  1. 5nine Managerを導入する仮想マシンの準備
    今回はWindows 10 Home (64ビット版)をゲストOSとする仮想マシン(HVSW10Home)を用意しました。

  2. Microsoft .NET Framework 3.5 Service Pack 1 (日本語版)の導入
    これはSQL Server 2014 Express with Tools Service Pack 1のインストールに必要とされます。
  3. SQL Server 2014 Express with Tools Service Pack 1 (日本語版)の導入
    データベースエンジンと管理ツールを含むSQLEXPRWT_x64_JPN.exeをダウンロードしてインストールします。
    (1)機能の選択はデフォルトのままでOKです。
    (2)認証モードはSQL Serverのシステム管理者(sa)を使用できる混合モード(SQL Server認証とWindows認証の併用)でOKです。
  4. 5nine Manager Trial Editionのインストール
    (1)インストール先はデフォルトのままでOKです。

    (2)モニタリングデータの格納先はSQLiteではなくSQL Serverを選択します(SQLiteを選択した場合は自動でSQLiteもインストールされますがデータの保存日数などに制約が付きます)。
    更にSQL Server認証用にシステム管理者(sa)のパスワードも指定します。

  5. SQL Server 2014 Expressの動作確認
    SQL Server 2014 Expressにサンプルデータベース(pubsデータベースやNorthwndデータベース)を導入して簡単なSQLテストを実施してみます。
  6. 5nine Manager Trial Editionへのライセンスキーの組み込み
    ライセンスキーを組み込むまではFree Version扱いとなっています(Free Versionのスプラッシュ画面)。
    5nine Managerの[Help]-[About 5nine Manager]-[Install license]で表示される画面にライセンスキーを貼り付けるとその瞬間にTrial Editionになります(Trial Editionに変わったスプラッシュ画面)。



    登録したライセンスに対して[Remove license](ライセンス登録後に表示されるオプション)を実行すればFree Versionに戻ります。


■ クローン作成元仮想マシン(59MasterVM1)の作成(※59は5nineの意味)
仮想マシンクローンを作成するに当たってはクローン作成元仮想マシンの作成手順について特別な制約はありませんので既存の仮想マシンからいきなりクローンを作成しても構いません。
しかしここでは仮想マシンクローンを作成することを前提にクローン作成元仮想マシンの定義・作成についても触れておきます。
  1. 事前のフォルダ作成
    クローン作成元仮想マシンと仮想マシンクローンを集中管理しやすいようにするために事前に以下のフォルダを作成しておくものとします(ドライブはCドライブ以外でもOK)。
    ・C:\hvclone
    ・C:\hvclone\59MasterVM1(元になる仮想マシン名)
    ・C:\hvclone\59MasterVM1(元になる仮想マシン名)\01master
    ・C:\hvclone\59MasterVM1(元になる仮想マシン名)\02clone

  2. クローン作成元になる仮想マシンの定義
    Hyper-Vホストの[Create New VM]メニューを選択して「Create Virtual Machine」ウィザードを起動します。

    クローン作成元になる仮想マシンの「Create Virtual Machine」ウィザードでの指定は以下の通りとします。
    (1)Name(仮想マシンの名前):59MasterVM1
    (2)Generation(世代):Generation 1(Generaton 2でも構いません)
    (3)Number of virtual processors:1
    (4)Startup RAM(起動メモリ):1024MB
    [Enable Dynamic Memory]はonからoffに変更。
    (5)Connection(接続する仮想スイッチ):仮想スイッチ1
    (6)Create a virtual hard disk(新規作成する仮想ハードディスク)
    ・Disk type(種類):Dynamically Expanding(容量可変)
    ・Disk Path(仮想ハードディスクのパス):C:\hvclone\59MasterVM1\01master\59MasterVM1.vhdx
    ・Disk Size(サイズ):127GB(デフォルトサイズ)
    (7)Install an operating system later(後でオペレーティングシステムをインストールする):on
    (8)Summary(要約)



    <Finish>ボタンをクリックすると仮想マシンが作成されます。

  3. 59MasterVM1の「Settings(設定)」確認
    59MasterVM1の「Settings(設定)」画面を開いて下記を確認します。
    (1)Network Adapter(ネットワークアダプタ)の「General」タブでMACアドレス設定を確認します。
    [Dynamic]:on
    MACアドレス:00-00-00-00-00-00



  4. カスタマイズ(今回はスキップ)
    通常ならこの時点でゲストOSの特性・用途等に応じて仮想マシン構成についての各種のカスタマイズ設定を実施するかと思いますが今回はカスタマイズはしないという前提で説明を進めます。

  5. 構成ファイルの確認
    仮想マシンを定義すると仮想マシン識別子(VMId)が割り振られます。
    構成ファイルの格納場所はデフォルトではC:\ProgramData\Microsoft\Windows\Hyper-V\Virtual Machinesで、構成ファイル名はVMId.xml(例:7ECEBBD0-D73E-438D-8A83-7883EB2B186A.xml)となります。
    構成ファイルをメモ帳で確認すると仮想マシンの新規作成ウィザードで指定した以外の構成情報が多々含まれていることが確認できます。
    尚、構成ファイル内ではVMIdは下記のようにglobal_idというタグで扱われています。
    <global_id type="string">7ECEBBD0-D73E-438D-8A83-7883EB2B186A</global_id>

  6. 59MasterVM1の初回ダミー起動によるMACアドレス割り当て確認
    ゲストOSをインストールせずに59MasterVM1を最初にダミー起動(初回ダミー起動)すると当然起動エラーとなりますが、この初回起動でMACアドレス(正確にはMACアドレス候補)が割り振られます。
    Network Adapter(ネットワークアダプタ)の「General」タブでMACアドレス設定を確認できます。
    [Dynamic]:on
    例:MACアドレス(候補):00-15-5D-00-7B-7A



    ゲストOSのLinux Live版のDVDイメージで仮想マシンを起動してMACアドレスを実際に確認してみました(00:15:5D:00:7B:7A表示になっています)。



    MACアドレス確認後は仮想マシンをシャットダウンして停止させます。

  7. ゲストOSのインストール
    通常はここで59MasterVM1にゲストOSをインストールしますが、クローン生成のテストではゲストOSのインストールをスキップさせても構いません。
    ゲストOSとしてWindows PowerShellを使用できるWindows 8.1等のWindowsをインストールした場合はデバイス情報を下記のコマンドレットで取得して保存して後で見直してみるのもいいかと思います。
    デバイスマネジャでの確認が困難なデバイス情報も下記のコマンドレットでは確認しやすい形式で表示されます。
    Get-WmiObject Win32_PNPEntity


■ 59MasterVM1のクローン作成実行

  1. 59MasterVM1の[Clone]メニュー実行
    (1)5nine Managerで59MasterVM1に対する右クリックで[Clone]メニューを起動します。



    (2)「Clone Virtual Machine」ウィザードが開始されます(最初のデフォルト画面)。
    設定を以下のように変更します。
    ・the path for temporary exported virtual machine data(一時的にエクスポートされる仮想マシンデータの保存先パス):
    C:\hvclone\59MasterVM1\01master\export\
    ※クローン作成完了後は本フォルダは空になります。

    ・the name for new VMs which will also be applied to the names to the names of VHDs attatched to the VMs(新しい仮想マシンに付与する仮想マシン名:仮想ディスク名にも適用とありますが仮想ディスク名は全て同じ59MasterVM1.vhdxとなります):
    59MasterVM1Clone ※この指定で59MasterVM1Clone - 1, 59MasterVM1Clone - 2, ...という仮想マシンが自動生成されます

    ・how many clones you want to create(生成するクローン数):
    2

    ・the destination folder for the clones' config(クローンの構成ファイルの格納フォルダ):
    C:\hvclone\59MasterVM1\02clone\01Conf\
    ※クローン作成完了後は以下のフォルダ構成になります。
    ・C:\hvclone\59MasterVM1\02clone\01Conf\59MasterVM1 - 1\Virtual Machines\(59MasterVM1 - 1のVMIdと同名のフォルダとVMId.xmlが格納されています)
    ・C:\hvclone\59MasterVM1\02clone\01Conf\59MasterVM1 - 2\Virtual Machines\(59MasterVM1 - 2のVMIdと同名のフォルダとVMId.xmlが格納されています)

    ・the destination folder for the clone' storage(クローンのディスク等のデータファイルの格納フォルダ):
    C:\hvclone\59MasterVM1\02clone\04Disks\
    ※クローン作成完了後は以下のフォルダ構成になります。
    ・C:\hvclone\59MasterVM1\02clone\04Disks\59MasterVM1 - 1\59MasterVM1.vhdx
    ・C:\hvclone\59MasterVM1\02clone\04Disks\59MasterVM1 - 2\59MasterVM1.vhdx

    ・[Store clone(s) VHD(x) in same directory as original VM]:off(デフォルトのまま)



    <Next>ボタンをクリックすると「Details」画面が表示されます。

    (3)「Details」画面



    (4)クローン生成中の画面



  2. 生成されたクローン仮想マシンの確認
    ・MACアドレス(候補):全てのクローンについて動的割り当てのMACアドレス(候補)はコピー元と同じ「00-15-5D-00-7B-7A」となります。



    しかしクローンを同時に実行させると別々のMACアドレスが動的に割り当てられます。

    ・全てのクローンの仮想ハードディスクのDiskIdentifierはクローン作成元仮想マシンの仮想ハードディスクのDiskIdentifierと同じ値となります。

  3. PowerShellでのクローン実行確認
    今回生成した2個のクローンを同時実行させてPowerShellでMACアドレスや仮想ハードディスクのDiskIdentifierを実際に確認してみました。
    59MasterVM1Clone - 1のMACアドレスは00:15:5D:00:7B:7Aで後から起動した59MasterVM1Clone - 2のMACアドレスは00:15:5D:00:7B:7Bとなりました。




■ ExportとImportの明示的操作によるクローン作成例

  1. Exportの明示的操作
  2. Importの明示的操作

■ 仮想マシンへの接続方法
5nine Managerにおける仮想マシンへの標準的な接続方法は仮想マシンのメニューにある「Connect via Console」と「Connect via RDP」です。


(1)「Connect via Console」接続では5nine Managerの5nine.VmConsole.exeという実行プログラムで接続処理が実行されます。


(2)「Connect via RDP」接続ではWindowsアクセサリにあるリモートデスクトップ接続用mstsc.exeという実行プログラムで接続処理が実行されます。


(3)更に5nine Manager導入有無に関わらずインストール不要なFreeRDPでも接続できます(下記画面参照)。



■ ライブマイグレーション例
ライブマイグレーションは5nine Managerでも行うことができます。
ここではローカル記憶域だけを使用している仮想マシンの簡単なマイグレーション例を紹介します。

5nine Managerでのライブマイグレーションではライブマイグレーション完了時、ゲストOSへの接続画面が消滅するというのが難点です。
(Hyper-Vマネジャの場合はライブマイグレーション完了時、ゲストOSへの接続画面は消滅せずにその接続画面のタイトル中のHyper-Vホスト名が移動先Hyper-Vホスト名に自動変更されます)