2015年5月にリリースされたWindows Server Technical Preview 2のインストール方法と注目すべき新機能、プロダクションチェックポイントについて2回にわたってご紹介しました。
第3回では、この次期Hyper-Vの注意すべき変更点についてご紹介します。
目次
仮想マシンの構成バージョンが6.2に
WIN2012R2 のHyper-Vでは仮想マシンのバージョンは5.0となっていました。vNext のHyper-Vで新規で仮想マシンを作成すると、仮想マシンのOSの種類には関係なくバージョンはすべて6.2となります。
仮想マシンのバージョンは、vNext のHyper-VではHyper-Vマネージャーからか、もしくはPowerShellのコマンドは以下で確認することができます。
Get-VM * | Format-Table Name, Version
WIN2012 のHyper-VではVersionという項目が確認できませんが、WIN2012 のHyper-V 上で作成した仮想マシンをWIN2012R2 のHyper-Vに一方向にライブマイグレーションすることができます。ライブマイグレーションの過程で仮想マシンの構成はアップグレードされ、バーションは5.0として確認することができます(5.0以前には戻せません)。
ライブマイグレーションなどでWIN2012R2 のHyper-V上の仮想マシンをvNext のHyper-Vに移動してきた場合は、バージョン5.0の仮想マシンを6.2にアップグレードすることが可能です。仮想マシンに関連づけられているチェックポイントも実はチェックポインとごとに構成ファイルを持っているので、これらも同時にアップグレードされます。ただし、チェックポイント取得時に作成される仮想マシンのメモリの状態などを保存する.binファイルと.vsvファイルは強制的に削除されてしまうので、バージョン6.2にアップグレードした後、仮想マシンのチェックポイントを適用した場合は、すべてシャットダウンされた状態からのブートスタートとなりますのでご注意ください。
仮想マシンのバージョンのアップグレード方法としては、アップグレードを実施したい仮想マシンが停止状態のときにvNext 上のPowerShellのコマンドで以下を実行します。
Update-VmVersion "仮想マシン名"
一度5.0から6.2へバージョンアップした仮想マシンは、たとえチェックポイントを取得していたとしても、5.0には戻すことができません。どうしても5.0のバージョンで仮想マシンを作成したい場合は、仮想はドディスクファイルだけ抜き出して、WIN2012R2 のHyper-V上で仮想マシンとして作り直す必要があります。
仮想マシンの構成ファイルがxml形式のファイルからバイナリファイルに
バージョン6.2の仮想マシンでは構成状態を保存する.VMCXファイル(これまでの.XMLファイル相当)と、メモリやデバイスの状態を保存する.VMRSファイル(これまでの.VSV .BINファイル相当)の2つバイナリファイルが仮想マシンの構成情報ファイルとなります。
統合サービスの提供方法の変更
これまで統合サービスはHyper-Vホストの%Windir%\System32\vmguest.isoを用いてインストールを行っていましたが、vNextではWindows Update や Windows Server Update Services (WSUS) を通じて仮想マシンへの統合サービスが提供されることになります。Hyper-Vマネージャーから利用できるVirtual Machien Connection(vmconnect.ext)の操作メニューからは「統合サービス セットアップ ディスクの挿入」のメニューは削除されています。
vNextが正式に製品版となったタイミングで、新しいHyper-V上で仮想マシンを作成した場合は、WIN2012R2やWindows8.1などのOSの場合はWindows Updateを通じで新しい統合サービスをダウンロード、インストールすることとなります。(サーバポートされるOSのみ)Hyper-VがサポートしているLinuxやFreeBSD 10.0については、OSのカーネル自体に統合サービスが含まれているのでそのまま利用することができます。
Second Level Address Translation(SLAT)が必須に
Hyper-V上の仮想マシンが利用しているメモリは仮想化技術によって論理的に割り振られたものなので、実際に使う場合にはホストサーバー上の物理メモリにアクセスする必要があります。このとき仮想マシンとホストサーバーの間でメモリアドレスの変換が必要となります。この変換作業をソフトウェア的に行っていたものを、ハードウェアを使用して高速に処理してしまおうという機能がSecond Level Address Translation(SLAT)と呼ばれるものです。Intel製CPUではEPT(Extended Page Table)、AMD製CPUではNPT(Nested Page Table)と呼ばれています。
WIN2012R2 のHyper-VではSLATは必須要件ではなく推奨要件だったのですが、vNextのHyper-Vでは必須要件となりそうです。Windows 8.1などのクライアントHyper-VではSLATが必須要件となっており、SLATが有効でない場合はHyper-Vの機能がインストールできないといった制限があります。vNextでは役割と機能の追加でHyper-Vの機能追加をするときにはSLATの有無のチェックがまだ無いようですが、正式に必須要件となった場合にはこの時点でSLATのチェックが入ることになります。
また、vNextのHyper-Vの新機能でHyper-Vホストクラスターに参加しているWIN2012R2を、仮想マシンを停止することなくvNextにアップグレードできる、Hyper-Vクラスタローリングアップデートという機能があります。この機能の要件としてSLATが必須要件となっています。
サーバーがSLATに対応しているかの確認は以下の方法となります。
SLATの確認はハイパーバイザーを無効にして、サーバーを再起動する必要があります。稼働中の仮想マシンはシャットダウン後、SLATの確認中は起動できませんのでご注意ください。
1 | bcdedit コマンドで、「Windows ブート ローダー」にある「hypervisorlaunchtype」の項目の値が”Auto”になっている場合は、以下のコマンドでブートにハイパーバイザーの起動を無効にします。 |
2 | bcdedit /set {current} hypervisorlaunchtype Off コマンドが成功したら、サーバーを再起動します。 |
3 | 起動完了後ログインして、管理者権限にてコマンドプロンプトを開きます。 |
4 | 以下のコマンドを入力してSLATの確認をします。 WMIC CPU Get SecondLevelAddressTranslationExtensions 戻り値が Second Level Address Translation TRUE となっていればSLAT対応のCPUということになります。 |
5 | ハイパーバイザーを有効にするために bcdedit /set {current} hypervisorlaunchtype Auto このコマンド入力後再起動します。 |
次回は、Hyper-Vの互換性やライブマイグレーションについてご紹介します。
*本文中に記載されている会社名および商品名・サービス名は、各社の商標 または登録商標です。
著書の紹介欄
Hyper-Vで本格的なサーバー仮想環境を構築。仮想環境を設定・操作できる!
できるPRO Windows Server 2016 Hyper-V
◇Hyper-Vのさまざまな機能がわかる ◇インストールからの操作手順を解説 ◇チェックポイントやレプリカも活用できる Windows Server 2016 Hyper-Vは、仮想化ソフトウェア基盤を提供する機能であり、クラウドの実現に不可欠のものです。 本書では、仮想化の基礎知識から、Hyper-Vでの仮想マシンや仮想スイッチの設定・操作、プライベートクラウドの構築、Azureとの連携などを解説します。
初めてのWindows Azure Pack本が発売
Windows Azure Pack プライベートクラウド構築ガイド
本書は、Windows Azure PackとHyper-Vを利用し、企業内IaaS(仮想マシン提供サービス)を構成するための、IT管理者に向けた手引書です。試用したサーバーは、最小限度の物理サーバーと仮想マシンで構成しています。Windows Azure Packに必要なコンポーネントのダウンロード、実際にプライベートクラウド構築する過程を、手順を追って解説しています。これからプライベートクラウドの構築を検討するうえで、作業負担の軽減に役立つ一冊です。
ブログの著者欄
採用情報
関連記事
KEYWORD
CATEGORY
-
技術情報(417)
-
イベント(154)
-
カルチャー(35)
-
デザイン(15)
TAG
- 5G
- Adam byGMO
- AI
- AWX
- BIT VALLEY
- blockchain
- ChatGPT
- cloudnative
- CloudStack
- CM
- CNDO
- CNDT
- CODEGYM Academy
- ConoHa
- CS
- CSS
- CTF
- DC
- Designship
- DevSecOpsThon
- Docker
- DTF
- GitLab
- GMO Developers Day
- GMO Developers Night
- GMO GPUクラウド
- GMO Hacking Night
- GMO kitaQ
- GMO SONIC
- GMOアドパートナーズ
- GMOアドマーケティング
- GMOイエラエ
- GMOグローバルサイン
- GMOデジキッズ
- GMOペイメントゲートウェイ
- GMOペパボ
- GMOリサーチ
- Go
- GTB
- Hardning
- Harvester
- HCI
- iOS
- IoT
- ISUCON
- JapanDrone
- Java
- JJUG
- K8s
- Kids VALLEY
- LLM
- MetaMask
- MySQL
- NFT
- NVIDIA
- OpenStack
- Perl
- PHP
- PHPcon
- PHPerKaigi
- QUIC
- Rancher
- RPA
- Ruby
- Selenium
- splunk
- SRE
- SSL
- Terraform
- TLS
- TypeScript
- UI/UX
- VLAN
- VS Code
- インターンシップ
- オブジェクト指向
- オンボーディング
- お名前.com
- カルチャー
- コンテナ
- スクラム
- スペシャリスト
- ソフトウェアテスト
- チームビルディング
- ドローン
- ネットワーク
- プログラミング教育
- ブロックチェーン
- ゆめみらいワーク
- リモートワーク
- 基礎
- 多拠点開発
- 大学授業
- 宮崎オフィス
- 応用
- 技育プロジェクト
- 新卒
- 暗号
- 機械学習
- 決済
PICKUP