SB C&Sの最新技術情報 発信サイト

C&S ENGINEER VOICE

SB C&S

Horizon スマートプロビジョニングとは~次世代のプロビジョニング方式~

VMware
2021.09.23

こんにちは。SB C&Sの石井です。
VMware製品のプリセールスSEチームに所属しています。

前回「Horizon インスタントクローンとは~これから主流の仮想マシン展開方式~」と題しまして、インスタントクローンの概要についてご紹介致しました。まだ上記リンク記事をご覧になっていない方は是非、前回の記事もご一読ください。

VMware Horizonの新バージョンである「Horizon 2006」から、インスタントクローンの新しいプロビジョニング方式としてスマートプロビジョニングと呼ばれるプロビジョニング方式が実装されました。

この機能は、従来の「Horizon 7」から使用されてきた"インスタントクローン"でありながら、仮想デスクトッププールの状況に応じ、従来の"インスタントクローン"とは異なる方式で仮想マシンをプロビジョニングします。

今回は、従来のプロビジョニング方式との違いやプロビジョニング方式の変更方法などを紹介します。

スマートプロビジョニングとは

スマートプロビジョニングは「Horizon 2006」から新たに追加された、インスタントクローンのプロビジョニング方式です。
従来のプロビジョニング方式との大きな違いは、インスタントクローンの特徴でもあった「ペアレント」が、小規模仮想デスクトッププールの場合、作成されなくなることです。小規模仮想デスクトッププールの場合、レプリカからプロビジョニングされる仕組みになっています。

スマートプロビジョニングEV_1.png

スマートプロビジョニングには「スマートプロビジョニングを有効にする」といったような設定値をHorizon ConsoleのGUI画面で指定するわけではありません。デフォルトでスマートプロビジョニング機能が有効になっており、仮想デスクトッププールの仮想マシンの数とESXiホストの数によってペアレント有り/無しが自動的に選択されます。
具体的には、1台のESXiホストあたり12台以下の仮想デスクトップを展開する際は、ペアレントが作成されないプロビジョニング方式が採用されます。

作成した仮想デスクトッププールが、ホストあたり13台以上の仮想デスクトップになると、ペアレントが作成されます。ペアレントが作成された後は、従来通りペアレントから仮想デスクトップが作成されるようになります。
上記のように仮想マシンが増え、インスタントクローンの仮想デスクトッププールにペアレントが作成されると、ホストあたり12台以下の仮想デスクトップ数に減少させてもペアレントは削除されません。
ペアレントを削除したい場合は、仮想デスクトッププールの全仮想マシンを削除して再作成するか、全ての仮想デスクトップからユーザーをログオフさせる必要があります。

なお、同じゴールドイメージから複数の仮想デスクトッププール作成し、複数のプールの合計が、ホストあたり13台以上の仮想デスクトップが作成されてもペアレントは作成されません。1つの仮想デスクトッププールで、ホストあたり13台以上の仮想デスクトップを作成する必要があります。


スマートプロビジョニングのメリット

仮想デスクトッププールの規模に応じて自動的に展開方式を変更してくれるスマートプロビジョニングですが、ペアレントが作成されないことで具体的にどのようなメリットがあるかご紹介します。

元々インスタントクローン方式は、フルクローン方式と比べ、以下のような特徴がありました。
・常時サスペンド状態のペアレントを使用し、高速に仮想マシンを展開
・レプリカ+ペアレントのディスクを共有することで、ストレージリソースの消費量を削減

これらのメリットを実現するために必要なペアレント仮想マシンは、ESXiホスト毎にCPU/メモリを使用した状態で作成されます。そのため、小規模仮想デスクトッププールの場合であっても、ESXiホスト毎にペアレントが作成されてしまい、CPU/メモリを無駄に消費してしまう可能性があります。

下図は、ペアレントによってリソースを余計に消費してしまう際のイメージ図です。

スマートプロビジョニングEV_14.png

上記イメージの仮想マシン1台あたりが2CPU/8GBメモリのスペックだった場合、ペアレント仮想マシン3台分の6CPU/24GBメモリが必要となってしまいます。

元々、6台分の仮想デスクトップを準備するために12CPU/48GBメモリのリソースを見込んでいたとすると、ペアレント仮想マシンの準備で更に50%ものCPU/メモリが追加となるのは、悩ましい状態かと思います。

このように、小規模仮想デスクトッププール環境の場合、インスタントクローン(ペアレント有り)によって得られるメリットより、追加で必要となるリソースのコストが、デメリットとして大きな問題になってしまう場合があります。そこで登場したプロビジョニング方式がスマートプロビジョニングです。ホストあたり12台以下の仮想デスクトップの場合は、ペアレント仮想マシン分のCPU/メモリを消費せずに仮想デスクトッププールを準備できます。
RDSHを使用して複数人で1つの仮想マシンを利用する場合は、1つの仮想マシンのリソースが大きくなるためペアレント無しで展開する方がメリットが大きくなる場合もあります。

リフレッシュ動作の違い

インスタントクローンの仮想デスクトッププールの場合、ユーザーがログアウトした際に仮想マシンをリフレッシュし、常に新しい状態の仮想マシンを準備する機能があります。

ペアレント無しで構成されたインスタントクローン仮想デスクトッププールも、従来と同様、ユーザーのログオフ後に仮想マシンをリフレッシュする機能がありますが、内部の動作が一部異なります。

ペアレント有りのリフレッシュ動作の場合、ユーザーがログアウトした後に仮想マシンが削除され、ペアレントから新しく仮想マシンが作成されます。

スマートプロビジョニングEV_11.png


