VMware Horizon 8でインスタントクローンのプロビジョニング方法をSmart Provisioningから変更する 

# この記事について
VMware Horizon 8のインスタントクローンをデプロイするとデフォルトの状態ではSmart Provisioningとしてデプロイされます。
この記事ではVMwareのKnowledge Baseの[KB81026](https://kb.vmware.com/s/article/81026)で解説されているインスタントクローンのプロビジョニング方式の変更方法をキャプチャを交えて記載します。


# Smart Provisioningとは？
Smart Provisioningとは、デプロイしたインスタントクローンがESXiホストあたり12VM未満の場合はParent VMをせず、ESXiホスト当たり12VM以上の場合はParent VMが構成される方式です。このあたりは[VMware Japan Blog](https://blogs.vmware.com/vmware-japan/2020/11/dw-horizon8.html)にも記載があります。

Horizon 7ではESXiあたりのインスタントクローン台数に関わらず必ずParent VMが作成されていましたが、Horizon 8からはSmart Provisioningが機能追加されデフォルトの設定となっています。

Parent VMは存在するとインスタントクローンの展開が高速になるためESXiあたりインスタントクローンが12VM未満の小規模な環境でも採用したいケースも想定できます。
一方、起動状態で存在し続けるためリソースの観点などでParent VMを作成したくないケースもあるかもしれません。
そういったユースケースごとに対応が可能なように、インスタントクローンのプロビジョニング方式を変更する方法が用意されています。

# 変更手順
インスタントクローンのプロビジョニング方式の変更はView ADAMデータベースから実施します。
View ADAMデータベースへの接続方法は[VMware HorizonのView ADAMデータベースへの接続方法](https://qiita.com/ushi_not_found/items/08fe18ce6d0023f1b69e)で記載しております。

## Step1, View ADAMデータベースへ接続し"OU=Server Groups"を参照する。
View ADAMデータベースに接続します。
左ペインを展開すると"OU=Server Groups"というフォルダがあるのでクリックします。
"OU=Server Groups"にはHorizon Consoleで作成したデスクトッププール名と同様のエントリが列挙されています。
![cap1-sp01.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/1b7abdb9-e55b-019c-851b-541912deb5e9.png)

## Step 2, プロビジョニング方法を変更したいデスクトッププールのプロパティを開く
今回はあらかじめ作成しておいたインスタントクローンプール"IC-Desktop"のプロビジョニング方式を変更します。
目的のデスクトッププールのエントリをダブルクリック(もしくは右クリック→プロパティ)するとデスクトッププールのプロパティが表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/331789c4-7de2-a816-5b58-196b1f67254b.png)

## Step3, 属性"pae-ProvisionScheme"を変更する。
デスクトップのプロパティ画面で"pae-ProvisionScheme"エントリを探します。
デフォルト状態では値は"<未設定>"となっているはずです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/5c181bbd-cf8b-15ba-1da5-9f57075d2a9c.png)

"pae-ProvisionScheme"エントリをダブルクリックすると値の変更画面が表示されます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/85ad9450-8a74-c225-a515-0f6d45fc9f70.png)

値には下記が指定可能です。

|値  |動作  |Parent VMの有無  |
|---|---|---|
|ModeA|ModeAで動作|常にParent VMを作成する|
|ModeB|ModeBで動作|常にParent VMを作成しない|
|未設定|スマートプロビジョニングで動作|ESXiあたりのインスタントクローン台数で可変|

例えば常にParent VMを作成したい場合は値に"ModeA"と入力しOKをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/f3538805-8782-f1b1-6999-256618bbeca1.png)

その後デスクトッププールのプロパティ画面で値が反映されていることを確認して適用をクリックして完了です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/7e094982-dab1-22e4-d085-b000665e4aa0.png)

## Tips
ModeAやModeBからSmart Provisioningに戻したい場合は
値の変更画面でクリアをクリックすると値が未設定に戻ります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/85ad9450-8a74-c225-a515-0f6d45fc9f70.png)

## Step4, 動作確認
vCenter上からParent VMが作成されているかを確認します。
View ADAMデータベースを変更しただけではParentVMは作成されていません。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/c68710a5-55ee-2ec3-91d4-33cb7ec011e2.png)

Horizon Consoleより既存のインスタントクローンを削除してインスタントクローンを再作成してみます。
![68747470733a2f2f71696974612d696d6167652d73746f72652e73332e61702d6e6f727468656173742d312e616d617a6f6e6177732e636f6d2f302f323431323232372f34323138633637662d353462612d333939392d373734322d3130336433626462623134342e706e67.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/141a6908-c00c-3399-05e1-c8c2d53ce405.png)


今回はModeAに設定したため、インスタントクローンを再作成すると3台だけのインスタントクローンプールですがParent VMが作成されました。また、インスタントクローン自体もParent VMからクローンされていることがわかります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/ffea22c6-7efc-b475-98a7-06b3d8fce410.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2412227/8120ca83-a10d-a705-6f30-21a74b7a5c3e.png)

# まとめ
今回はVMware Horizon 8でインスタントクローンのプロビジョニング方法をSmart Provisioningから変更する方法を記載しました。