インプレースアップグレードに頼らない、最新Hyper-V Server 2019への移行:その知識、ホントに正しい? Windowsにまつわる都市伝説(139)
前回は「Hyper-V Server 2019」の大幅に遅れての再リリースに合わせ、Hyper-V Server 2016からインプレースアップグレードがサポートされず、実際に不可能であることを紹介しました。今回は、スタンドアロンのHyper-V Server 2016を最新バージョンに移行する方法について、筆者が実際に試してみた結果のレポートです。
最新バージョンに移行したい。でも、大容量データのコピーは避けたい
前回は、サポートされるアップグレード方法である「クラスタOSローリングアップグレード(Cluster Operating System Rolling Upgrade)」以外の方法で「Hyper-V Server 2016」以前を「Hyper-V Server 2019」に移行する方法として、仮想マシンを別の場所にエクスポート(またはファイルをコピー)し、Hyper-V Server 2019をクリーンインストールしてから、仮想マシンをインポートして、その後、仮想マシンの構成バージョンをアップグレードするという手順を紹介しました。
しかし、上記の記事で示した手順は筆者が頭の中で想像したシミュレーションにすぎず、実際に試したわけではありませんでした。それでは少し無責任だと思ったので、次の3つのパターンを想定し、Hyper-V Server 2016からHyper-V Server 2019への移行作業を実際に行ってみました。
- パターン1――仮想マシンのデータがC:ドライブにある場合
- パターン2――仮想マシンのデータが既定のパスにある場合
- パターン3――仮想マシンのデータが別ドライブにある場合
結論から言うと、仮想マシンのデータを外部記憶装置にエクスポート(またはコピー)することなく、最新バージョンのOS環境に既存の仮想マシンを移行することができました。同じ方法で、Hyper-V Server 2012 R2以降からの移行が可能なはずです。
今回試す3つのパターンは、いずれもローカルディスクに仮想マシンのデータ(仮想マシン構成ファイル、仮想ハードディスクファイル、チェックポイントファイルなど)が格納されているスタンドアロン環境を想定しています。
FC SAN(Fibre Channel Storage Area Network)やiSCSI SAN、SMB(Server Message Block)共有など、仮想マシンのデータがSANやファイルサーバに格納されている場合は、「パターン3」とほぼ同じ手順で行えるでしょう(データディスクの再接続をSANやファイルサーバとの再接続に置き換えてください)。移行前に仮想マシンのバックアップを作成していませんが、運用環境ではバックアップしておくことを強く推奨します。
パターン1――仮想マシンのデータがC:ドライブにある場合
Windows ServerやWindows 10、Hyper-V ServerのHyper-Vの仮想マシンデータを格納するための既定のパスは分かりにくい場所にあるため(パターン2で説明します)、「Hyper-Vマネージャー」の「Hyper-Vの設定」ウィンドウで既定のパスを変更したり、仮想マシンを作成するごとに既定とは別のパスを指定して保存したりしているユーザーは多いと思います。
パフォーマンスや管理性の点からは、「パターン3」で想定するように別ボリュームに仮想マシンのデータを保存するのがお勧めです(同じディスクの別パーティションのボリュームではなく、別ディスクのパーティションのボリュームを推奨)。
さまざまな理由があって、OSディスク用のボリューム(C:ドライブ)にある既定のパスや専用ディレクトリを作成して、その場所を利用している場合もあるでしょう。
前回に説明したように、Hyper-V Serverは、設定やデータを維持したままの「インプレースアップグレード」ができません。しかしながら、OSディスク用のボリューム上の専用ディレクトリを利用している場合は、本稿で示す方法で仮想マシンのデータをその場所に維持したまま、最新バージョンに移行することが可能です。ここでは、「C:\VM」ディレクトリに仮想マシンのデータを格納しているものとして、実際に移行してみます(画面1)。
画面1 パターン1のHyper-V環境。OSはHyper-V Server 2016、仮想マシンのデータは「C:\VM」ディレクトリに格納されている。画面左はWindows 10の「Hyper-Vマネージャー」をHyper-V Serverにリモート接続した管理環境、画面右はHyper-V Serverのローカルコンソール
現在の仮想マシンのデータは「C:\VM」ディレクトリに置いたまま、再リリース版のHyper-V Server 2019のインストールメディアを使用してサーバを起動し、新規インストールを開始します。インストール先としては、現在Hyper-V Server 2016がインストールされているプライマリーパーティションを選択します(画面2)。
画面2 新規インストールのために「カスタム:新しいバージョンのHyper-V Serverのインストールのみを行う」をクリックし、インストール先としてHyper-V ServerのOS用ボリュームのパーティションを選択する
すると、現在のHyper-V Serverのシステム用ディレクトリ(\Windows、\Program Files、\Program Files《x86》、\ProgramData、\Usersなど)が「Windows.old」に移動されるという注意メッセージが表示されるので、「OK」をクリックして続行します。
OS用ボリュームのルートに作成した仮想マシン用ディレクトリ「\VM」が削除されることなく維持されることは、この後の作業で確認できるでしょう。なお、OS用のボリュームのパーティションが分からない場合は、[Shift]+[F10]キーを押してコマンドプロンプトを開き、「DISKPART」コマンドを実行して確認してください。
ビルトインAdministratorのパスワードを設定し、Hyper-V Server 2019の新規インストールが完了したら、コンピュータ名やネットワークの設定を手作業で再現し、リモート管理が可能なように構成します。インプレースアップグレードではなく、新規インストールなので、システム設定やアプリケーション(例えば、管理エージェントなど)は全て自分で設定する必要があります。
その後、リモートの「Hyper-Vマネージャー」を接続して、移行前と同じ名前と構成で仮想スイッチを作成します。なお、仮想スイッチの名前が異なっていても、仮想マシンをインポートする際に仮想スイッチを指定するように求められるので、1つ手間は増えますが問題ありません。
仮想マシン用の「C:\VM」ディレクトリは同じ場所に維持されていますが、新規インストールのため、当然のことながらHyper-Vには未登録であり、「Hyper-Vマネージャー」の仮想マシンのリストは空の状態です。
ここで「操作」ペインの「仮想マシンのインポート」を選択し、「C:\VM」ディレクトリ内にある各仮想マシンの「Virtual Machines」ディレクトリがある1つ上のパスを指定し、「仮想マシンをインプレースで登録する」を選択してインポートします(画面3)。「仮想マシンをインプレースで登録する」を選択すると、仮想マシンの現在の場所と仮想マシンIDを変更することなく、仮想マシンとして復元することが可能です。
仮想マシンを開始して、問題がないことを確認したら、仮想マシンの構成バージョンをHyper-V Server 2019の「9.0」にアップグレードします(画面4)。
このとき、以前の構成バージョンで作成された既存のチェックポイントは、全て破棄されることに注意してください。チェックポイントをしばらく利用可能にしておきたい場合は、無理して構成バージョンをアップグレードする必要はありません。ただしその場合、Hyper-Vの新機能の利用ができないなど制約が残ります。
最後に、以下のコマンドラインを実行して「C:\Windows.old」ディレクトリを削除します(画面5)。
RD C:\Windows.old /S
通常のインプレースアップグレードの場合、「C:\Windows.old」ディレクトリは「設定」→「システム」→「ストレージ」や、「ディスククリーンアップ」(Cleanmgr.exe)を利用して削除しますが、Server CoreであるHyper-V Serverではこれらの方法は利用できません。
アクセス許可の問題があって、コマンドラインで「C:\Windows.old」ディレクトリを削除するのは難しい作業です。しかしながら、新規インストールで作成された「C:\Windows.old」ディレクトリについては、単純に削除することができました。
パターン2――仮想マシンのデータが既定のパスにある場合
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 次期Windows 10最新動向:リリース秒読みの「19H1」はこう変わる
間もなくリリースされるWindows 10の新しい機能アップデート「19H1」。それに実装される新機能をまとめてみた。また、同時に変更となるライフサイクルなどについても解説する。 - 【新元号発表目前!】Windows 10/Officeの新元号対応どうするどうなる!?
新元号への切り替えが2019年5月1日に行われる。Windows OS/Officeでこの新元号に対応するにはどうすればよいのか、注意すべき点はあるのかなどをまとめる。 - 【Windows 10】できる人は知っているキーボードショートカット
Windows 10でキーボードショートカットを使うと、マウスを使うよりも素早い操作が可能だ。ただ、種類も多く、知っていると便利なのに意外と使われていないものも多いようだ。ここでは基本的なキーボードショートカットを紹介する。 - Windows 10への移行計画を早急に進めるべき理由
本連載では、これからWindows 10への移行を本格的に進めようとしている企業/IT管理者に向け、移行計画、展開、管理、企業向けの注目の機能を解説していきます。第1回目は、「Windows 10に移行すべき理由」を説明します。