こんにちは、わたあめです。今日はHyper-Vのインポート処理の話になります。Hyper-Vで仮想マシンをインポートする際、以下の3つのどれかを選択しますよね。
- 仮想マシンをインプレースで登録する
- 仮想マシンを復元する
- 仮想マシンをコピーする
()の中には、一意なIDを付与するかどうかの説明なども記載されていますね。
今回は、仮想マシンのインポート時、UUIDや仮想マシンの一意IDはどうなるのか?インポートする際、気になったので調査してみました。それでは、いってみましょう!
仮想マシンのUUIDとは?一意のIDとは?
そもそも、UUIDって何?一意のIDって何?ということから整理していきたいと思います。(不要な方はこの章は飛ばしてくださいね。)
UUIDとは
UUIDとは通常マザーボードに割り振られるユニークなIDの事です。詳しくは、以下の記事にまとめています。
このUUIDですが、Hyper-Vの仮想マシンでも存在します。
UUIDの確認方法
UUIDを確認する方法ですが、以下の手順で確認できます。
- 仮想マシンのコマンドプロンプトを起動
- 以下コマンドを実行
この実行結果で得られる「UUID=」の所がUUIDとなります。
仮想マシンの一意のIDとは
仮想マシンの一意のIDというのは、Hyper-Vが仮想マシンに割り当てたIDのことです。Hyper-Vの中で仮想マシンを識別するためのIDです。
仮想マシン一意のIDの確認方法
仮想マシンの一意IDは以下の手順で確認できます。Hyper-V(ホスト側)で実行します。
- Powershellを管理者権限で起動(PowerShellを右クリックして管理者として実行)
- 以下コマンドを実行
仮想マシン名はVMの名前を入力してくださいね。これで、仮想マシンの一意のIDは確認できます。
インポート時、UUIDと仮想マシン一意なIDはどうなるのか
インポートで選ぶ種類によってUUIDと仮想マシンの一意なIDはおそらく以下のようになります。「同じ」というのは、エクスポートした時と同じIDになるということです。
UUID | 仮想マシンの一意なID | その他 | |
①インプレース登録 | 同じUUID | 同じ仮想マシンID | エクスポートした仮想マシンをそのまま使う |
②仮想マシン復元 | 同じUUID | 同じ仮想マシンID | エクスポートした仮想マシンをコピーして使う |
③仮想マシンコピー | 同じUUID | 新しい仮想マシンID | エクスポートした仮想マシンをコピーして使う |
インポート時、IDに関して気を付けておくべきこと
上記の表を文章でもまとめておこうと思います。インポートの時、IDについては以下を気にしておこうと思います。
UUIDはどのインポート方法でも変らない
どのインポートの種類を選択しても、UUIDは変わらないようです。物理パソコンでは、マザーボード交換などでかわるので、エクスポートしたものをインポートしただけでは変わらないのですね。(仮想マシンの場合は、vhdファイル自体を変えるということになるのかな?)
仮想マシンの一意なIDは「仮想マシンをコピー」の時だけ新しいIDとなる
①インプレース登録と②仮想マシンで復元を選択した場合は、IDは変わらない、③仮想マシンをコピーの時のみ新しい一意なIDが付与されるようです。
ということで、①や②の方法でのインポートの場合、Hyper-Vホストの中の仮想マシンで、既に同じ一意なIDが存在するとインポートが出来ません。エクスポートした元の仮想マシン自体が存在するホストに①や②の方法でインポートすることは出来ないという事です。(一意じゃくなってしまうので、扱えないのですね。)
もし、同じホストに仮想マシンを追加したいのならば、既にある方を一度削除する必要すればインポートできました。
インプレース登録と復元の違いは、エクスポートファイルの利用の仕方
①インプレース登録と②仮想マシンを復元の違いは、エクスポートファイルをインポートするときに、ファイル(vhdファイルなどの仮想マシンファイル)をそのまま利用するか、コピーしてからインポートするかの違いになります。
①でインポートすると、vhdファイルなどもそのまま使い、上書きしていくことになるので、もう一度同じ状態でのインポートは不可になります。一度きりのインポートの時に選択すればいいかなと。
②で復元インポートすると、仮想マシンファイルがコピーして利用となるので、コピー時間はかかるものの、もう一度同じ状態をインポートしたいという時には再度のインポート利用が可能となります。(エクスポートファイルが残る。)
さいごに
インポート時、どのインポート方法の種類を選択しよう?と迷われた方の参考情報となれば幸いです。
私の場合は、チェックポイントを作成しておらず、エクスポートファイルしかなかったので、ある時点への切り戻しに使いました。切り戻しの際は、今あるHyper-V上の仮想マシンを削除から、②仮想マシンの復元を選択してインポートしました。
読み返すと文字ばかりの伝わりにくい内容かな?と思ったりしているのですが、自分の備備忘メモとして、一旦このまま残します。それでは、また!