一方、ペアレント無しのリフレッシュ動作の場合は、仮想マシンは削除されません。仮想マシンのスナップショット機能が使用されます。仮想マシンがプロビジョニングされた際に自動作成されている、「base-snapshot」の状態に戻す動作になります。

スマートプロビジョニングEV_12.png


実際に、インスタントクローンの仮想デスクトッププールをそれぞれのプロビジョニング方式で構成し、作成された仮想マシンの設定を確認してみました。
ペアレント有りのプロビジョニングにより作成された仮想マシンはスナップショットが作成されていませんでしたが、ペアレント無しのプロビジョニングによって作成された仮想マシンはスナップショットが作成されていました。

スマートプロビジョニングEV_13.png

自動作成された仮想マシンのスナップショットは、削除してはいけませんのでご注意ください。もし、スナップショットを削減してしまうと、ユーザーのログオフ後にリフレッシュ動作が行えず、エラーになります。


プロビジョニング方式の設定変更

ご紹介したように、仮想マシンの数とESXiホストの数によってプロビジョニング方式は自動的に選択されるため、通常は明示的に選択する必要がありません。もし、プロビジョニング方式を明示的に指定したい場合、Connection ServerのLDAPの情報を変更することで設定変更を行うことができます。

Connection ServerのLDAP情報は、Microsoftが提供するActive Directory Lightweight Directory Service(AD LDS)データベースに格納されています。そのため、AD LDSのデータベースに接続することで設定変更することができます。なお、AD LDSデータベースを変更する前は、バックアップを行ってから変更することを推奨します。場合によってはHorizon環境に障害が発生する可能性があります。

Horizon LDAPのバックアップについては、下記URLをご参照ください。
https://docs.vmware.com/jp/VMware-Horizon/2106/horizon-console-administration/GUID-C4E76260-AA81-461D-A6EF-FBFDF8EA12ED.html#GUID-C4E76260-AA81-461D-A6EF-FBFDF8EA12ED


それでは、プロビジョニング方式の設定変更について説明します。

まず、Connection ServerをインストールしたWindows Serverで、ADSIエディターを開きます。ADSIエディターの「操作」タブを選択し、「接続」をクリックします。「接続の設定」のポップアップが表示されます。

スマートプロビジョニングEV_2.png

「接続の設定」に入力する情報は以下の通りです。

入力欄 設定値
名前 適当な名前
識別名または名前付けコンテキストを選択または入力する dc=vdi,dc=vmware,dc=int
ドメイン名またはサーバーを選択または入力する localhost:389


次に、プロビジョニング方式の設定変更をしたい仮想デスクトッププールを選択します。

プロビジョニング方式の設定は仮想デスクトッププールごとに行うことができます。接続したAD LDSデータベースから「Horizon Database(接続の設定で入力した名前)」→「DC=vdi,dc=vmware,dc=int」→「OU=ServerGroups」の順番にクリックします。右ペインから設定変更したい仮想デスクトッププールの「デスクトッププールID」をダブルクリックします。今回は、「IC1」デスクトッププールIDに対して設定を行います。

スマートプロビジョニングEV_4.png


次に、プロパティを変更します。表示されたプロパティのポップアップから「pea-ProvisionScheme」を選択し、「編集」をクリックします。

スマートプロビジョニングEV_5.png


属性値の編集画面で、使用したいプロビジョニング方式を指定します。値を入力し、「OK」をクリックします。

スマートプロビジョニングEV_6.png

入力する値は以下の通りです。

プロビジョニング方式
ModeA ペアレント有りのプロビジョニング方式
ModeB ペアレント無しのプロビジョニング方式
未入力(デフォルト) スマートプロビジョニング方式


以上の設定を行うことで、プロビジョニング方式を変更することができます。

なお、ペアレント無しで構成された仮想デスクトッププールを、ModeA(ペアレント有り)に設定変更しても自動的にペアレントは作成されません。ペアレント無しで作成された仮想デスクトップをログオフしたタイミング、または仮想デスクトッププールの編集から、仮想デスクトップを追加することでペアレントが作成されます。

ペアレントが作成されている状態でModeB(ペアレント無し)の設定変更を行っても、展開済みのペアレントは削除されません。ペアレントを削除したい場合は、仮想デスクトッププールの全仮想マシンを削除して再作成するか、全ての仮想デスクトップからユーザーをログオフさせる必要があります。ユーザーがログオフしたタイミングで、各仮想マシンでリフレッシュが実行され、徐々にペアレント無しのプロビジョニングに切り替わって行きます。そのため、切り替え中のタイミングでは、ペアレントが存在しながら、一部の仮想マシンはModeBのスナップショットによるリフレッシュ動作となり、並行稼働する状態となります。

スマートプロビジョニングEV_10.png


まとめ

スマートプロビジョニングの概要やメリット、リフレッシュ動作の違い、プロビジョニング方式の設定変更についてご紹介しました。
基本的には、仮想デスクトッププールの仮想マシンの数とESXiホストの数によって自動的に、ペアレントの有無が決まる為、普通に利用していただく分には設定変更をしなくても問題ありません。しかし、プロビジョニング方式の設定変更をすることにより、ペアレントの有無を選択することができます。要件次第では前述のようなリソース節約の効果が得られるケースがあるので、是非ご検討していただければと思います。

本記事が、インスタントクローンの導入に対して参考になれば幸いです。

SB C&S が提案する仮想化ソリューションについての情報はこちら

著者紹介

SB C&S株式会社
ICT事業本部 技術本部 技術統括部
第1技術部 1課
石井 基久 - Motohisa Ishii -

VMware vExpert