Microsoft Azureカタログの作成
`CommonParameters`
[マシンカタログの作成](/ja-jp/citrix-daas/install-configure/machine-catalogs-create.html)では、マシンカタログを作成するウィザードについて説明しています。以下の情報は、Microsoft Azure Resource Managerクラウド環境に固有の詳細を扱っています。
\[-CustomProperties <String>\]\[-ServiceOffering <String>\]
> **注:**
`[-ServiceOffering <String>][-CustomProperties <String>]`
> Microsoft Azureカタログを作成する前に、Microsoft Azureへの接続の作成を完了する必要があります。詳細については、「[Microsoft Azureへの接続](/ja-jp/citrix-daas/install-configure/connections/connection-azure-resource-manager.html)」を参照してください。
マシンカタログの作成
マシンカタログは、次の2つの方法で作成できます。
- Studio
- PowerShell。詳細については、「リモートPowerShell SDKを使用したCitrix DaaSの管理」を参照してください。PowerShellを使用して特定の機能を実装する方法については、「PowerShellの使用」を参照してください。
StudioでAzure Resource Managerイメージを使用してマシンカタログを作成
この情報は、マシンカタログの作成のガイダンスを補足するものです。
イメージは、マシンカタログでVMを作成するために使用される、Azure Compute Gallery内のディスク、スナップショット、またはイメージ定義のイメージバージョンです。
マシンカタログを作成する前に、Azure Resource Managerでイメージを作成してください。
注:
VMのプロビジョニングにアンマネージドディスクを使用することは非推奨です。
ホスト接続で構成されているものとは異なるリージョンのマスターイメージを使用するサポートは非推奨です。Azure Compute Galleryを使用して、マスターイメージを目的のリージョンにレプリケートしてください。
MCSマシンカタログを作成すると、DHCPの有効化やライセンスのリアームなどの準備タスクを実行するために、元のVMに基づいて一時的なVMが作成されます。この一時的なVMは準備VMと呼ばれます。この準備VMの名前はPreparati-84x9nという形式に従い、最後の5文字は重複を避けるためにランダムに生成されます。この準備VMの命名規則は固定されており、カスタマイズできません。準備タスクが完了すると、準備VMは破棄されます。
準備VMからネットワークを切断するために、すべてのインバウンドおよびアウトバウンドトラフィックを拒否するネットワークセキュリティグループが作成されます。ネットワークセキュリティグループは、カタログごとに1回自動的に作成されます。ネットワークセキュリティグループの名前はCitrix-Deny-All-a3pgu-GUIDで、GUIDはランダムに生成されます。例:Citrix-Deny-All-a3pgu-3f161981-28e2-4223-b797-88b04d336dd1。
マシンカタログ作成ウィザードで:
-
Machine TypeページとMachine Managementページには、Azure固有の情報は含まれていません。「マシンカタログの作成」の記事のガイダンスに従ってください。
-
- Imageページで、カタログ内のすべてのマシンにマスターイメージとして使用するイメージを選択します。Select an imageウィザードが表示されます。イメージを選択するには、次の手順に従います。
-
- (テナント内またはテナント間で共有イメージが構成されている接続にのみ適用)イメージが存在するサブスクリプションを選択します。
-
- リソースグループを選択します。
-
- Azureマネージドディスク、Azure Compute Gallery、またはAzureイメージバージョンに移動します。
-
イメージを選択する際は、次の点を考慮してください。
- イメージにCitrix VDAがインストールされていることを確認します。
- VMに接続されているディスクを選択する場合は、次の手順に進む前にVMをシャットダウンする必要があります。
The example link.
注:
カタログ内のマシンを作成した接続(ホスト)に対応するサブスクリプションは、緑色の点で示されます。その他のサブスクリプションは、そのサブスクリプションとAzure Compute Galleryを共有しているものです。これらのサブスクリプションでは、共有ギャラリーのみが表示されます。共有サブスクリプションの構成方法については、「テナント内でイメージを共有する(サブスクリプション間)」および「テナント間でイメージを共有する」を参照してください。
Trusted Launchが有効なWindowsでエフェメラルOSディスクを使用してプロビジョニングスキームを作成できます。Trusted Launchが有効なイメージを選択する場合、vTPMが有効なTrusted Launch対応のマシンプロファイルを選択する必要があります。エフェメラルOSディスクを使用してマシンカタログを作成する方法については、「エフェメラルOSディスクを使用したマシンの作成」を参照してください。
イメージのレプリケーションが進行中でも、マスターイメージとしてイメージを選択してセットアップを完了できます。ただし、イメージのレプリケーション中にカタログの作成に時間がかかる場合があります。MCSでは、カタログ作成から1時間以内にレプリケーションが完了する必要があります。レプリケーションがタイムアウトすると、カタログの作成は失敗します。レプリケーションの状態はAzureで確認できます。レプリケーションがまだ保留中の場合、またはレプリケーションが完了した後に再試行してください。
Gen2イメージを使用してGen2 VMカタログをプロビジョニングすることで、起動時間のパフォーマンスを向上させることができます。ただし、Gen1イメージを使用してGen2マシンカタログを作成することはサポートされていません。同様に、Gen2イメージを使用してGen1マシンカタログを作成することもサポートされていません。また、世代情報を持たない古いイメージはすべてGen1イメージです。
カタログ内のVMがマシンプロファイルから構成を継承するかどうかを選択します。デフォルトでは、**Use a machine profile (mandatory for Microsoft Entra ID)**チェックボックスが選択されています。**Select a machine profile**をクリックして、リソースグループのリストからVMまたはARMテンプレート仕様を参照します。
VMがマシンプロファイルから継承できる構成の例を次に示します。
- アクセラレーテッドネットワーク
- ブート診断
- ホストディスクキャッシュ(OSディスクおよびMCSIOディスクに関連)
- マシンサイズ(別途指定がない限り)
- VMに配置されたタグ
注:
- Azureでマシンカタログのマスターイメージを選択すると、選択したマスターイメージに基づいてマシンプロファイルがフィルター処理されます。たとえば、マシンプロファイルは、マスターイメージのWindows OS、セキュリティの種類、ハイバネーションサポート、およびディスク暗号化セットIDに基づいてフィルター処理されます。
- Trusted Launchが有効なイメージまたはスナップショットを選択する場合、Security TypeとしてTrusted Launchを持つマシンプロファイルを使用することが必須です。その後、マシンプロファイルでSecureBootとvTPMの値を指定することで、それらを有効または無効にできます。Azure Trusted Launchの詳細については、https://docs.microsoft.com/en-us/azure/virtual-machines/trusted-launchを参照してください。
- ARMテンプレート仕様を検証して、マシンカタログを作成するためのマシンプロファイルとして使用できることを確認します。Azureテンプレート仕様の作成方法については、「[Azureテンプレート仕様の作成](#create-an-azure-template-spec)」を参照してください。
- ARMテンプレート仕様を検証する方法は2つあります。
- リソースグループリストからARMテンプレート仕様を選択した後、**Next**をクリックします。ARMテンプレート仕様にエラーがある場合、エラーメッセージが表示されます。
- 次のPowerShellコマンドのいずれかを実行します。
- `Test-ProvInventoryItem -HostingUnitName <string> -InventoryPath <string>`
- `Test-ProvInventoryItem -HostingUnitUid <Guid> -InventoryPath <string>`
例:
```
- Test-ProvInventoryItem -HostingUnitName "we-vdi0101-d-vnet" -InventoryPath machineprofile.folder/vdi01-d-rg.resourcegroup/VDD-templ-spec.templatespec/1.5.templatespecversion
<!--NeedCopy--> ```
- カタログを作成した後、イメージがマシンプロファイルから継承する構成を表示できます。**Machine Catalogs**ノードでカタログを選択し、下部のペインで詳細を表示します。次に、**Template Properties**タブをクリックして、マシンプロファイルのプロパティを表示します。**Tags**セクションには最大3つのタグが表示されます。VMに配置されているすべてのタグを表示するには、**View all**をクリックします。
- MCS で Azure 専用ホスト上に VM をプロビジョニングする場合は、**ホストグループを使用**チェックボックスを有効にしてから、リストからホストグループを選択します。ホストグループは、専用ホストのコレクションを表すリソースです。専用ホストは、1 つ以上の仮想マシンをホストする物理サーバーを提供するサービスです。サーバーは Azure サブスクリプション専用であり、他のサブスクライバーと共有されません。専用ホストを使用すると、Azure は VM がそのホスト上で実行されている唯一のマシンであることを保証します。この機能は、規制または内部セキュリティ要件を満たす必要があるシナリオに適しています。ホストグループとそれらを使用する際の考慮事項の詳細については、「[Azure 専用ホストでの VM のプロビジョニング](#provision-vms-on-azure-dedicated-hosts)」を参照してください。
重要: >
- Azure 自動配置が有効になっているホストグループのみが表示されます。
- ホストグループを使用すると、ウィザードの後半で提供される [仮想マシン] ページが変更されます。選択したホストグループに含まれるマシンサイズのみがそのページに表示されます。また、可用性ゾーンは自動的に選択され、選択できません。
- 1. **[ストレージとライセンスの種類]** ページは、Azure Resource Manager イメージを使用している場合にのみ表示されます。
- **[ストレージ冗長タイプ]** を選択します。
- ローカル冗長ストレージ (LRS): LRS を使用すると、利用可能なすべてのストレージタイプから選択できます。LRS を使用する場合、Azure は指定された可用性ゾーン内にのみ仮想マシン (VM) をデプロイします。
- ゾーン冗長ストレージ (ZRS): ZRS を使用すると、Azure が任意の利用可能なゾーンで VM を起動できるため、VM の配置の柔軟性が向上します。これはローカル冗長ストレージ (LRS) に対する主要な利点であり、ディスクの元のゾーンがアクセス不能になった場合でも VM の可用性を保証します。ただし、ZRS は Premium SSD および Standard SSD ストレージタイプとのみ互換性があります。
- マシンカタログに使用する **[ストレージの種類]** を選択します。ストレージの種類によって、ウィザードの **[仮想マシン]** ページで提供されるマシンサイズが決まります。
- **Premium SSD**。I/O 負荷の高いワークロードを持つ VM に適した、高性能で低遅延のディスクストレージオプションを提供します。
- **Standard SSD**。低 IOPS レベルで一貫したパフォーマンスを必要とするワークロードに適した、費用対効果の高いストレージオプションを提供します。
- **Standard HDD**。待機時間に影響されないワークロードを実行する VM に適した、信頼性が高く低コストのディスクストレージオプションを提供します。
- **Azure エフェメラル OS ディスク**。VM のローカルディスクを再利用してオペレーティングシステムディスクをホストする、費用対効果の高いストレージオプションを提供します。または、PowerShell を使用してエフェメラル OS ディスクを使用するマシンを作成することもできます。詳細については、「[Azure エフェメラルディスク](/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure.html#azure-ephemeral-disks)」を参照してください。エフェメラル OS ディスクを使用する際は、次の点を考慮してください。
- Azure エフェメラル OS ディスクと MCS I/O は同時に有効にできません。
- エフェメラル OS ディスクを使用するマシンを更新するには、VM のキャッシュディスクまたは一時ディスクのサイズを超えないイメージを選択する必要があります。
- ウィザードの後半で提供される **[電源サイクル中に VM とシステムディスクを保持]** オプションは使用できません。
> **注:**
>
> - ID ディスクは、選択したストレージの種類に関係なく、常に Standard SSD を使用して作成されます。
> - **[ストレージ冗長]** として **[ZRS]** を選択した場合、**[Premium SSD]** と **[Standard SSD]** のみを選択するオプションが表示されます。
Azure ストレージの種類とストレージレプリケーションの詳細については、以下を参照してください。
- [Azure Storage の概要](https://docs.microsoft.com/ja-jp/azure/storage/common/storage-introduction/)
- [Azure Premium Storage: 高パフォーマンスのための設計](https://docs.microsoft.com/ja-jp/azure/virtual-machines/premium-storage-performance/)
- [Azure Storage の冗長性](https://docs.microsoft.com/ja-jp/azure/storage/common/storage-redundancy/)
- 既存の Windows ライセンスまたは Linux ライセンスを使用するかどうかを選択します。
- Windows ライセンス: Windows ライセンスを Windows イメージ (Azure プラットフォームサポートイメージまたはカスタムイメージ) とともに使用すると、Azure で Windows VM を低コストで実行できます。ライセンスには次の 2 種類があります。
- **Windows Server ライセンス**。Windows Server または Azure Windows Server ライセンスを使用でき、Azure ハイブリッド特典を利用できます。詳細については、<https://azure.microsoft.com/en-us/pricing/hybrid-benefit/> を参照してください。Azure ハイブリッド特典は、Azure で VM を実行するコストを基本コンピューティング料金に削減し、Azure ギャラリーからの追加の Windows Server ライセンスのコストを免除します。
- **Windows クライアントライセンス**。Windows 10 および Windows 11 ライセンスを Azure に持ち込むことができ、追加のライセンスなしで Azure で Windows 10 および Windows 11 VM を実行できます。詳細については、「[クライアントアクセスライセンスと管理ライセンス](https://www.microsoft.com/ja-jp/licensing/product-licensing/client-access-license)」を参照してください。
- Linux ライセンス: BYOS (bring-your-own-subscription) Linux ライセンスを使用すると、ソフトウェアの料金を支払う必要がありません。BYOS 料金には、コンピューティングハードウェア料金のみが含まれます。ライセンスには次の 2 種類があります。
- **RHEL_BYOS**: RHEL_BYOS タイプを正常に使用するには、Azure サブスクリプションで Red Hat Cloud Access を有効にします。
- **SLES_BYOS**: SLES の BYOS バージョンには、SUSE からのサポートが含まれています。
以下を参照してください。
- [Windows ライセンスの確認](#verify-the-windows-license)
- [Linux ライセンスの構成](#configure-the-linux-license)
ライセンスの種類とその利点を理解するには、次のドキュメントを参照してください。
- <https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.management.compute.models.virtualmachine.licensetype?view=azure-dotnet>
- <https://docs.microsoft.com/en-us/azure/virtual-machines/linux/azure-hybrid-benefit-linux>
- Azure Compute Gallery は、イメージを管理および共有するためのリポジトリです。これにより、組織全体でイメージを利用できるようになります。大規模な非永続マシンカタログを作成する際には、VDA OS ディスクのリセットを高速化できるため、イメージを Azure Compute Gallery に保存することをお勧めします。**[準備されたイメージを Azure Compute Gallery に配置]** を選択すると、**[Azure Compute Gallery 設定]** セクションが表示され、追加の Azure Compute Gallery 設定を指定できます。
- **仮想マシンとイメージレプリカの比率**。Azure が保持する仮想マシンとイメージレプリカの比率を指定できます。デフォルトでは、Azure は非永続マシン 40 台ごとに 1 つのイメージレプリカを保持します。永続マシンの場合、この数はデフォルトで 1,000 です。
- **最大レプリカ数**。Azure が保持するイメージレプリカの最大数を指定できます。デフォルトは 100 です。
- Azure Compute Gallery の詳細については、「[Azure Compute Gallery](#azure-compute-gallery)」を参照してください。
> **注:**
> > イメージを保存するために ACG にギャラリーが作成されます。このギャラリーは VM 作成のために MCS のみがアクセスでき、**[イメージの選択]** ページには表示されません。
-
[仮想マシン] ページで、作成する VM の数とマシンサイズを指定します。カタログ作成後、カタログを編集してマシンサイズを変更できます。
プライマリマシンサイズが最大容量に達した場合、セカンダリ VM を構成できるようになりました。セカンダリ VM サイズを構成するには、[セカンダリサイズ (オプション)] をクリックします。
- [セカンダリマシンサイズ] ウィンドウには、スポット VM タイプと通常 VM タイプ両方の VM が表示されます。最大 10 個のセカンダリマシンサイズを選択できます。10 個の VM が選択されると、リストされている他の VM はそれ以上選択できなくなります。
- [次へ] をクリックします。[セカンダリマシンサイズ] ブレードで、複数のマシンサイズを選択し、ドラッグアンドドロップして優先順位を変更できます。[完了] をクリックします。
選択されたマシンサイズは、セカンダリサイズ (オプション) に表示されます。必要に応じて、編集アイコンをクリックして編集してください。
注記:
- プライマリVMに一時ディスクサイズプロパティが設定されている場合、一時ディスクサイズプロパティが設定されているセカンダリVMのみがリストされます
- プライマリVMに一時ディスクサイズプロパティが設定されていない場合、一時ディスクサイズプロパティが設定されていないセカンダリVMがリストされます
- プライマリVMを変更した場合、セカンダリVMを再構成する必要があります
- マシンプロファイルは、セカンダリマシンサイズに必須です
- スポットをサポートしないセカンダリVMサイズは、以下のいずれかの条件が一致する場合にのみ表示されます。それ以外の場合は、すべてのセカンダリVMサイズが表示されます
- プライマリVMサイズがスポットをサポートしない
- プライマリVMサイズはスポットをサポートするが、MPがスポットをサポートしない
- マシンプロファイルがハイバネーションをサポートする
- 「NIC」ページにはAzure固有の情報は含まれていません。「マシンカタログの作成」の記事のガイダンスに従ってください。
-
「ディスク設定」ページで、ライトバックキャッシュを有効にするかどうかを選択します。MCSストレージ最適化機能が有効になっている場合、カタログ作成時に以下の設定を構成できます。
ライトバックキャッシュを有効にした後、以下を実行できます。
-
一時データのキャッシュに使用されるディスクとRAMのサイズを構成します。詳しくは、「一時データのキャッシュの構成」を参照してください。
-
ライトバックキャッシュディスクのストレージタイプを選択します。ライトバックキャッシュディスクには、以下のストレージオプションを使用できます。
- Premium SSD
- Standard SSD
- Standard HDD
注:
「ストレージとライセンスの種類」ページでストレージ冗長性としてZRSを選択した場合、ライトバックキャッシュディスクのストレージ冗長性は、デフォルトでZRSに設定されます。
-
プロビジョニングされたVMに対してライトバックキャッシュディスクを永続化するかどうかを選択します。オプションを有効にするには、[ライトバックキャッシュを有効にする] を選択します。デフォルトでは、[非永続ライトバックキャッシュディスクを使用する] が選択されています。
-
ライトバックキャッシュディスクの種類を選択します。
- 非永続ライトバックキャッシュディスクを使用する。選択した場合、ライトバックキャッシュディスクは電源サイクル中に削除されます。そこにリダイレクトされたデータはすべて失われます。VMの一時ディスクに十分なスペースがある場合、コストを削減するためにライトバックキャッシュディスクをホストするために使用されます。カタログ作成後、プロビジョニングされたマシンが一時ディスクを使用しているかどうかを確認できます。そのためには、カタログをクリックし、「テンプレートプロパティ」タブの情報を確認します。一時ディスクが使用されている場合、「非永続ライトバックキャッシュディスク」が表示され、その値ははい(VMの一時ディスクを使用)となります。そうでない場合、「非永続ライトバックキャッシュディスク」が表示され、その値はいいえ(VMの一時ディスクを使用しない)となります。
- 永続ライトバックキャッシュディスクを使用する。選択した場合、ライトバックキャッシュディスクはプロビジョニングされたVMに対して永続化されます。このオプションを有効にすると、ストレージコストが増加します。
注:
以下のすべての条件が満たされている場合、カタログはWBCディスクにAzure一時ディスクを自動的に使用します。
- MCSIOが有効になっている。
- WBCディスクが非永続である。
- VMサイズにWBCディスクに十分な大きさの一時ディスクが含まれている。
- WBCディスクにドライブ文字が指定されていない。
この機能は、カタログの作成と編集の両方に適用され、ストレージコストの削減に役立ちます。
-
電源サイクル中にVDAのVMとシステムディスクを保持するかどうかを選択します。
電源サイクル中にVMとシステムディスクを保持する。[ライトバックキャッシュを有効にする] を選択した場合に利用可能です。デフォルトでは、VMとシステムディスクはシャットダウン時に削除され、起動時に再作成されます。VMの再起動時間を短縮したい場合は、このオプションを選択します。このオプションを有効にすると、ストレージコストも増加することに注意してください。
-
[ストレージコストの節約を有効にする] を選択します。有効にすると、VMがシャットダウンしたときにストレージディスクをStandard HDDにダウングレードすることでストレージコストを節約できます。VMは再起動時に元の設定に戻ります。このオプションは、ストレージディスクとライトバックキャッシュディスクの両方に適用されます。または、PowerShellを使用することもできます。「VMシャットダウン時にストレージタイプを下位層に変更する」を参照してください。
注:
Microsoftは、VMシャットダウン中のストレージタイプの変更に制限を課しています。将来的にMicrosoftがストレージタイプの変更をブロックする可能性もあります。詳しくは、このMicrosoftの記事を参照してください。
-
このカタログ内のマシンのデータを暗号化するかどうか、およびどの暗号化キーを使用するかを選択します。顧客管理キー(CMK)を使用したサーバー側暗号化により、マネージドディスクレベルで暗号化を管理し、カタログ内のマシンのデータを保護できます。デフォルト設定は、マシンプロファイルまたはマスターイメージのいずれかから継承され、プロファイルが優先されます。
- CMKを使用するマシンプロファイルを使用している場合、[各マシンのデータを暗号化するために次のキーを使用する] オプションが自動的に選択され、マシンプロファイルのキーがデフォルトになります。
- プラットフォーム管理キー(PMK)を使用するマシンプロファイルを使用しており、マスターイメージがCMKで暗号化されている場合、[各マシンのデータを暗号化するために次のキーを使用する] オプションが自動的に選択され、マスターイメージのキーがデフォルトになります。
- マシンプロファイルを使用しておらず、マスターイメージがCMKで暗号化されている場合、[各マシンのデータを暗号化するために次のキーを使用する] オプションが自動的に選択され、マスターイメージのキーがデフォルトになります。
詳しくは、「Azureサーバー側暗号化」を参照してください。
-
-
「リソースグループ」ページで、リソースグループを作成するか、既存のグループを使用するかを選択します。
- リソースグループを作成することを選択した場合、[次へ] を選択します。
- 既存のリソースグループを使用することを選択した場合、[利用可能なプロビジョニングリソースグループ] リストからグループを選択します。
注:
カタログで作成するマシンを収容するのに十分なグループを選択してください。少なすぎるとメッセージが表示されます。後でカタログにVMを追加する予定がある場合は、必要最小限よりも多く選択することをお勧めします。カタログ作成後にリソースグループを追加することはできません。
詳しくは、「Azureリソースグループ」を参照してください。
-
-
「マシンID」ページで、IDタイプを選択し、このカタログ内のマシンのIDを構成します。VMをMicrosoft Entra参加済みとして選択した場合、それらをMicrosoft Entraセキュリティグループに追加できます。詳細な手順は次のとおりです。
- [IDタイプ] フィールドから、[Microsoft Entra参加済み] を選択します。
- [サービスアカウントの選択] をクリックし、[Microsoft Entraセキュリティグループ管理] 機能を持つサービスアカウントを選択します。
- [Microsoft Entraセキュリティグループ: 新規作成] をクリックします。
-
注: > > 選択したサービスアカウントに[Microsoft Entraセキュリティグループ管理] 機能がない場合、[新規作成] は淡色表示されます。
-
- グループ名を入力し、[作成] をクリックします。
-
- セキュリティグループを割り当てられたセキュリティグループに追加するには、[割り当てられたセキュリティグループにメンバーとして参加] を選択し、[グループの選択] をクリックして、参加する割り当てられたグループを選択します。
-
- VMのマシンアカウント命名スキームを入力します。
カタログ作成後、Citrix DaaS™は、選択したサービスアカウントを使用してAzureにアクセスし、セキュリティグループと、そのグループの動的メンバーシップルールを作成します。このルールに基づいて、このカタログで指定された命名スキームを持つVMは自動的にセキュリティグループに追加されます。
注:
カタログ作成後にMicrosoft Entraセキュリティグループの名前を変更するには、カタログを編集し、左側のナビゲーションから[Microsoft Entraセキュリティグループ] に移動します。Microsoft Entraセキュリティグループの名前には、次の文字を含めることはできません:
@ " \ / ; : # . * ? = < > | [ ] ( ) '
-
「ドメイン資格情報」ページで、「マシンカタログの作成」の記事のガイダンスに従って設定を完了します。
-
「概要」ページで、指定した設定を確認し、「完了」をクリックします。
ヒント:
このマシンカタログ内の仮想マシンの月額見積もりコストを、Azureの公開価格に基づいて表示できます。カタログをホストする接続がAzureで
Microsoft.Consumption/pricesheets/read権限を持っている場合、見積もりは組織の契約価格を使用して計算されます。詳細情報を表示するには、コスト見積もりを選択します。より正確な見積もりを得るには、日ごとの稼働時間、週ごとの稼働日数、および使用状況に基づいた節約オプションなどの設定を調整してください。
Azureテンプレートスペックの作成
AzureポータルでAzureテンプレートスペックを作成し、StudioおよびPowerShellコマンドで使用して、MCSマシンカタログを作成または更新できます。
-
既存のVMのAzureテンプレートスペックを作成するには:
-
- Azureポータルに移動します。リソースグループを選択し、VMとネットワークインターフェースを選択します。上部の「…」メニューから、「テンプレートのエクスポート」をクリックします。
-
- カタログプロビジョニング用のテンプレートスペックを作成する場合は、「パラメーターを含める」チェックボックスをオフにします。JSONファイルで
parametersおよびvariablesセクションが次のようになっていることを確認します。
"parameters": {}, "variables": {} <!--NeedCopy--> - カタログプロビジョニング用のテンプレートスペックを作成する場合は、「パラメーターを含める」チェックボックスをオフにします。JSONファイルで
- 「ダウンロード」をクリックして、テンプレートをJSONファイルとして保存します。
- Azureポータルで、「テンプレートスペック」を選択し、「テンプレートのインポート」をクリックします。
- コンピューターに保存されているマシンプロファイル(JSON形式)を参照してインポートします。
-
- 「名前」、「サブスクリプション」、「リソースグループ」、「場所」、「バージョン」を指定します。「次へ: テンプレートの編集」をクリックします。
-
- 「確認と作成」を作成し、テンプレートスペックを作成します。
- 「テンプレートスペック」ページで、作成したテンプレートスペックを確認します。テンプレートスペックをクリックします。左側のパネルで、「バージョン」をクリックします。
- 「新しいバージョンの作成」をクリックして、新しいバージョンを作成できます。新しいバージョン番号を指定し、現在のテンプレートスペックに変更を加え、「確認と作成」をクリックして、テンプレートスペックの新しいバージョンを作成します。
-
テンプレートスペックとテンプレートバージョンの情報は、次のPowerShellコマンドを使用して取得できます。
-
テンプレートスペックの情報を取得するには、以下を実行します。
- get-item XDHyp:\HostingUnits\East\machineprofile.folder\abc.resourcegroup\bggTemplateSpec.templatespec <!--NeedCopy--> -
テンプレートスペックバージョンの情報を取得するには、以下を実行します。
get-item XDHyp:\HostingUnits\East\machineprofile.folder\abc.resourcegroup\bggTemplateSpec.templatespec\bgg1.0.templatespecversion <!--NeedCopy-->
カタログの作成または更新におけるテンプレートスペックの使用
マシンプロファイルの入力としてテンプレートスペックを使用して、MCSマシンカタログを作成または更新できます。これを行うには、次の方法があります。
- Studioを使用します。StudioでAzure Resource Managerイメージを使用してマシンカタログを作成するを参照してください。
- PowerShellを使用します。PowerShellを使用してカタログを作成または更新する際にテンプレートスペックを使用するを参照してください。
マシンプロファイルをJSONファイルにエクスポート
カタログで使用されるマシンプロファイルをJSONファイルにエクスポートできます。この機能により、プロファイルをカスタマイズし、将来のプロビジョニングのためにARMテンプレートスペックとしてAzureにインポートできます。
-
- 「マシンカタログ」ページで、マシンカタログを選択して下部ペインに詳細を表示します。
- 「テンプレートプロパティ」タブをクリックしてマシンプロパティを表示し、「エクスポート」をクリックします。
- マシンプロファイルをJSONファイルとして保存するローカルコンピューター上のパスを指定します。
マシンプロファイルをAzureのARMテンプレートスペックとしてインポート
- Azureポータルで、「テンプレートスペック」を選択し、「テンプレートのインポート」をクリックします。
- コンピューターに保存されているマシンプロファイル(JSON形式)を参照してインポートします。
- インポートするテンプレートの「名前」、「サブスクリプション」、「リソースグループ」、「場所」、「バージョン」を指定し、「確認と作成」をクリックします。テンプレートが検証され、正常にインポートされます。インポートされたテンプレートは「テンプレートスペック」に表示されます。
マシンプロファイルを使用してマシンカタログを作成する際、プロファイルを選択するときにこのテンプレートが表示されます。詳細については、「カタログの作成または更新におけるテンプレートスペックの使用」を参照してください。
指定された可用性ゾーンへのマシンのプロビジョニング
- Azure環境の特定の可用性ゾーンにマシンをプロビジョニングできます。これはStudioまたはPowerShellを使用して実現できます。
注:
- ゾーンが指定されていない場合、MCSはAzureにリージョン内にマシンを配置させます。複数のゾーンが指定されている場合、MCSはそれらのゾーンにマシンをランダムに分散します。
- 「ストレージとライセンスの種類」ページでストレージ冗長性としてZRSを選択した場合、ゾーンの選択を解除し、AzureにVMの可用性ゾーンを管理させることを推奨する警告が表示されます。この警告は、可用性ゾーンを持つマシンプロファイルまたはホストグループを選択した場合にのみ表示されます。
Studioでの可用性ゾーンの構成
マシンカタログを作成する際、マシンをプロビジョニングする可用性ゾーンを指定できます。「仮想マシン」ページで、マシンを作成する1つ以上の可用性ゾーンを選択します。
- 可用性ゾーンが利用できない理由は2つあります。リージョンに可用性ゾーンがないか、選択したマシンサイズが利用できないかのいずれかです。
PowerShellコマンドを使用した構成については、「PowerShellを使用した可用性ゾーンの構成」を参照してください。
Azure エフェメラルディスク
Azure エフェメラルディスク を使用すると、キャッシュディスク、一時ディスク、または NVMe ディスクを再利用して、Azure 対応仮想マシンの OS ディスクを保存できます。この機能は、標準の HDD ディスクよりも高性能な SSD ディスクを必要とする Azure 環境で役立ちます。Azure エフェメラルディスクを使用してカタログを作成する方法については、「Azure エフェメラルディスクを使用したカタログの作成」を参照してください。
注記:
永続カタログはエフェメラル OS ディスクをサポートしていません。
エフェメラル OS ディスクでは、プロビジョニングスキームでマネージドディスクと Azure Compute Gallery を使用する必要があります。詳細については、「Azure Shared Image Gallery」を参照してください。
エフェメラル OS 一時ディスクの保存
エフェメラル OS ディスクを VM の一時ディスク、リソースディスク、または NVMe ディスクに保存するオプションがあります。この機能により、キャッシュがない、またはキャッシュが不十分な VM でエフェメラル OS ディスクを使用できます。このような VM には、Ddv4 のようなエフェメラル OS ディスクを保存するための一時ディスク、リソースディスク、または NVMe ディスクがあります。
次の点を考慮してください。
- エフェメラルディスクは、VM キャッシュディスク、VM の一時(リソース)ディスク、または NVMe ディスクのいずれかに保存されます。キャッシュディスクが OS ディスクのコンテンツを保持するのに十分な大きさでない限り、一時ディスクよりもキャッシュディスクが優先されます。
- 更新の場合、キャッシュディスクよりも大きく、一時ディスクよりも小さい新しいイメージは、エフェメラル OS ディスクを VM の一時ディスクに置き換えることになります。
Azure エフェメラルディスクと Machine Creation Services (MCS) ストレージ最適化 (MCS I/O)
- Azure エフェメラル OS ディスクと MCS I/O は同時に有効にできません。
- 重要な考慮事項は次のとおりです。
- エフェメラル OS ディスクと MCS I/O の両方を同時に有効にしたマシンカタログを作成することはできません。
- **マシンカタログセットアップ**ウィザードで、**ストレージとライセンスの種類**ページで**Azure エフェメラル OS ディスク**を選択した場合、**ディスク設定**ページに書き戻しキャッシュディスク設定のオプションは表示されません。


-
New-ProvSchemeまたはSet-ProvSchemeで true に設定された PowerShell パラメーター (UseWriteBackCacheおよびUseEphemeralOsDisk) は、適切なエラーメッセージとともに失敗します。 - 両方の機能が有効になっている既存のマシンカタログの場合でも、次のことができます。
- マシンカタログを更新する。
- VM を追加または削除する。
- マシンカタログを削除する。
Azure Compute Gallery
Azure Compute Gallery (旧 Shared Image Gallery) を、Azure の MCS プロビジョニング済みマシン用の公開イメージリポジトリとして使用します。公開イメージをギャラリーに保存することで、OS ディスクの作成とハイドレーションを高速化し、非永続 VM の起動時間とアプリケーション起動時間を改善できます。Azure Compute Gallery には、次の 3 つの要素が含まれています。
- ギャラリー:イメージはここに保存されます。MCS は、マシンカタログごとに 1 つのギャラリーを作成します。
- ギャラリーイメージ定義:この定義には、公開イメージに関する情報(オペレーティングシステムの種類と状態、Azure リージョン)が含まれます。MCS は、カタログ用に作成されたイメージごとに 1 つのイメージ定義を作成します。
- ギャラリーイメージバージョン:Azure Compute Gallery の各イメージには複数のバージョンがあり、各バージョンには異なるリージョンに複数のレプリカを持つことができます。各レプリカは、公開イメージの完全なコピーです。Citrix DaaS は、カタログ内のマシンの数、構成されたレプリカ比率、および構成されたレプリカの最大数に基づいて、カタログのリージョンに適切な数のレプリカを持つ Standard_LRS イメージバージョン(バージョン 1.0.0)を各イメージに対して 1 つ作成します。
注記:
Azure Compute Gallery の機能は、マネージドディスクとのみ互換性があります。レガシーマシンカタログでは利用できません。
詳細については、「Azure Shared Image Gallery の概要」を参照してください。
Azure Compute Gallery からのイメージへのアクセス
- マシンカタログの作成に使用するイメージを選択する際、Azure Compute Gallery で作成したイメージを選択できます。これらのイメージは、マシンカタログセットアップウィザードの**イメージ**ページのイメージリストに表示されます。
これらのイメージを表示するには、次の操作を行う必要があります。
- 1. Citrix DaaS をセットアップします。
- Azure Resource Manager に接続します。
- Azure portal で、リソースグループを作成します。詳細については、「ポータルを使用した Azure Shared Image Gallery の作成」を参照してください。
- リソースグループで、Azure Compute Gallery を作成します。
-
- Azure Compute Gallery で、イメージ定義を作成します。
-
- イメージ定義で、イメージバージョンを作成します。
-
Azure Compute Gallery の構成については、「Azure Compute Gallery の構成」を参照してください。
Azure 一時ディスクが書き戻しキャッシュディスクの対象となる条件
Azure 一時ディスクを書き戻しキャッシュディスクとして使用できるのは、次のすべての条件が満たされている場合のみです。
- Azure 一時ディスクは永続データには適していないため、書き戻しキャッシュディスクは非永続である必要があります。
- 選択した Azure VM サイズには、一時ディスクが含まれている必要があります。
- エフェメラル OS ディスクを有効にする必要はありません。
- 書き戻しキャッシュファイルを Azure 一時ディスクに配置することを受け入れる。
- Azure 一時ディスクのサイズは、(書き戻しキャッシュディスクサイズ + ページングファイル用の予約スペース + 1 GB のバッファースペース)の合計サイズよりも大きい必要があります。
非永続書き戻しキャッシュディスクのシナリオ
マシンカタログの作成時に一時ディスクがライトバックキャッシュに使用される3つの異なるシナリオを次の表に示します。
- | \*\*シナリオ\*\* | \*\*結果\*\* |
- | --- | --- |
- | 一時ディスクをライトバックキャッシュに使用するためのすべての条件が満たされている | WBCファイル`mcsdif.vhdx`は一時ディスクに配置されます。 |
| 一時ディスクのライトバックキャッシュ使用領域が不足している | VHDディスク「MCSWCDisk」が作成され、WBCファイルmcsdif.vhdxはこのディスクに配置されます。 |
一時ディスクのライトバックキャッシュ使用領域は十分だが、UseTempDiskForWBCがfalseに設定されている |
VHDディスク「MCSWCDisk」が作成され、WBCファイルmcsdif.vhdxはこのディスクに配置されます。 |
以下のPowerShellトピックを参照してください。
- [非永続ライトバックキャッシュディスクを持つマシンカタログの作成](#create-a-machine-catalog-with-non-persistent-write-back-cache-disk)
Azureサーバー側暗号化
- Citrix DaaSは、Azure Key Vaultを介したAzureマネージドディスクの顧客管理暗号化キーをサポートしています。このサポートにより、独自の暗号化キーを使用してマシンカタログのマネージドディスクを暗号化することで、組織およびコンプライアンス要件を管理できます。詳細については、「Azure Disk Storageのサーバー側暗号化」を参照してください。
マネージドディスクでこの機能を使用する場合:
-
ディスクの暗号化に使用されているキーを変更するには、
DiskEncryptionSet内の現在のキーを変更します。そのDiskEncryptionSetに関連付けられているすべてのリソースは、新しいキーで暗号化されるように変更されます。 -
キーを無効にするか削除すると、そのキーを使用しているディスクを持つVMは自動的にシャットダウンします。シャットダウン後、キーが再度有効になるか、新しいキーを割り当てない限り、VMは使用できません。そのキーを使用しているカタログは電源をオンにできず、VMを追加することもできません。
顧客管理暗号化キー使用時の重要な考慮事項
この機能を使用する際は、以下を考慮してください。
- 顧客管理キーに関連するすべてのリソース(Azure Key Vault、ディスク暗号化セット、VM、ディスク、スナップショット)は、同じサブスクリプションとリージョンに存在する必要があります。
- 顧客管理キーで暗号化されたディスク、スナップショット、およびイメージは、別のリソースグループやサブスクリプションに移動できません。
- リージョンごとのディスク暗号化セットの制限については、Microsoftサイトを参照してください。
注:
Azureサーバー側暗号化の構成については、「クイックスタート: Azureポータルを使用してKey Vaultを作成する」を参照してください。
Azure顧客管理暗号化キー
マシンカタログを作成する際、カタログにプロビジョニングされたマシン上のデータを暗号化するかどうかを選択できます。顧客管理暗号化キーを使用したサーバー側暗号化により、マネージドディスクレベルで暗号化を管理し、カタログ内のマシン上のデータを保護できます。ディスク暗号化セット(DES)は、顧客管理キーを表します。この機能を使用するには、まずAzureでDESを作成する必要があります。DESは次の形式です。
```
Test-ProvInventoryItem -HostingUnitName "we-vdi0101-d-vnet" -InventoryPath machineprofile.folder/vdi01-d-rg.resourcegroup/VDD-templ-spec.templatespec/1.5.templatespecversion
<!--NeedCopy--> ```
リストからDESを選択します。選択するDESは、リソースと同じサブスクリプションおよびリージョンにある必要があります。
暗号化キーを使用してカタログを作成し、後でAzureで対応するDESを無効にすると、カタログ内のマシンの電源をオンにしたり、マシンを追加したりできなくなります。
顧客管理キーを持つマシンカタログの作成を参照してください。
ホストでのAzureディスク暗号化
ホストでの暗号化機能を備えたMCSマシンカタログを作成できます。現在、MCSはこの機能に対してマシンプロファイルワークフローのみをサポートしています。マシンプロファイルの入力としてVMまたはテンプレート仕様を使用できます。
この暗号化方法は、Azureストレージを介してデータを暗号化しません。VMをホストするサーバーがデータを暗号化し、その後、暗号化されたデータがAzureストレージサーバーを介して流れます。したがって、この暗号化方法はデータをエンドツーエンドで暗号化します。
制限事項:
ホストでのAzureディスク暗号化は次のとおりです。
- すべてのAzureマシンサイズでサポートされているわけではありません
- Azureディスク暗号化と互換性がありません
詳細については、以下を参照してください。
マネージドディスクでの二重暗号化
二重暗号化機能を備えたマシンカタログを作成できます。この機能で作成されたカタログには、プラットフォームキーと顧客管理キーの両方でサーバー側が暗号化されたすべてのディスクが含まれます。Azure Key Vault、暗号化キー、およびディスク暗号化セット(DES)は、お客様が所有および管理します。
二重暗号化は、プラットフォーム側暗号化 (デフォルト) と顧客管理型暗号化 (CMEK) です。したがって、暗号化アルゴリズム、実装、または侵害されたキーに関連するリスクを懸念している高いセキュリティ要件を持つお客様は、この二重暗号化を選択できます。永続的なOSディスクとデータディスク、スナップショット、およびイメージはすべて、二重暗号化によって保存時に暗号化されます。
注:
- StudioおよびPowerShellコマンドを使用して、二重暗号化されたマシンカタログを作成および更新できます。
二重暗号化を使用してマシンカタログを作成または更新するために、マシンプロファイルに基づかないワークフローまたはマシンプロファイルに基づくワークフローを使用できます。
- マシンプロファイルに基づかないワークフローを使用してマシンカタログを作成する場合、保存されている
DiskEncryptionSetIdを再利用できます。- マシンプロファイルを使用する場合、VMまたはテンプレート仕様をマシンプロファイルの入力として使用できます。
制限事項
- 二重暗号化は、UltraディスクまたはPremium SSD v2ディスクではサポートされていません。
- 二重暗号化は、アンマネージドディスクではサポートされていません。
- カタログに関連付けられているディスク暗号化セットキーを無効にすると、カタログのVMは無効になります。
- 顧客管理キーに関連するすべてのリソース (Azure Key Vault、ディスク暗号化セット、VM、ディスク、およびスナップショット) は、同じサブスクリプションとリージョンにある必要があります。
- サブスクリプションごとにリージョンあたり最大50個のディスク暗号化セットのみを作成できます。
- 次のPowerShellトピックを参照してください。
- 二重暗号化を使用してマシンカタログを作成する
- 暗号化されていないカタログを二重暗号化を使用するように変換する
- カタログが二重暗号化されていることを確認する
Azureリソースグループ
Azureプロビジョニングリソースグループは、ユーザーにアプリケーションとデスクトップを提供するVMをプロビジョニングする方法を提供します。リソースグループを作成するか、既存のリソースグループを使用して、MCSマシンカタログにVMをプロビジョニングできます。複数のマシンカタログで同じリソースグループを使用できます。Azureリソースグループの詳細については、Microsoftドキュメントを参照してください。
Azureリソースグループの使用
Azureリソースグループあたりの仮想マシン、マネージドディスク、スナップショット、およびイメージの数に制限はありません。(AzureリソースグループあたりのVM数240台、マネージドディスク数800個という制限は削除されました。)
- フルスコープのサービスプリンシパルを使用してマシンカタログを作成する場合、MCSは1つのAzureリソースグループのみを作成し、そのグループをカタログに使用します。
- ナロースコープのサービスプリンシパルを使用してマシンカタログを作成する場合、カタログ用に空の、事前に作成されたAzureリソースグループを提供する必要があります。
Azure Marketplace
Citrix DaaSは、プラン情報を含むAzure上のマスターイメージを使用してマシンカタログを作成することをサポートしています。詳細については、Microsoft Azure Marketplaceを参照してください。
ヒント:
Azure Marketplaceで見つかる一部のイメージ(標準のWindows Serverイメージなど)には、プラン情報が付加されていません。Citrix DaaSの機能は有料イメージ向けです。
Azure Compute Galleryで作成されたイメージにAzureプラン情報が含まれていることを確認する
-
このセクションの手順を使用して、StudioでAzure Compute Galleryイメージを表示します。これらのイメージは、オプションでマスターイメージとして使用できます。イメージをAzure Compute Galleryに入れるには、ギャラリーでイメージ定義を作成します。
-

-
[公開オプション] ページで、購入プラン情報を確認します。
-
購入プラン情報フィールドは最初は空です。これらのフィールドに、イメージに使用された購入プラン情報を入力します。購入プラン情報を入力しないと、マシンカタログのプロセスが失敗する可能性があります。
-

-
購入プラン情報を確認した後、定義内にイメージバージョンを作成します。これはマスターイメージとして使用されます。[バージョンを追加] をクリックします。
-

-
[バージョン詳細] セクションで、イメージスナップショットまたはマネージドディスクをソースとして選択します。
-

Azure Monitor AgentがインストールされたカタログVMのプロビジョニング
-
Azure Monitorは、Azureおよびオンプレミス環境からのテレメトリデータを収集、分析、およびそれに基づいて行動するために使用できるサービスです。
-
Azure Monitor Agent (AMA) は、仮想マシンなどのコンピューティングリソースから監視データを収集し、そのデータをAzure Monitorに配信します。現在、イベントログ、Syslog、およびパフォーマンスメトリックの収集をサポートしており、Azure Monitor MetricsおよびAzure Monitor Logsデータソースに送信します。
監視データ内のVMを一意に識別して監視を有効にするには、AMAが拡張機能としてインストールされたMCSマシンカタログのVMをプロビジョニングできます。
要件
-
権限: 「Azure の権限について」に記載されている最小限の Azure 権限と、Azure Monitor を使用するための以下の権限があることを確認してください。
Microsoft.Compute/virtualMachines/extensions/readMicrosoft.Compute/virtualMachines/extensions/writeMicrosoft.Insights/DataCollectionRuleAssociations/ReadMicrosoft.Insights/dataCollectionRuleAssociations/writeMicrosoft.Insights/DataCollectionRules/Read
-
データ収集ルール: Azure portal でデータ収集ルールを設定します。DCR の設定については、「データ収集ルールの作成」を参照してください。DCR はプラットフォーム固有(Windows または Linux)です。必要なプラットフォームに応じて DCR を作成してください。
AMA は、データ収集ルール(DCR)を使用して、VM などのリソースと Azure Monitor メトリックや Azure Monitor ログなどのデータソース間のマッピングを管理します。
- デフォルトワークスペース: Azure portal でワークスペースを作成します。ワークスペースの作成については、「Log Analytics ワークスペースの作成」を参照してください。ログとデータを収集すると、その情報はワークスペースに保存されます。ワークスペースには一意のワークスペース ID とリソース ID があります。ワークスペース名は、特定のリソースグループに対して一意である必要があります。ワークスペースを作成したら、データソースとソリューションを設定して、データをワークスペースに保存します。
- モニター拡張機能のホワイトリスト登録:
AzureMonitorWindowsAgentおよびAzureMonitorLinuxAgent拡張機能は、Citrix が定義したホワイトリスト登録済み拡張機能です。ホワイトリスト登録済み拡張機能のリストを表示するには、PowerShell コマンドGet-ProvMetadataConfigurationを使用します。 -
マスターイメージ: Microsoft は、既存のマシンから新しいマシンを作成する前に、既存のマシンから拡張機能を削除することを推奨しています。拡張機能が削除されない場合、残存ファイルや予期せぬ動作につながる可能性があります。詳細については、「既存の VM から VM を再作成する場合」を参照してください。
- PowerShell を使用して AMA が有効なカタログを作成する方法については、「AMA が有効なカタログ VM のプロビジョニング」を参照してください。
- モニター拡張機能のホワイトリスト登録:
Azure 機密 VM
Azure 機密コンピューティング VM は、仮想デスクトップがメモリ内で暗号化され、使用中に保護されることを保証します。
MCS を使用して、Azure 機密 VM を含むカタログを作成できます。このようなカタログを作成するには、マシンプロファイルワークフローを使用する必要があります。VM と ARM テンプレート仕様の両方をマシンプロファイル入力として使用できます。
機密 VM タイプ Azure マスターイメージと機密 VM タイプ Azure マシンプロファイルを使用して準備済みイメージを作成し、この準備済みイメージを使用して MCS カタログを作成することもできます。
機密 VM の重要な考慮事項
機密 VM でサポートされる VM サイズとマシンカタログの作成に関する重要な考慮事項は次のとおりです。
-
機密 VM でサポートされている VM サイズを確認するには、「サイズ」を参照してください。
-
機密 VM を使用してマシンカタログを作成します。
- Studio および PowerShell コマンドを使用して、Azure 機密 VM を含むマシンカタログを作成できます。
- Azure 機密 VM を含むマシンカタログを作成するには、マシンプロファイルベースのワークフローを使用する必要があります。VM またはテンプレート仕様をマシンプロファイル入力として使用できます。
-
マスターイメージとマシンプロファイル入力は、両方とも同じ機密セキュリティタイプで有効にする必要があります。異なる Azure リソースは、機密 VM タイプを示すために異なるラベルを使用します。
Azure スナップショット、マネージドディスク、または仮想マシンの場合、セキュリティタイプは次のとおりです。
- ConfidentialVM_DiskEncryptedWithCustomerKey
- ConfidentialVM_DiskEncryptedWithPlatformKey
- ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey
Azure ARM テンプレート仕様バージョンの場合、セキュリティタイプは次のとおりです。
- VMGuestStateOnly: VM ゲスト状態のみが暗号化された機密 VM
- DiskWithVMGuestState: OS ディスクと VM ゲスト状態の両方がプラットフォームマネージドキーまたはカスタマーマネージドキーで暗号化された機密 VM。通常 OS ディスクとエフェメラル OS ディスクの両方を暗号化できます。
-
マネージドディスク、スナップショット、Azure Compute Gallery イメージ、VM、ARM テンプレート仕様などのさまざまなリソースタイプの機密 VM 情報を AdditionalData パラメーターを使用して取得できます。例:
PS C:\Users\username> (get-item XDHyp:\HostingUnits\mynetwork\image.folder\username-dev-testing-rg.resourcegroup\username-dev-tsvda.vm).AdditionalData <!--NeedCopy-->
-
追加データフィールドは次のとおりです。
- DiskSecurityType
- ConfidentialVMDiskEncryptionSetId
-
DiskSecurityProfiles
マシンサイズの機密コンピューティングプロパティを取得するには、次のコマンドを実行します:
(Get-Item -path "XDHyp:\Connections\my-connection-name\East US.region\serviceoffering.folder\abc.serviceoffering").AdditionalData -
追加データフィールドは
ConfidentialComputingTypeです。 - マスターイメージまたはマシンプロファイルを機密から非機密セキュリティタイプへ、または非機密から機密セキュリティタイプへ変更することはできません。
- 不正な構成に対しては、適切なエラーメッセージが表示されます。
マスターイメージとマシンプロファイルの準備
機密 VM のセットを作成する前に、それらのマスターイメージとマシンプロファイルを準備するために次の手順を実行します。
- Azure portal で、次のような特定の構成で機密 VM を作成します。
- セキュリティタイプ: 機密仮想マシン
- 機密 OS ディスク暗号化: 有効
- キー管理: プラットフォームマネージドキーによる機密ディスク暗号化
機密 VM の作成の詳細については、「この Microsoft の記事」を参照してください。
-
作成した VM でマスターイメージを準備します。作成した VM に必要なアプリケーションと VDA をインストールします。
注:
VHD を使用した機密 VM の作成はサポートされていません。代わりに、この目的のために Azure Compute Gallery、マネージドディスク、またはスナップショットを使用してください。
-
マシンプロファイルを作成するには、以下のいずれかの方法を使用します。
- ステップ 1 で作成した既存の VM が必要なマシンプロパティを備えている場合は、それを使用します。 - マシンプロファイルとして ARM テンプレート仕様を選択する場合は、必要に応じてテンプレート仕様を作成します。特に、*SecurityEncryptionType* や *diskEncryptionSet* (顧客管理キーの場合) など、機密 VM の要件を満たすパラメーターを構成します。詳細については、「[Azure テンプレート仕様の作成](#create-an-azure-template-spec)」を参照してください。 > **注:** > > - マスターイメージとマシンプロファイルが同じセキュリティキータイプであることを確認してください。 > - 顧客管理キーによる機密 OS ディスク暗号化を必要とする機密 VM を作成するには、マスターイメージとマシンプロファイルの両方でディスク暗号化セット ID が同一であることを確認してください。
MCS カタログを作成するために機密 VM タイプ準備済みイメージを使用する場合は、機密 VM タイプマスターイメージと機密 VM タイプマシンプロファイルを使用して準備済みイメージを作成します。準備済みイメージの作成については、「イメージ定義と初期イメージバージョンの作成」を参照してください。
Studio または PowerShell コマンドを使用した機密 VM の作成
機密 VM のセットを作成するには、マスターイメージと、目的の機密 VM から派生したマシンプロファイルを使用してマシンカタログを作成します。
Studio を使用してカタログを作成するには、「マシンカタログの作成」に記載されている手順に従います。以下の考慮事項に留意してください。
- **イメージ**ページで、機密 VM 作成のために準備したマスターイメージとマシンプロファイルを選択します。マシンプロファイルの選択は必須であり、選択したマスターイメージと同じセキュリティ暗号化タイプに一致するプロファイルのみが選択可能です。
- **仮想マシン**ページでは、機密 VM をサポートするマシンサイズのみが選択肢として表示されます。
- **ディスク設定**ページでは、選択したマシンプロファイルから継承されるため、ディスク暗号化セットを指定することはできません。
ブート整合性監視
VM でセキュアブートと仮想トラステッドプラットフォームモジュール (vTPM) が有効になっており、GuestAttestation 拡張機能がインストールされている場合、Microsoft Defender for Cloud は VM が正常に起動することをリモートで検証できます。この監視はブート整合性監視と呼ばれます。ブート整合性監視の詳細については、「ブート整合性監視の概要」を参照してください。
マシンプロファイル (VM またはテンプレート仕様) を使用して、MCS マシンカタログ VM (永続 VM および非永続 VM) のブート整合性監視を有効にできます。ブート整合性監視は、信頼された起動および機密 VM のみでサポートされています。
Set-ProvScheme を使用して、既存のカタログをブート整合性対応マシンプロファイルを指すように更新できます。カタログに追加された新しい VM は、整合性監視が有効になります。
- また、`Set-ProvVmUpdateTimeWindow`、`Set-ProvVm`、またはメンテナンスサイクルを使用して、カタログ内の既存の VM を更新することもできます。
以下を変換できます。
- 整合性監視なしの VM を整合性監視ありに。
- 整合性監視ありの VM を整合性監視なしに。
整合性監視が有効なマシンカタログの作成
以下の権限があることを確認してください。
- `Microsoft.Compute/virtualMachines/extensions/read`
- `Microsoft.Compute/virtualMachines/extensions/write`
- 整合性監視が有効な MCS マシンカタログを作成するには、次の手順を実行します。
-
GuestAttestation拡張機能が有効なマシンプロファイル (VM またはテンプレート仕様) の作成。 -
フル構成インターフェイスまたは PowerShell コマンドを使用して、マシンプロファイル入力を利用して MCS マシンカタログを作成します。
注:
Get-ItemPowerShell コマンドをAdditionalDataパラメーターとともに使用して、VM またはテンプレート仕様のGuestAttestationExtensionEnabledステータスを確認できます。 - カタログに VM を追加します。
GuestAttestation 拡張機能が有効なマシンプロファイルの作成
整合性監視が有効なマシンプロファイル入力として VM またはテンプレート仕様を作成します。これは、GuestAttestation 拡張機能がインストールされていることを意味します。
整合性監視が有効な VM を作成するには、次の手順を実行します。
- Azure portal にサインインします。
-
新しい VM を作成している場合:
- セキュリティの種類として、信頼された起動仮想マシンまたは機密仮想マシンを選択します。
-
セキュリティ機能の構成をクリックし、整合性監視チェックボックスを選択します。
注:
整合性監視には、セキュアブートと vTPM を有効にする必要があります。
- 概要ページで、セキュリティの種類セクションに移動し、セキュリティの種類が信頼された起動または機密仮想マシンであり、整合性監視が有効になっていることを確認します。
-
拡張機能 + アプリケーションページに移動し、
GuestAttestationがインストールされていることを確認します。
既存のVMの整合性監視を有効にするには、整合性監視を有効にする - Azure portalを参照してください。
GuestAttestation拡張機能がインストールされたテンプレートスペックを作成するには:
-
テンプレートスペックを使用してGuestAttestationをインストールできます。整合性監視を有効にする - テンプレートスペックを参照してください。
注:
このテンプレートスペックの設定の下で、アテステーションに使用するエンドポイントを構成できます。構成しない場合、Azureが構成するエンドポイントを決定します。
オンデマンド容量予約VMのカタログを作成
オンデマンド容量予約により、Azureリージョンまたは可用性ゾーンで任意の期間、コンピューティング容量を予約できます。Azureオンデマンド容量予約の詳細については、Microsoftドキュメントのオンデマンド容量予約を参照してください。
マシンプロファイル(VMまたはテンプレートスペック)を使用して、オンデマンド容量予約を持つAzure VMのMCSマシンカタログを作成できます。既存のマシンカタログと既存のVMを更新して、オンデマンド容量予約を持つように、または削除するようにすることもできます。
この機能は、永続的および非永続的なマシンカタログに適用されます。
制限事項
この機能は以下には適用されません。
- スポットVM
- ホストグループ
- 休止状態が有効なVM
- 制限事項の詳細については、Microsoftドキュメントの[制限事項と制約](https://learn.microsoft.com/ja-jp/azure/virtual-machines/capacity-reservation-overview#limitations-and-restrictions)を参照してください。
必要なアクセス許可
オンデマンド容量予約VMのカタログを作成するには、次のアクセス許可が必要です。
Microsoft.Compute/capacityReservationGroups/deploy/action
オンデマンド容量予約VMのカタログを作成する手順
- 1. マシンプロファイルソース(VMまたはARMテンプレートスペック)を作成します。VMまたはARMテンプレートスペックを作成するには、[VMを容量予約グループに関連付ける](https://learn.microsoft.com/ja-jp/azure/virtual-machines/capacity-reservation-associate-vm?tabs=api1%2Capi2%2Capi3)を参照してください。
- 1. 次のPowerShellコマンドを実行して、マシンプロファイルでオンデマンド容量予約が有効になっているかどうかを確認します。マシンプロファイルでオンデマンド容量予約が有効になっている場合、`capacityReservationGroup id`を取得します。
- 例:
- マシンプロファイルソースがVMの場合、次のコマンドを実行します。
```
(Get-Item "XDHyp:\HostingUnits\azure-res-conn2\machineprofile.folder\fifthcolumn.resourcegroup\demand-capacity.vm").AdditionalData
<!--NeedCopy--> ```
マシンプロファイルソースがテンプレートスペックの場合、次のコマンドを実行します。
```
(Get-Item "XDHyp:\HostingUnits\azure-res-conn2\machineprofile.folder\fifthcolumn.resourcegroup\fc-aeh-templatespec.templatespec\14.0.0-capacity-reservation.templatespecversion").AdditionalData
<!--NeedCopy--> ```
- 1. StudioまたはPowerShellコマンドを使用して、マシンプロファイルを使用してマシンカタログを作成します。
- `Set-ProvScheme`コマンドを使用してカタログを更新できます。PowerShellコマンド`Set-ProvVmUpdateTimeWindow`を使用して既存のVMを更新することもできます。マシンプロファイルは次回の電源投入時に更新されます。
入れ子になった仮想化
マスターVMを入れ子になった仮想化が有効になるように構成すると、そのマスターVMを使用して作成されたMCSマシンカタログ内のすべてのVMで、入れ子になった仮想化が有効になります。この機能は、永続的VMと非永続的VMの両方に適用されます。イメージの更新を通じて、既存のMCSマシンカタログと既存のVMを更新して、入れ子になった仮想化を有効にすることができます。
現在、Dv3およびEv3 VMサイズのみが入れ子になった仮想化をサポートしています。
入れ子になった仮想化の詳細については、MicrosoftブログのAzureでの入れ子になった仮想化を参照してください。
NVMe専用SKU
通常、汎用、メモリ最適化、コンピューティング最適化VMの旧世代(D/Ev5またはFv2以前)はSCSIをサポートしています。新世代(Da/Ea/Fav6以降)は通常、NVMeストレージインターフェイスのみをサポートしています。MCSは、Azure上の新しいVM SKUをサポートするために、NVMeストレージコントローラータイプをサポートしています。
- NVMeの詳細については、Microsoftドキュメントの[NVMeに関する一般的なFAQ](https://learn.microsoft.com/ja-jp/azure/virtual-machines/enable-nvme-faqs)を参照してください。
- 以下のサービスオファリングを使用してMCSカタログを作成できます。
- SCSIとNVMeの両方をサポートしている場合、「SCSIとNVMeの両方をサポートするサービスオファリングを使用したカタログの作成」を参照してください
- NVMeのみをサポートしている場合、「NVMeのみをサポートするサービスオファリングを使用したカタログの作成」を参照してください
制限事項
- NVMeをサポートするすべてのサービスオファリングは、Trusted Launchを同時にサポートしていません
- NVMeはGen 1 VMではサポートされていません
- 一部のOSイメージはNVMeをサポートしていない場合があります。その場合、Azure UIでNVMeオプションはグレー表示されます
SCSIとNVMeの両方をサポートするサービスオファリングを使用したカタログの作成
-
マスターイメージとして使用するVMを作成します。
- NVMeをサポートするマーケットプレイスイメージを使用します。NVMeをサポートするAzure Marketplaceイメージのリストは、「リモートNVMeでサポートされているOSイメージ」で確認できます。
-
New-ProvSchemeコマンドのMasterImageVMパラメーターで使用するために、VMのOSディスクのスナップショットを取得するか、マネージドディスクを直接使用します。マスターイメージがNVMeをサポートしているかどうかを以下のいずれかの方法で確認します。
-
Get-ItemのAdditionalDataフィールドにあるSupportedDiskControllerTypesを確認します。例:(get-item XDHyp:\HostingUnits\mynetwork\image.folder\abc.resourcegroup\deg-snapshot).AdditionalData <!--NeedCopy-->SupportedDiskControllerTypesはSCSI, NVMeである必要があります。 -
Azure CLIとPowerShellを使用します
-
- NVMeとSCSIの両方をサポートするサービスオファリングを使用します。
- NVMeが有効になっているマシンプロファイルとしてVMまたはテンプレート仕様を使用します。
DiskControllerTypeがNVMeに設定されている任意のVMを使用します。VMをマシンプロファイルとして直接使用するか、テンプレートをエクスポートしてテンプレート仕様をマシンプロファイルとして使用します。
NVMeのみをサポートするサービスオファリングを使用したカタログの作成
- マスターイメージとして使用するVMを作成します。NVMeをサポートするマーケットプレイスイメージを使用します。NVMeをサポートするAzure Marketplaceイメージのリストは、「リモートNVMeでサポートされているOSイメージ」で確認できます。
-
NVMeのみをサポートするサービスオファリングを使用します。
注:
サービスオファリングがNVMeをサポートしているため、カタログでNVMeを有効にするために
DiskControllerTypeがNVMeに設定されたマシンプロファイルは必要ありません。ただし、マシンプロファイルを使用する場合は、DiskControllerTypeがNVMeに設定されているか、空白または未指定である必要があります。
既存の永続VMの変更
-
VMが作成された後、NVMe構成を変更することはできません。永続VMのNVMe構成を変更する方法は、VMを再展開することです。そのロジックは次のとおりです。
-
- VMの現在の状態を保存します。
-
既存のVMの電源をオンにした後、VMが再展開を必要とするかどうかを検出します。
- 構成の変更がNVMeからNVMe、またはSCSIからSCSIである場合、VMの再展開は不要です
- 構成の変更がSCSIからNVMe、またはその逆である場合、VMを再展開して再作成します
PowerShellの使用
このセクションでは、PowerShellを使用して以下のタスクを実行する方法について詳しく説明します。
- PowerShellを使用したカタログの作成または更新でのテンプレート仕様の使用
- Azure VM拡張機能の有効化
- Trusted Launchを使用したマシンカタログ
- マシンプロファイルプロパティ値の使用
- PowerShellを使用した可用性ゾーンの構成
- Azure専用ホストでのVMのプロビジョニング
- ストレージタイプの構成
- ゾーン冗長ストレージの有効化
- マシンプロファイルからのVMおよびNICの診断設定のキャプチャ
- Azure Compute Galleryの構成
- VMごとの複数のNICを使用したカタログの作成または更新
- 非永続ライトバックキャッシュディスクを使用したマシンカタログの作成
- 永続ライトバックキャッシュディスクを使用したマシンカタログの作成
- MCSIOによる起動パフォーマンスの向上
- 顧客管理暗号化キーを使用したマシンカタログの作成
- ホストでの暗号化機能を使用したマシンカタログの作成
- 二重暗号化を使用したマシンカタログの作成
- ページファイルの場所の決定
- ページファイル設定の指定
- ページファイル設定の変更
- AMAが有効なカタログVMのプロビジョニング
- AzureスポットVMを使用したカタログの作成
- バックアップVMサイズの構成
- すべてのリソースへのタグのコピー
PowerShellを使用したカタログの作成または更新でのテンプレート仕様
-
マシンプロファイル入力としてテンプレート仕様を使用して、MCSマシンカタログを作成または更新できます。これを行うには、StudioまたはPowerShellコマンドを使用できます。
-
Studioインターフェースについては、StudioインターフェースでのAzure Resource Managerイメージを使用したマシンカタログの作成を参照してください。
PowerShellコマンドの使用:
- PowerShell ウィンドウを開きます。
-
asnp citrix*を実行します。 - カタログを作成または更新します。
- カタログを作成するには:
-
テンプレート仕様をマシンプロファイルの入力として使用して、
New-ProvSchemeコマンドを使用します。例:- New-ProvScheme -MasterImageVM "XDHyp:/HostingUnits/azure/image.folder/fgthj.resourcegroup/nab-ws-vda_OsDisk_1_xxxxxxxxxxa.manageddisk" - MachineProfile "XDHyp:/HostingUnits/azure/machineprofile.folder/fgthj.resourcegroup/test.templatespec/V1.templatespecversion" - -ProvisioningSchemeName <String> -HostingUnitName <String> - -IdentityPoolName <String> - \[-ServiceOffering <String>\]\[-CustomProperties <String>\] - [<CommonParameters>] <!--NeedCopy--> -
カタログの作成を完了します。
-
-
カタログを更新するには、テンプレート仕様をマシンプロファイルの入力として使用して、
Set-ProvSchemeコマンドを使用します。例:Set-ProvScheme -MasterImageVm 'XDHyp://Connections/Azure/East Us.region/vm.folder/MasterDisk.vm' MachineProfile 'XDHyp:/HostingUnits/azure/machineprofile.folder/fgthj.resourcegroup/testing.templatespec/V1.templatespecversion' - [-ProvisioningSchemeName] <String> - \[-CustomProperties <String>\]\[-ServiceOffering <String>\] [-PassThru] - [<CommonParameters>] <!--NeedCopy-->
- カタログを作成するには:
Azure VM 拡張機能を有効にする
- ARM テンプレート仕様を選択した後、Azure VM 拡張機能を使用するために、以下の PowerShell コマンドを実行します。
- サポートされている Azure VM 拡張機能のリストを表示するには:
Get-ProvMetadataConfiguration- VM 拡張機能を追加するには:
Add-ProvMetadataConfiguration。例:Add-ProvMetadataConfiguration -PluginType "AzureRM" -ConfigurationName "Extension" -ConfigurationValue "CustomScriptExtension"
以下のいずれかを追加しようとすると、コマンドはエラーメッセージを表示して失敗します。
- Citrix 定義の拡張機能
- 既存のユーザー定義拡張機能
- サポートされていない構成キー。現在、サポートされている構成キーは
Extensionです - リストから拡張機能を削除するには:
Remove-ProvMetadataConfiguration。追加した拡張機能を削除できます。
- VM 拡張機能を追加するには:
トラステッド起動によるマシンカタログ
トラステッド起動でマシンカタログを正常に作成するには、以下を使用します。
- トラステッド起動が有効なマスターイメージ。マシンプロファイルを使用する必要がありますが、マシンプロファイルがトラステッド起動に対応している必要はありません。トラステッド起動が有効なマスターイメージと、トラステッド起動が有効でないマシンプロファイルを使用すると、マスターイメージとマシンプロファイルのトラステッド起動構成の不一致により、警告メッセージが表示されます。
- トラステッド起動をサポートする VM サイズ。
- トラステッド起動をサポートする Windows VM バージョン。現在、Windows 10、Windows 11、Windows Server 2016、2019、および 2022 がトラステッド起動をサポートしています。
Citrix DaaS の提供インベントリアイテムを表示し、VM サイズがトラステッド起動をサポートしているかどうかを判断するには、以下のコマンドを実行します。
- PowerShell ウィンドウを開きます。
- Citrix 固有の PowerShell モジュールをロードするために、asnp citrix* を実行します。
-
以下のコマンドを実行します。
$s = (ls XDHyp:\HostingUnits\<name of hosting unit>\serviceoffering.folder\"<VM size>".serviceoffering) <!--NeedCopy--> -
$s | select -ExpandProperty Additionaldataを実行します。 -
SupportsTrustedLaunch属性の値を確認します。- `SupportsTrustedLaunch` が **True** の場合、VM サイズはトラステッド起動をサポートしています。 - `SupportsTrustedLaunch` が **False** の場合、VM サイズはトラステッド起動をサポートしていません。
Azure の PowerShell に従って、トラステッド起動をサポートする VM サイズを判断するために、以下のコマンドを使用できます。
(Get-AzComputeResourceSku | where {$_.Locations.Contains($region) -and ($_.Name -eq "<VM size>") })[0].Capabilities
<!--NeedCopy-->
以下は、Azure PowerShell コマンドを実行した後、VM サイズがトラステッド起動をサポートしているかどうかを説明する例です。
- *例 1*: Azure VM が第 1 世代のみをサポートしている場合、その VM はトラステッド起動をサポートしていません。したがって、Azure PowerShell コマンドを実行しても `TrustedLaunchDisabled` 機能は表示されません。
- *例 2*: Azure VM が第 2 世代のみをサポートしており、`TrustedLaunchDisabled` 機能が **True** の場合、第 2 世代の VM サイズはトラステッド起動でサポートされません。
- *例 3*: Azure VM が第 2 世代のみをサポートしており、PowerShell コマンドを実行しても `TrustedLaunchDisabled` 機能が表示されない場合、第 2 世代の VM サイズはトラステッド起動でサポートされます。
Azure 仮想マシンのトラステッド起動の詳細については、Microsoft ドキュメント「Azure 仮想マシンのトラステッド起動」を参照してください。
トラステッド起動によるマシンカタログの作成
- トラステッド起動が有効なマスターイメージを作成します。Microsoft ドキュメント「トラステッド起動 VM イメージ」を参照してください。
- セキュリティの種類を トラステッド起動仮想マシン として VM またはテンプレート仕様を作成します。VM またはテンプレート仕様の作成の詳細については、Microsoft ドキュメント「トラステッド起動 VM の展開」を参照してください。
-
Studio または PowerShell コマンドを使用してマシンカタログを作成します。
- Studio を使用する場合は、「Studio で Azure Resource Manager イメージを使用してマシンカタログを作成する」を参照してください。
-
PowerShell コマンドを使用する場合は、VM またはテンプレート仕様をマシンプロファイルの入力として使用して、
New-ProvSchemeコマンドを使用します。VM をマシンプロファイルの入力とする
New-ProvSchemeの例:New-ProvScheme -CleanOnBoot -HostingUnitName "name" -IdentityPoolName "name" -InitialBatchSizeHint 1 -MasterImageVM "XDHyp:/HostingUnits/azure/image.folder/fgthj.resourcegroup/nab-ws-vda_OsDisk_1_xxxxxxxxxxa.manageddisk" -MachineProfile "XDHyp:\HostingUnits\<adnet>\machineprofile.folder\<def.resourcegroup>\<machine profile vm.vm>" -ProvisioningSchemeName <String> -HostingUnitName <String> -IdentityPoolName <String> [-ServiceOffering <String>][-CustomProperties <String>] [<CommonParameters>] <!--NeedCopy-->
-
テンプレート仕様をマシンプロファイルの入力とする
New-ProvSchemeの例:``` - New-ProvScheme -CleanOnBoot -HostingUnitName "name" -IdentityPoolName "name" -InitialBatchSizeHint 1 - -MasterImageVM "XDHyp:/HostingUnits/azure/image.folder/fgthj.resourcegroup/nab-ws-vda_OsDisk_1_xxxxxxxxxxa.manageddisk" MachineProfile "XDHyp:/HostingUnits/azure/machineprofile.folder/fgthj.resourcegroup/test.templatespec/V1.templatespecversion" -ProvisioningSchemeName <String> -HostingUnitName <String> -IdentityPoolName <String> \[-ServiceOffering <String>\]\[-CustomProperties <String>\] [<CommonParameters>] <!--NeedCopy--> ```
トラステッド起動によるマシンカタログの更新
永続マシンカタログと非永続マシンカタログの両方を更新できます。
永続マシンカタログの場合:

非永続マシンカタログの場合:

信頼された起動でマシンカタログを作成する際のエラー
信頼された起動でマシンカタログを作成する際に、以下のシナリオで適切なエラーが発生します。
| シナリオ | エラー |
|---|---|
| アンマネージドカタログの作成中にマシンプロファイルを選択した場合 | MachineProfileNotSupportedForUnmanagedCatalog |
| マスターイメージとしてアンマネージドディスクを使用するカタログの作成中に、信頼された起動をサポートするマシンプロファイルを選択した場合 | SecurityTypeNotSupportedForUnmanagedDisk |
| マスターイメージのセキュリティタイプとは異なるセキュリティタイプを持つマシンプロファイルを選択した場合 | SecurityTypeConflictBetweenMasterImageAndMachineProfile |
| 信頼された起動をサポートしないVMサイズを選択し、信頼された起動をサポートするマスターイメージを使用してカタログを作成した場合 | MachineSizeNotSupportTrustedLaunch |
マシンプロファイルプロパティ値の使用
マシンカタログは、カスタムプロパティで定義されている以下のプロパティを使用します。
- アベイラビリティゾーン
- 専用ホストグループID
- ディスク暗号化セットID
- OSタイプ
- ライセンスタイプ
- ストレージタイプ
これらのカスタムプロパティが明示的に定義されていない場合、プロパティ値は、マシンプロファイルとして使用されるARMテンプレート仕様またはVMのいずれかから設定されます。さらに、ServiceOfferingが指定されていない場合、マシンプロファイルから設定されます。
注:
マシンプロファイルから一部のプロパティが欠落しており、カスタムプロパティで定義されていない場合、該当する場所ではプロパティのデフォルト値が適用されます。
以下のセクションでは、CustomPropertiesにすべてのプロパティが定義されているか、または値がMachineProfileから派生している場合のNew-ProvSchemeおよびSet-ProvSchemeにおけるいくつかのシナリオについて説明します。
- New-ProvSchemeシナリオ
- MachineProfileにすべてのプロパティがあり、CustomPropertiesが定義されていない場合。例:
`New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpA.vm"`
カタログのカスタムプロパティとして以下の値が設定されます。
```
- Get-ProvScheme | select CustomProperties
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <Property xsi:type="StringProperty" Name="StorageAccountType" Value="<mpA-value>"/>
- <Property xsi:type="StringProperty" Name="OSType" Value="<mpA-value>"/>
- <Property xsi:type="StringProperty" Name="LicenseType" Value="<mpA-value>"/>
<Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="<mpA-value>"/>
- <Property xsi:type="StringProperty" Name="DedicatedHostGroupId" Value="<mpA-value>"/>
- <Property xsi:type="StringProperty" Name="Zones" Value="<mpA-value>"/>
- </CustomProperties>
<!--NeedCopy--> ```
- MachineProfileに一部のプロパティがあり、CustomPropertiesが定義されていない場合。例:MachineProfileにはLicenseTypeとOsTypeのみがある場合。
`New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpA.vm"`
カタログのカスタムプロパティとして以下の値が設定されます。
```
Get-ProvScheme | select CustomProperties
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="OSType" Value="<mpA-value>"/>
<Property xsi:type="StringProperty" Name="LicenseType" Value="<mpA-value>"/>
</CustomProperties>
<!--NeedCopy--> ```
- MachineProfileとCustomPropertiesの両方がすべてのプロパティを定義している場合。例:
`New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpA.vm" -CustomProperties $CustomPropertiesA`
カスタムプロパティが優先されます。カタログのカスタムプロパティとして以下の値が設定されます。
```
Get-ProvScheme | select CustomProperties
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="<CustomPropertiesA-value>"/>
<Property xsi:type="StringProperty" Name="OSType" Value="<CustomPropertiesA-value>"/>
<Property xsi:type="StringProperty" Name="LicenseType" Value="<CustomPropertiesA-value>"/>
<Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="<CustomPropertiesA-value>"/>
<Property xsi:type="StringProperty" Name="DedicatedHostGroupId" Value="<CustomPropertiesA-value>"/>
<Property xsi:type="StringProperty" Name="Zones" Value="<CustomPropertiesA-value>"/>
</CustomProperties>
<!--NeedCopy--> ```
- MachineProfileで一部のプロパティが定義され、CustomPropertiesで一部のプロパティが定義されている場合。例:
- CustomPropertiesはLicenseTypeとStorageAccountTypeを定義
- MachineProfileはLicenseType、OsType、およびZonesを定義
`New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpA.vm" -CustomProperties $CustomPropertiesA`
カタログには、以下の値がカスタムプロパティとして設定されます。
```
Get-ProvScheme | select CustomProperties
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="<CustomPropertiesA-value>"/>
<Property xsi:type="StringProperty" Name="OSType" Value="<mpA-value>"/>
<Property xsi:type="StringProperty" Name="LicenseType" Value="<CustomPropertiesA-value>"/>
<Property xsi:type="StringProperty" Name="Zones" Value="<mpA-value>"/>
</CustomProperties>
<!--NeedCopy--> ```
- 一部のプロパティはMachineProfileで定義され、一部のプロパティはCustomPropertiesで定義されます。さらに、ServiceOfferingは定義されていません。例:
- CustomPropertiesによるStorageTypeの定義
- MachineProfileによるLicenseTypeの定義
```
New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mp.vm"
-ServiceOffering "XDHyp:\HostingUnits\azureunit\serviceoffering.folder\<explicit-machine-size>.serviceoffering"
<!--NeedCopy--> ```
カタログには、以下の値がカスタムプロパティとして設定されます。
```
Get-ProvScheme | select ServiceOffering
serviceoffering.folder\<explicit-machine-size>.serviceoffering
Get-ProvScheme | select CustomProperties
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="explicit-storage-type"/>
<Property xsi:type="StringProperty" Name="LicenseType" Value="value-from-machineprofile"/>
</CustomProperties>
<!--NeedCopy--> ```
- OsTypeがCustomPropertiesにもMachineProfileにもない場合:
- 値はマスターイメージから読み取られます。
- マスターイメージがアンマネージドディスクの場合、OsTypeはWindowsに設定されます。例:
`New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpA.vm" -MasterImageVM "XDHyp:\HostingUnits\azureunit\image.folder\linux-master-image.manageddisk"`
マスターイメージからの値は、この場合Linuxとしてカスタムプロパティに書き込まれます。
```
- Get-ProvScheme | select CustomProperties
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="OSType" Value="Linux"/>
</CustomProperties>
<!--NeedCopy--> ```
- Set-ProvSchemeのシナリオ
- 既存のカタログ:
- `StorageAccountType`とOsTypeのCustomProperties
- ゾーンを定義するMachineProfile `mpA.vm`
- 更新:
- StorageAccountTypeを定義するMachineProfile mpB.vm
- LicenseTypeとOsTypeを定義する新しいカスタムプロパティセット $CustomPropertiesB
`Set-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpB.vm" -CustomProperties $CustomPropertiesB`
カタログには、以下の値がカスタムプロパティとして設定されます。
```
Get-ProvScheme | select CustomProperties
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="<mpB-value>"/>
<Property xsi:type="StringProperty" Name="OSType" Value="<CustomPropertiesB-value>"/>
<Property xsi:type="StringProperty" Name="LicenseType" Value="<CustomPropertiesB-value>"/>
</CustomProperties>
<!--NeedCopy--> ```
- 既存のカタログ:
- `StorageAccountType`とOsTypeのCustomProperties
- StorageAccountTypeとLicenseTypeを定義するMachineProfile `mpA.vm`
- 更新:
- StorageAccountTypeとOsTypeを定義する新しいカスタムプロパティセット $CustomPropertiesB
`Set-ProvScheme -CustomProperties $CustomPropertiesB`
カタログには、以下の値がカスタムプロパティとして設定されます。
```
Get-ProvScheme | select CustomProperties
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="<CustomPropertiesB-value>"/>
<Property xsi:type="StringProperty" Name="OSType" Value="<CustomPropertiesB-value>"/>
<Property xsi:type="StringProperty" Name="LicenseType" Value="<mp-A-value>"/>
</CustomProperties>
<!--NeedCopy--> ```
- 既存のカタログ:
- `StorageAccountType`とOsTypeのCustomProperties
- ゾーンを定義するMachineProfile `mpA.vm`
- 更新:
- StorageAccountTypeとLicenseTypeを定義するMachineProfile mpB.vm
- `ServiceOffering`は指定されていません
`Set-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpB.vm"`
カタログには、以下の値がカスタムプロパティとして設定されます。
```
Get-ProvScheme | select ServiceOffering
serviceoffering.folder\<value-from-machineprofile>.serviceoffering
Get-ProvScheme | select CustomProperties
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="<mpB-value>"/>
<Property xsi:type="StringProperty" Name="OSType" Value="<prior-CustomProperties-value>"/>
<Property xsi:type="StringProperty" Name="LicenseType" Value="<mpB-value>"/>
</CustomProperties>
<!--NeedCopy--> ```
PowerShellを使用したアベイラビリティゾーンの構成
PowerShell を使用して、Get-Item コマンドレットで Citrix DaaS の提供インベントリアイテムを表示できます。たとえば、Eastern US region の Standard_B1ls サービス提供を表示するには、次のようにします。
$serviceOffering = Get-Item -path "XDHyp:\Connections\my-connection-name\East US.region\serviceoffering.folder\Standard_B1ls.serviceoffering"
<!--NeedCopy-->
ゾーンを表示するには、アイテムの AdditionalData パラメーターを使用します。
$serviceOffering.AdditionalData
可用性ゾーンが指定されていない場合、マシンのプロビジョニング方法に変更はありません。
PowerShell を介して可用性ゾーンを構成するには、New-ProvScheme 操作で利用できる Zones カスタムプロパティを使用します。Zones プロパティは、マシンをプロビジョニングする可用性ゾーンのリストを定義します。これらのゾーンには、1 つ以上の可用性ゾーンを含めることができます。たとえば、ゾーン 1 と 3 の場合は <Property xsi:type="StringProperty" Name="Zones" Value="1, 3"/> となります。
プロビジョニングスキームのゾーンを更新するには、Set-ProvScheme コマンドを使用します。
無効なゾーンが指定された場合、プロビジョニングスキームは更新されず、無効なコマンドを修正する方法を示すエラーメッセージが表示されます。
ヒント:
無効なカスタムプロパティを指定した場合、プロビジョニングスキームは更新されず、関連するエラーメッセージが表示されます。
ホストグループと Azure 可用性ゾーンを同時に使用した場合の結果
カスタムプロパティで指定された可用性ゾーンとホストグループのゾーンに基づいて、マシンカタログの作成が成功するかどうかを評価するための事前チェックがあります。可用性ゾーンのカスタムプロパティがホストグループのゾーンと一致しない場合、カタログの作成は失敗します。
PowerShell を介した可用性ゾーンの構成については、「PowerShell を介した可用性ゾーンの構成」を参照してください。
Azure 専用ホストの詳細については、「Azure 専用ホスト」を参照してください。
次の表は、可用性ゾーンとホストグループゾーンのさまざまな組み合わせと、それらがマシンカタログの作成の成功または失敗にどのように影響するかを示しています。
| ホストグループゾーン | カスタムプロパティの可用性ゾーン | マシンカタログ作成の結果 |
|---|---|---|
| 指定済み。例: ホストグループがゾーン 1 にある場合 | 未指定 | 成功。マシンはホストグループのゾーンに作成されます |
| 指定済み。例: ホストグループがゾーン 1 にある場合 | ホストグループゾーンと同じゾーン。例: カスタムプロパティのゾーンが 1 に設定されている場合 | 成功。マシンはゾーン 1 に作成されます |
| 指定済み。例: ホストグループがゾーン 1 にある場合 | ホストグループゾーンとは異なるゾーン。例: カスタムプロパティのゾーンが 2 に設定されている場合 | 指定された可用性ゾーンとホストグループのゾーンが一致しないため、事前チェック中にカタログ作成が関連エラーで失敗します |
| 指定済み。例: ホストグループがゾーン 1 にある場合 | 複数のゾーンが指定されている。例: カスタムプロパティのゾーンが 1,2 または 2,3 に設定されている場合 | 指定された可用性ゾーンとホストグループのゾーンが一致しないため、事前チェック中にカタログ作成が関連エラーで失敗します |
未指定。例: ホストグループのゾーンが None の場合 |
未指定 | 指定された可用性ゾーンとホストグループのゾーンが一致するため (つまり、ゾーンなし)、カタログ作成は成功します。マシンはどのゾーンにも作成されません |
未指定。例: ホストグループのゾーンが None の場合 |
指定済み。例: カスタムプロパティのゾーンが 1 つまたは複数のゾーンに設定されている場合 | 指定された可用性ゾーンとホストグループのゾーンが一致しないため、事前チェック中にカタログ作成が関連エラーで失敗します |
Azure 専用ホストへの VM のプロビジョニング
MCS を使用して、Azure 専用ホストに VM をプロビジョニングできます。Azure 専用ホストに VM をプロビジョニングする前に、次の手順を実行します。
- ホストグループを作成します。
- そのホストグループにホストを作成します。
- カタログと仮想マシンを作成するのに十分なホスト容量が予約されていることを確認します。
次の PowerShell スクリプトを使用して、ホストテナンシーが定義されたマシンのカタログを作成できます。
New-ProvScheme <otherParameters> -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="HostGroupId" Value="myResourceGroup/myHostGroup" />
...other Custom Properties...
</CustomProperties>
<!--NeedCopy-->
MCS を使用して Azure 専用ホストに仮想マシンをプロビジョニングする際は、次の点を考慮してください。
- *専用ホスト*はカタログプロパティであり、カタログ作成後に変更することはできません。現在、Azure では専用テナンシーはサポートされていません。
- `HostGroupId` パラメーターを使用する場合、ホスティングユニットのリージョンに事前に構成された Azure ホストグループが必要です。
- Azure の自動配置が必要です。この機能は、ホストグループに関連付けられたサブスクリプションをオンボードする要求を行います。詳細については、「[VM Scale Set on Azure Dedicated Hosts - Public Preview](https://forms.microsoft.com/Pages/ResponsePage.aspx?id=DQSIkWdsW0yxEjajBLZtrQAAAAAAAAAAAAEUB0xASRFUMVNXMlZVSFcyRE00QzBMRURWODVEVVVBWS4u)」を参照してください。自動配置が有効になっていない場合、MCS はカタログ作成中にエラーをスローします。
ストレージタイプの構成
MCS を使用する Azure 環境で、仮想マシンに異なるストレージタイプを選択できます。ターゲット VM の場合、MCS は以下をサポートします。
- OS ディスク: Premium SSD、SSD、または HDD
- ライトバックキャッシュディスク: Premium SSD、SSD、または HDD
- これらのストレージタイプを使用する際は、次の点を考慮してください。
- VM が選択したストレージタイプをサポートしていることを確認します。
- 構成で Azure エフェメラルディスクを使用している場合、ライトバックキャッシュディスク設定のオプションは表示されません。
ヒント:
StorageTypeは OS タイプとストレージアカウント用に構成されます。WBCDiskStorageTypeはライトバックキャッシュストレージタイプ用に構成されます。通常のカタログの場合、StorageTypeが必須です。WBCDiskStorageTypeが構成されていない場合、StorageTypeがWBCDiskStorageTypeのデフォルトとして使用されます。
WBCDiskStorageType が構成されていない場合、StorageType が WBCDiskStorageType のデフォルトとして使用されます。
VMのストレージタイプ構成
VMのストレージタイプを構成するには、New-ProvSchemeでStorageTypeパラメーターを使用します。既存のカタログのStorageTypeパラメーターの値をサポートされているストレージタイプのいずれかに更新するには、Set-ProvSchemeコマンドを使用します。
以下は、プロビジョニングスキームにおけるCustomPropertiesパラメーターの例です。
Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
</CustomProperties>'
<!--NeedCopy-->
ゾーン冗長ストレージの有効化
カタログ作成時にゾーン冗長ストレージを選択できます。これにより、Azureマネージドディスクが複数のアベイラビリティゾーン間で同期的にレプリケートされ、1つのゾーンでの障害から他のゾーンの冗長性を利用して回復できます。
ストレージタイプのカスタムプロパティでPremium_ZRSとStandardSSD_ZRSを指定できます。ZRSストレージは、既存のカスタムプロパティを使用するか、MachineProfileテンプレートを介して設定できます。ZRSストレージは、-StartsNowおよび-DurationInMinutes -1パラメーターを指定したSet-ProvVMUpdateTimeWindowコマンドでもサポートされています。既存のVMをLRSからZRSストレージに変更できます。
注:
StartsNowは、スケジュールされた開始時刻が現在の時刻であることを示します。
DurationInMinutesに負の数(例: –1)を指定すると、スケジュールの時間枠に上限がないことを示します。
- **制限事項:**
- マネージドディスクのみをサポート
- プレミアムおよび標準ソリッドステートドライブ(SSD)のみをサポート
-
StorageTypeAtShutdownではサポートされません - 特定のリージョンでのみ利用可能
- 大規模なZRSディスク作成時にAzureのパフォーマンスが低下します。そのため、最初の電源投入時には、マシンを小規模なバッチ(一度に300台未満)で起動してください
-
ディスクストレージタイプとしてのゾーン冗長ストレージの設定
初期カタログ作成時にゾーン冗長ストレージを選択するか、既存のカタログでストレージタイプを更新できます。
PowerShellコマンドを使用したゾーン冗長ストレージの選択
New-ProvScheme PowerShellコマンドを使用してAzureで新しいカタログを作成する場合、StorageAccountTypeの値としてStandard_ZRSを使用します。
例:
- <Property xsi:type="StringProperty" Name="StorageAccountType" Value="StandardSSD_ZRS" />
<!--NeedCopy-->
この値を設定すると、それが適切に使用できるかどうかを判断する動的APIによって検証されます。ZRSの使用がカタログに対して無効な場合、以下の例外が発生する可能性があります。
-
StorageTypeAtShutdownNotSupportedForZrsDisks:
StorageTypeAtShutdownカスタムプロパティはZRSストレージでは使用できません。 - StorageAccountTypeNotSupportedInRegion: この例外は、ZRSをサポートしていないAzureリージョンでZRSストレージを使用しようとすると発生します。
- ZrsRequiresManagedDisks: ゾーン冗長ストレージはマネージドディスクでのみ使用できます。
以下のカスタムプロパティを使用して、ディスクストレージタイプを設定できます。
StorageTypeWBCDiskStorageTypeIdentityDiskStorageType
注:
カタログ作成時、カスタムプロパティが設定されていない場合は、マシンプロファイルのOSディスクの
StorageTypeが使用されます。
マシンプロファイルからのVMおよびNICの診断設定のキャプチャ
- マシンカタログの作成時、既存のマシンカタログの更新時、および既存のVMの更新時に、マシンプロファイルからVMおよびNICの診断設定をキャプチャできます。
VMまたはテンプレート仕様をマシンプロファイルソースとして作成できます。
主要な手順
-
- Azureで必須IDを設定します。これらのIDはテンプレート仕様で指定する必要があります。
- ストレージアカウント
- Log Analyticsワークスペース
- 標準ティア価格のイベントハブ名前空間
- マシンプロファイルソースを作成します。
- 新しいマシンカタログを作成するか、既存のカタログを更新するか、既存のVMを更新します。
Azureでの必須IDの設定
Azureで以下のいずれかを設定します。
- ストレージアカウント
- Log Analytics ワークスペース
- Standard レベルの価格設定を持つイベントハブネームスペース
ストレージアカウントの設定
Azure で標準ストレージアカウントを作成します。テンプレート仕様では、ストレージアカウントの完全な resourceId を storageAccountId として指定します。
VM がストレージアカウントにデータをログするように設定されると、データは insights-metrics-pt1m コンテナーの下で見つけることができます。
Log Analytics ワークスペースの設定
Log Analytics ワークスペースを作成します。テンプレート仕様では、Log Analytics ワークスペースの完全な resourceId を workspaceId として指定します。
VM がワークスペースにデータをログするように設定されると、Azure の [ログ] でデータをクエリできます。Azure の [ログ] で次のコマンドを実行すると、リソースによってログに記録されたすべてのメトリックの数を表示できます。
`AzureMetrics
| summarize Count=count() by ResourceId` |
イベントハブの設定
Azure ポータルでイベントハブを設定するには、次の手順を実行します。
- Standard レベルの価格設定でイベントハブネームスペースを作成します
- ネームスペースの下にイベントハブを作成します
- イベントハブの下にある [キャプチャ] に移動します。Avro 出力タイプでキャプチャするようにトグルをオンにします
- 既存のストレージアカウントに新しいコンテナーを作成して、ログをキャプチャします
-
- テンプレート仕様で、
eventHubAuthorizationRuleIdを次の形式で指定します:/subscriptions/093f4c12-704b-4b1d-8339-f339e7557f60/resourcegroups/matspo/providers/Microsoft.EventHub/namespaces/matspoeventhub/authorizationrules/RootManageSharedAccessKey
- テンプレート仕様で、
-
- イベントハブの名前を指定します
- VM がイベントハブにデータをログするように設定されると、データは構成されたストレージコンテナーにキャプチャされます。
マシンプロファイルソースの作成
VM またはテンプレート仕様をマシンプロファイルソースとして作成できます。
診断設定を持つ VM ベースのマシンプロファイルの作成
VM をマシンプロファイルとして作成する場合は、まずテンプレート VM 自体に診断設定を設定します。Microsoft ドキュメントの Azure Monitor の診断設定に記載されている詳細な手順を参照してください。
次のコマンドを実行して、VM または NIC に診断設定が関連付けられていることを確認できます。
az monitor diagnostic-settings list --resource-group matspo --resource matspo-tog-cc2659 --resource-type microsoft.network/networkInterfaces
<!--NeedCopy-->
az monitor diagnostic-settings list --resource-group matspo --resource matspo-tog-cc2 --resource-type microsoft.compute/virtualMachines
<!--NeedCopy-->
診断設定を持つテンプレート仕様ベースのマシンプロファイルの作成
診断設定がすでに有効になっている VM を使用し、それを ARM テンプレート仕様にエクスポートする場合、これらの設定はテンプレートに自動的に含まれません。ARM テンプレート内で診断設定を手動で追加または変更する必要があります。
ただし、VM をマシンプロファイルとして使用する場合、MCS は重要な診断設定が正確にキャプチャされ、MCS カタログ内のリソースに適用されることを保証します。
- VM と NIC を定義する標準テンプレート仕様を作成します
-
仕様に従って診断設定をデプロイするための追加リソースを追加します: Microsoft.Insights diagnosticSettings。スコープには、テンプレート内の VM または NIC を部分 ID を持つ名前で参照します。たとえば、テンプレート仕様で test-VM という名前の VM にアタッチされた診断設定を作成する場合、スコープを次のように指定します。
```
-
“scope”: “microsoft.compute/virtualMachines/test-VM”,
```
- テンプレート仕様をマシンプロファイルソースとして使用します
診断設定を持つカタログの作成または更新
マシンプロファイルソースを作成した後、New-ProvScheme コマンドを使用してマシンカタログを作成し、Set-ProvScheme コマンドを使用して既存のマシンカタログを更新し、Request-ProvVMUpdate コマンドを使用して既存の VM を更新できます。
Windows ライセンスの確認
プロビジョニングされたVMがライセンス特典を使用していることを、以下のPowerShellコマンドを実行して確認できます: Get-AzVM -ResourceGroup MyResourceGroup -Name MyVM。
-
Windows Serverライセンスタイプの場合、ライセンスタイプが Windows_Server であることを確認します。詳細な手順は https://docs.microsoft.com/en-us/azure/virtual-machines/windows/hybrid-use-benefit-licensing/ で参照できます。
-
Windows Clientライセンスタイプの場合、ライセンスタイプが Windows_Client であることを確認します。詳細な手順は https://docs.microsoft.com/en-us/azure/virtual-machines/windows/windows-desktop-multitenant-hosting-deployment/ で参照できます。
あるいは、Get-Provscheme PowerShell SDKを使用して確認することもできます。例: Get-Provscheme -ProvisioningSchemeName "My Azure Catalog"。このコマンドレットの詳細については、https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/MachineCreation/Get-ProvScheme/ を参照してください。
Linuxライセンスの構成
BYOS (bring-your-own-subscription) Linuxライセンスを使用すると、ソフトウェアの料金を支払う必要はありません。BYOSの料金には、コンピューティングハードウェア料金のみが含まれます。ライセンスには2つのタイプがあります。
-
RHEL_BYOS: RHEL_BYOSタイプを正常に使用するには、AzureサブスクリプションでRed Hat Cloud Accessを有効にします。
- SLES_BYOS: SLESのBYOSバージョンには、SUSEからのサポートが含まれています。
New-ProvScheme および Set-ProvScheme で、LicenseTypeの値をLinuxオプションに設定できます。
New-ProvScheme でLicenseTypeをRHEL_BYOSに設定する例:
New-ProvScheme -CleanOnBoot -ProvisioningSchemeName "azureCatalog" -RunAsynchronously -Scope @() -SecurityGroup @() -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" /><Property xsi:type="StringProperty" Name="StorageAccountType" Value="StandardSSD_LRS" /><Property xsi:type="StringProperty" Name="ResourceGroups" Value="hu-dev-mcs" /><Property xsi:type="StringProperty" Name="OsType" Value="Linux" /><Property xsi:type="StringProperty" Name="LicenseType" Value="RHEL_BYOS" /></CustomProperties>'
<!--NeedCopy-->
Set-ProvScheme でLicenseTypeをSLES_BYOSに設定する例:
Set-ProvScheme -ProvisioningSchemeName "azureCatalog" -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" /><Property xsi:type="StringProperty" Name="StorageAccountType" Value="StandardSSD_LRS" /><Property xsi:type="StringProperty" Name="ResourceGroups" Value="hu-dev-mcs" /><Property xsi:type="StringProperty" Name="OsType" Value="Linux" /><Property xsi:type="StringProperty" Name="LicenseType" Value="SLES_BYOS" /></CustomProperties>'
<!--NeedCopy-->
注:
LicenseTypeの値が空の場合、OsTypeの値に応じて、デフォルト値はAzure Windows ServerライセンスまたはAzure Linuxライセンスになります。
LicenseTypeを空に設定する例:
Set-ProvScheme -ProvisioningSchemeName "azureCatalog" -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" /><Property xsi:type="StringProperty" Name="StorageAccountType" Value="StandardSSD_LRS" /><Property xsi:type="StringProperty" Name="ResourceGroups" Value="hu-dev-mcs" /><Property xsi:type="StringProperty" Name="OsType" Value="Linux" /></CustomProperties>'
<!--NeedCopy-->
Azureエフェメラルディスクを使用したマシンカタログの作成
New-ProvScheme を使用してエフェメラルOSディスクをプロビジョニングするには、以下の制約を考慮してください。
- カタログに使用されるVMサイズは、エフェメラルOSディスクをサポートしている必要があります。
- VMサイズに関連付けられているキャッシュディスクまたは一時ディスクのサイズは、OSディスクのサイズ以上である必要があります。
- 一時ディスクのサイズは、キャッシュディスクのサイズよりも大きい必要があります。
また、以下の状況でもこれらの制約を考慮してください。
- プロビジョニングスキームの作成時
- プロビジョニングスキームの変更時
- イメージの更新時
エフェメラルディスクを使用するには、New-ProvScheme の実行時にカスタムプロパティ UseEphemeralOsDisk を true に設定する必要があります。
注:
カスタムプロパティ
UseEphemeralOsDiskが false に設定されているか、値が指定されていない場合、プロビジョニングされたすべてのVDAはプロビジョニングされたOSディスクを引き続き使用します。
以下は、プロビジョニングスキームで使用するカスタムプロパティの例です。
"CustomProperties": [
{
"Name": "UseManagedDisks",
- "Value": "true"
},
{
"Name": "StorageType",
"Value": "Standard_LRS"
},
{
"Name": "UseSharedImageGallery",
"Value": "true"
- },
- {
"Name": "SharedImageGalleryReplicaRatio",
"Value": "40"
},
- {
"Name": "SharedImageGalleryReplicaMaximum",
"Value": "10"
},
{
- "Name": "LicenseType",
"Value": "Windows_Server"
},
{
"Name": "UseEphemeralOsDisk",
- "Value": "true"
- }
],
<!--NeedCopy-->
既存のカタログのエフェメラルディスクの構成
既存のカタログにAzureエフェメラルOSディスクを構成するには、Set-ProvScheme の UseEphemeralOsDisk パラメーターを使用します。UseEphemeralOsDisk パラメーターの値を true に設定します。
注:
この機能を使用するには、
UseManagedDisksおよびUseSharedImageGalleryパラメーターも有効にする必要があります。
例:
- Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
<Property xsi:type="StringProperty" Name="UseEphemeralOsDisk" Value="true" />
- </CustomProperties>'
<!--NeedCopy-->
エフェメラルディスクで使用されるストレージタイプの構成
デフォルトでは、エフェメラルOSディスク機能で使用されるストレージタイプはStandard_LRSです。StorageTypeカスタムプロパティを指定することで、読み取り操作でのディスクIOPSを向上させるために、代わりにSSDを使用するようにストレージタイプを設定できます。現在サポートされている値は、Standard_LRS、StandardSSD_LRS、およびPremium_LRSです。
StorageTypeは、Set-ProvSchemeおよびSet-ProvVMUpdateTimeWindowを使用して、既存のエフェメラルマシンでも更新できます。
Azure Compute Galleryの構成
Azure Compute Galleryをサポートするプロビジョニングスキームを作成するには、New-ProvSchemeコマンドを使用します。プロビジョニングスキームでこの機能を有効または無効にするには、およびレプリカ比率とレプリカの最大値を変更するには、Set-ProvSchemeコマンドを使用します。
Azure Compute Gallery機能をサポートするために、3つのカスタムプロパティがプロビジョニングスキームに追加されました。
- `UseSharedImageGallery`
- 公開されたイメージを保存するためにAzure Compute Galleryを使用するかどうかを定義します。Trueに設定されている場合、イメージはAzure Compute Galleryイメージとして保存され、それ以外の場合はスナップショットとして保存されます。
- 有効な値はTrueとFalseです。
- プロパティが定義されていない場合、デフォルト値はFalseです。
SharedImageGalleryReplicaRatio
- マシンとギャラリーイメージバージョンレプリカの比率を定義します。
- 有効な値は0より大きい整数です。
-
プロパティが定義されていない場合、デフォルト値が使用されます。永続OSディスクのデフォルト値は1000で、非永続OSディスクのデフォルト値は40です。
- `SharedImageGalleryReplicaMaximum` - 各ギャラリーイメージバージョンのレプリカの最大数を定義します。
- 有効な値は0より大きく100までの整数です。有効な範囲以外の値を指定すると、MCSはエラーを生成します。
- プロパティが定義されていない場合、デフォルト値は10です。
- プロパティが定義されていない場合、デフォルト値は100です。
ヒント:
MCSプロビジョニングされたカタログの公開イメージを保存するためにAzure Compute Galleryを使用する場合、MCSはカタログ内のマシンの数、レプリカ比率、およびレプリカの最大値に基づいてギャラリーイメージバージョンのレプリカ数を設定します。レプリカ数は、カタログ内のマシンの数をレプリカ比率で割って(最も近い整数に切り上げて)計算され、その値を最大レプリカ数で制限します。たとえば、レプリカ比率が20で最大値が5の場合、0~20台のマシンには1つのレプリカが作成され、21~40台には2つのレプリカ、41~60台には3つのレプリカ、61~80台には4つのレプリカ、81台以上には5つのレプリカが作成されます。
ユースケース: Azure Compute Galleryのレプリカ比率とレプリカ最大値の更新
既存のマシンカタログはAzure Compute Galleryを使用しています。カタログ内のすべての既存マシンおよび将来のマシンのカスタムプロパティを更新するには、Set-ProvSchemeコマンドを使用します。
- Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="StorageType" Value="Standard_LRS"/> <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="True"/> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="True"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaRatio" Value="30"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaMaximum" Value="20"/></CustomProperties>'
<!--NeedCopy-->
ユースケース: スナップショットカタログをAzure Compute Galleryカタログに変換する
-
このユースケースの場合:
-
-
UseSharedImageGalleryフラグをTrueに設定してSet-ProvSchemeを実行します。オプションでSharedImageGalleryReplicaRatioおよびSharedImageGalleryReplicaMaximumプロパティを含めます。
-
-
- カタログを更新します。
-
- マシンをパワーサイクルして更新を強制します。
- 例:
- Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="StorageType" Value="Standard_LRS"/> <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="True"/> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="True"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaRatio" Value="30"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaMaximum" Value="20"/></CustomProperties>'
<!--NeedCopy-->
ヒント:
パラメーター
SharedImageGalleryReplicaRatioとSharedImageGalleryReplicaMaximumは必須ではありません。Set-ProvSchemeコマンドが完了しても、Azure Compute Galleryイメージはまだ作成されていません。カタログがギャラリーを使用するように構成されると、次のカタログ更新操作で公開されたイメージがギャラリーに保存されます。カタログ更新コマンドは、ギャラリー、ギャラリーイメージ、およびイメージバージョンを作成します。マシンをパワーサイクルすると更新され、必要に応じてレプリカ数が更新されます。その時点から、すべての既存の非永続マシンはAzure Compute Galleryイメージを使用してリセットされ、新しくプロビジョニングされたすべてのマシンはイメージを使用して作成されます。古いスナップショットは数時間以内に自動的にクリーンアップされます。
ユースケース: Azure Compute Galleryカタログをスナップショットカタログに変換する
このユースケースの場合:
-
UseSharedImageGalleryフラグをFalseに設定するか、定義せずにSet-ProvSchemeを実行します。 - カタログを更新します。
- マシンをパワーサイクルして更新を強制します。
例:
Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="StorageType" Value="Standard_LRS"/> <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="True"/> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="False"/></CustomProperties>'
<!--NeedCopy-->
ヒント:
スナップショットからAzure Compute Galleryカタログへの更新とは異なり、各マシンのカスタムデータは新しいカスタムプロパティを反映するようにまだ更新されていません。元のAzure Compute Galleryカスタムプロパティを表示するには、次のコマンドを実行します:
Get-ProvVm -ProvisioningSchemeName catalog-name。Set-ProvSchemeコマンドが完了しても、イメージスナップショットはまだ作成されていません。カタログがギャラリーを使用しないように構成されると、次のカタログ更新操作で公開されたイメージがスナップショットとして保存されます。その時点から、すべての既存の非永続マシンはスナップショットを使用してリセットされ、新しくプロビジョニングされたすべてのマシンはスナップショットから作成されます。マシンをパワーサイクルすると更新され、その時点でカスタムマシンデータはUseSharedImageGalleryがFalseに設定されていることを反映するように更新されます。古いAzure Compute Galleryアセット(ギャラリー、イメージ、およびバージョン)は数時間以内に自動的にクリーンアップされます。
VMあたり複数のNICを持つカタログの作成または更新
MCSはVMごとに複数のNICをサポートします。VM上の複数のNICを複数のサブネットに関連付けることができますが、それらのサブネットは同じ仮想ネットワーク (VNet) 内にある必要があります。PowerShellコマンドを使用して、次の操作を実行できます。
VMに複数のNICを持たせるために、マシンプロファイルに基づかないマシンカタログとマシンプロファイルに基づくマシンカタログを作成または更新できます。現在、マシンプロファイルに基づくマシンカタログの場合、マシンプロファイルソースで指定された数と同じ数のNICのみを持つことができます。
アクセラレーテッドネットワーキングなどのプロパティは、マシンプロファイルソースから派生します。
注:
VMサイズは、同じ数のNICと対応するアクセラレーテッドネットワーキングをサポートしている必要があります。そうでない場合、エラーが発生します。
選択したVMサイズに関連付けられているNICの最大数を取得できます。MaxNetworkInterfacesというPowerShellプロパティは、PowerShellのget-itemコマンドをAdditionalDataパラメーターとともに実行したときに、NICの最大数を表示します。
最大NIC数の取得
最大NIC数を取得するには、次の手順を実行します。
- Delivery Controller™ホストからPowerShellウィンドウを開きます。
-
asnp citrix*を実行して、Citrix固有のPowerShellモジュールをロードします。
-
-
Get-ChildItem -Path "XDHyp:\Connections\abc-connection\East US.region\serviceoffering.folder"を実行して、利用可能なすべてのVMサイズを一覧表示します。
-
-
-
get-item -Path "XDHyp:\Connections\abc-connection\East US.region\serviceoffering.folder\Standard_M416ms_v2.serviceoffering").AdditionalDataを実行します。
-
-
MaxNetworkInterfacesを確認して、NICの最大数を把握します。
VMに複数のNICを持つカタログを作成
VMに複数のNICを持つカタログを作成するには、次の手順を実行します。
- Delivery ControllerホストからPowerShellウィンドウを開きます。
-
asnp citrix*を実行して、Citrix固有のPowerShellモジュールをロードします。 - まだ作成されていない場合は、IDプールを作成します。
- プロビジョニングスキームを作成します。
-
マシンプロファイルに基づかないマシンカタログを作成する場合は、
NetworkMappingsパラメーターを指定してNew-ProvSchemeコマンドを実行します。NetworkMappingsパラメーターには複数のサブネットを追加できます。例:New-Provscheme -NetworkMappings @{"0"="subnetpath1";"1"="subnetpath1"} <!--NeedCopy--> -
マシンプロファイルに基づくマシンカタログを作成する場合:
- 複数のNICを持つVMをAzureに作成します。詳細については、「複数のNICを持つWindows仮想マシンの作成と管理」を参照してください。新しいVMを作成し、Azureポータルのネットワークページでネットワークインターフェイスをアタッチすることもできます。
- VMをマシンプロファイル入力として
New-ProvSchemeコマンドを実行します。
注:
マシンプロファイルに基づくマシンカタログを作成する場合、
NetworkMappingsの数はマシンプロファイルのNetworkInterfaceCountと同じである必要があります。NetworkInterfaceCountは、Get-item -Path "machine profile path"のAdditionalDataから取得できます。
-
- カタログの作成を完了します。
VMに複数のNICを持つカタログを更新
VMに複数のNICを持つカタログを更新するには、次の手順を実行します。
- Delivery ControllerホストからPowerShellウィンドウを開きます。
-
asnp citrix*を実行して、Citrix固有のPowerShellモジュールをロードします。 -
プロビジョニングスキームを更新します。
-
マシンプロファイルに基づかないマシンカタログを作成する場合は、
NetworkMappingsパラメーターを指定してSet-ProvSchemeコマンドを実行します。NetworkMappingsパラメーターには複数のサブネットを追加できます。例:Set-Provscheme -NetworkMappings @{"0"="subnetpath1";"1"="subnetpath1"} <!--NeedCopy--> -
マシンプロファイルに基づくマシンカタログを作成する場合:
- 複数のNICを持つVMをAzureに作成します。詳細については、「複数のNICを持つWindows仮想マシンの作成と管理」を参照してください。
- VMをマシンプロファイル入力として
Set-ProvSchemeコマンドを実行します。
-
既存のVMを更新してVMに複数のNICを持たせる
Set-ProvVMUpdateTimeWindowを使用して既存のVMを更新し、更新時間枠中に既存のVMの電源を再投入することもできます。既存のVMの更新の詳細については、「プロビジョニングされたマシンを現在のプロビジョニングスキームの状態に更新」を参照してください。
非永続的なライトバックキャッシュディスクを持つマシンカタログを作成
非永続的なライトバックキャッシュディスクを持つカタログを構成するには、PowerShellパラメーターNew-ProvScheme CustomPropertiesを使用します。カスタムプロパティは次のとおりです。
-
UseTempDiskForWBC。このプロパティは、ライトバックキャッシュファイルを保存するためにAzure一時ストレージを使用することを受け入れるかどうかを示します。一時ディスクをライトバックキャッシュディスクとして使用する場合は、New-ProvSchemeの実行時にこれをtrueに構成する必要があります。このプロパティが指定されていない場合、パラメーターはデフォルトでFalseに設定されます。
例えば、CustomProperties パラメーターを使用して UseTempDiskForWBC を true に設定する場合:
-CustomProperties '<CustomProperties xmlns=" http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"> `
<Property xsi:type="StringProperty" Name="PersistWBC" Value="false"/> `
<Property xsi:type="StringProperty" Name="PersistOsDisk" Value="false"/> `
<Property xsi:type="StringProperty" Name="PersistVm" Value="false"/> `
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS"/> `
<Property xsi:type="StringProperty" Name="WBCDiskStorageType" Value="Premium_LRS"/> `
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client"/> `
<Property xsi:type="StringProperty" Name="UseTempDiskForWBC" Value="true"/> `
</CustomProperties>'
<!--NeedCopy-->
注:
マシンカタログをコミットして、書き込みキャッシュファイルに Azure ローカル一時ストレージを使用するように設定すると、後で VHD を使用するように変更することはできません。
永続的な書き込みキャッシュディスクを持つマシンカタログを作成
永続的な書き込みキャッシュディスクを持つカタログを構成するには、PowerShell パラメーター New-ProvScheme CustomProperties を使用します。
ヒント:
PowerShell パラメーター
New-ProvScheme CustomPropertiesは、クラウドベースのホスティング接続にのみ使用してください。オンプレミスソリューション(XenServer® など)で永続的な書き込みキャッシュディスクを使用してマシンをプロビジョニングする場合、ディスクは自動的に永続化されるため、PowerShell は必要ありません。
このパラメーターは、MCS プロビジョニングされたマシンに対して書き込みキャッシュディスクがどのように永続化するかを決定するために使用される追加のプロパティ PersistWBC をサポートします。PersistWBC プロパティは、UseWriteBackCache パラメーターが指定され、WriteBackCacheDiskSize パラメーターがディスクが作成されることを示すように設定されている場合にのみ使用されます。
注:
この動作は、Azure と GCP の両方に適用されます。これらの環境では、電源サイクル時にデフォルトの MCSIO 書き込みキャッシュディスクが削除され、再作成されます。ディスクの削除と再作成を回避するために、ディスクを永続化することを選択できます。
- `PersistWBC` をサポートする前の `CustomProperties` パラメーターに見られるプロパティの例は次のとおりです。
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="benvaldev5RG3" />
</CustomProperties>
<!--NeedCopy-->
注:
この例は Azure にのみ適用されます。GCP 環境ではプロパティが異なります。
-
これらのプロパティを使用する場合、
CustomPropertiesパラメーターからプロパティが省略されていると、それらにはデフォルト値が含まれることに注意してください。PersistWBCプロパティには、true または false の2つの可能な値があります。 -
PersistWBCプロパティを true に設定すると、Citrix DaaS 管理者が管理インターフェイスからマシンをシャットダウンしても、書き込みキャッシュディスクは削除されません。
PersistWBC プロパティを false に設定すると、Citrix DaaS 管理者が管理インターフェイスからマシンをシャットダウンしたときに、書き込みキャッシュディスクが削除されます。
注:
PersistWBCプロパティが省略された場合、プロパティはデフォルトで false になり、マシンが管理インターフェイスからシャットダウンされると書き込みキャッシュは削除されます。
例えば、CustomProperties パラメーターを使用して PersistWBC を true に設定する場合:
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
- <Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="benvaldev5RG3" />
<Property xsi:type="StringProperty" Name="PersistWBC" Value="true" />
</CustomProperties>
<!--NeedCopy-->
重要:
PersistWBCプロパティは、New-ProvSchemePowerShell コマンドレットを使用してのみ設定できます。作成後にプロビジョニングスキームのCustomPropertiesを変更しようとしても、マシンカタログや、マシンがシャットダウンされたときの書き込みキャッシュディスクの永続性には影響しません。
例えば、New-ProvScheme を使用して書き込みキャッシュを使用し、同時に PersistWBC プロパティを true に設定する場合:
New-ProvScheme
-CleanOnBoot
- -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`">
- <Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" />
<Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"Premium_LRS`" />
- <Property xsi:type=`"StringProperty`" Name=`"ResourceGroups`" Value=`"benvaldev5RG3`" />
- <Property xsi:type=`"StringProperty`" Name=`"PersistWBC`" Value=`"true`" />
- </CustomProperties>"
- -HostingUnitName "adSubnetScale1"
- -IdentityPoolName "BV-WBC1-CAT1"
-MasterImageVM "XDHyp:\HostingUnits\adSubnetScale1\image.folder\GoldImages.resourcegroup\W10MCSIO-01_OsDisk_1_a940e6f5bab349019d57ccef65d2c7e3.manageddisk"
-NetworkMapping @{"0"="XDHyp:\HostingUnits\adSubnetScale1\\virtualprivatecloud.folder\CloudScale02.resourcegroup\adVNET.virtualprivatecloud\adSubnetScale1.network"}
-ProvisioningSchemeName "BV-WBC1-CAT1"
-ServiceOffering "XDHyp:\HostingUnits\adSubnetScale1\serviceoffering.folder\Standard_D2s_v3.serviceoffering"
-UseWriteBackCache
-WriteBackCacheDiskSize 127
-WriteBackCacheMemorySize 256
<!--NeedCopy-->
MCSIO で起動パフォーマンスを向上
MCSIO が有効になっている場合、Azure および GCP マネージドディスクの起動パフォーマンスを向上させることができます。この機能を構成するには、New-ProvScheme コマンドで PowerShell の PersistOSDisk カスタムプロパティを使用します。New-ProvScheme に関連するオプションは次のとおりです。
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="benvaldev5RG3" />
<Property xsi:type="StringProperty" Name="PersistOsDisk" Value="true" />
</CustomProperties>
<!--NeedCopy-->
この機能を有効にするには、PersistOSDisk カスタムプロパティを true に設定します。例:
New-ProvScheme
-CleanOnBoot
-CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"Premium_LRS`" /><Property xsi:type=`"StringProperty`" Name=`"ResourceGroups`" Value=`"benvaldev5RG3`" /><Property xsi:type=`"StringProperty`" Name=`"PersistOsDisk`" Value=`"true`" /></CustomProperties>"
-HostingUnitName "adSubnetScale1"
-IdentityPoolName "BV-WBC1-CAT1"
-MasterImageVM "XDHyp:\HostingUnits\adSubnetScale1\image.folder\GoldImages.resourcegroup\W10MCSIO-01_OsDisk_1_a940e6f5bab349019d57ccef65d2c7e3.manageddisk"
-NetworkMapping @{"0"="XDHyp:\HostingUnits\adSubnetScale1\\virtualprivatecloud.folder\CloudScale02.resourcegroup\adVNET.virtualprivatecloud\adSubnetScale1.network"}
-ProvisioningSchemeName "BV-WBC1-CAT1"
-ServiceOffering "XDHyp:\HostingUnits\adSubnetScale1\serviceoffering.folder\Standard_D2s_v3.serviceoffering"
- -UseWriteBackCache
- -WriteBackCacheDiskSize 127
- -WriteBackCacheMemorySize 256
<!--NeedCopy-->
顧客管理の暗号化キーを持つマシンカタログを作成
PowerShell コマンドを使用して、暗号化キーが顧客管理キーであるマシンカタログを作成する場合は、次の手順を実行します。
- PowerShell ウィンドウを開きます。
-
-
asnp citrix*を実行して、Citrix 固有の PowerShell モジュールをロードします。
-
-
-
cd xdhyp:/と入力します。
-
-
-
cd .\HostingUnits\(your hosting unit)と入力します。
-
-
cd diskencryptionset.folderと入力します。
-
-
dirと入力して、ディスク暗号化セットのリストを取得します。
-
-
- ディスク暗号化セットの ID をコピーします。
-
- ディスク暗号化セットの ID を含めるカスタムプロパティ文字列を作成します。例:
$customProperties = "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"> <Property xsi:type=`"StringProperty`" Name=`"persistWBC`" Value=`"False`" /> <Property xsi:type=`"StringProperty`" Name=`"PersistOsDisk`" Value=`"false`" /> <Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /> <Property xsi:type=`"StringProperty`" Name=`"DiskEncryptionSetId`" Value=`"/subscriptions/0xxx4xxx-xxb-4bxx-xxxx-xxxxxxxx/resourceGroups/abc/providers/Microsoft.Compute/diskEncryptionSets/abc-des`"/> </CustomProperties> <!--NeedCopy-->
-
既存でない場合は、IDプールを作成します。例:
New-AcctIdentityPool -IdentityPoolName idPool -NamingScheme ms## -Domain def.local -NamingSchemeType Numeric <!--NeedCopy--> -
New-ProvSchemeコマンドを実行します。例:
New-ProvScheme -CleanOnBoot -HostingUnitName "name" -IdentityPoolName "name" -InitialBatchSizeHint 1 -MasterImageVM "XDHyp:\HostingUnits\azure-res2\image.folder\def.resourcegroup\def.snapshot" -NetworkMapping @{"0"="XDHyp:\HostingUnits\azure-res2\\virtualprivatecloud.folder\def.resourcegroup\def-vnet.virtualprivatecloud\subnet1.network"} -ProvisioningSchemeName "name" -ServiceOffering "XDHyp:\HostingUnits\azure-res2\serviceoffering.folder\Standard_DS2_v2.serviceoffering" -MachineProfile "XDHyp:\HostingUnits\<adnet>\machineprofile.folder\<def.resourcegroup>\<machine profile vm.vm>" -CustomProperties $customProperties <!--NeedCopy--> -
マシンカタログの作成を完了します。
ホストでの暗号化機能を持つマシンカタログの作成
ホストでの暗号化機能を持つマシンカタログを作成するには
- サブスクリプションでホストでの暗号化機能が有効になっているかどうかを確認します。これを行うには、https://learn.microsoft.com/en-us/rest/api/resources/features/get?tabs=HTTP/を参照してください。有効になっていない場合は、サブスクリプションでこの機能を有効にする必要があります。サブスクリプションで機能を有効にする方法については、https://learn.microsoft.com/en-us/azure/virtual-machines/disks-enable-host-based-encryption-portal?tabs=azure-powershell#prerequisites/を参照してください。
-
特定のAzure VMサイズがホストでの暗号化をサポートしているかどうかを確認します。これを行うには、PowerShellウィンドウで次のいずれかを実行します。
PS XDHyp:\Connections\<your connection>\east us.region\serviceoffering.folder> <!--NeedCopy-->PS XDHyp:\HostingUnits\<your hosting unit>\serviceoffering.folder> <!--NeedCopy--> -
マシンプロファイルの入力として、ホストでの暗号化が有効になっているVMまたはテンプレート仕様をAzureポータルで作成します。
- VMを作成する場合は、ホストでの暗号化をサポートするVMサイズを選択します。VMを作成すると、VMプロパティのホストでの暗号化が有効になります。
- テンプレート仕様を使用する場合は、
securityProfile内でパラメーターEncryption at Hostをtrueとして割り当てます。
-
VMまたはテンプレート仕様のいずれかを選択して、マシンプロファイルワークフローでMCSマシンカタログを作成します。
- OSディスク/データディスク: 顧客管理キーとプラットフォーム管理キーによって暗号化されます
- エフェメラルOSディスク: プラットフォーム管理キーのみによって暗号化されます
- キャッシュディスク: 顧客管理キーとプラットフォーム管理キーによって暗号化されます
StudioまたはPowerShellコマンドを実行して、マシンカタログを作成できます。
マシンプロファイルからのホストでの暗号化情報の取得
AdditionalDataパラメーターを指定してPowerShellコマンドを実行すると、マシンプロファイルからホストでの暗号化情報を取得できます。EncryptionAtHostパラメーターがTrueの場合、マシンプロファイルでホストでの暗号化が有効になっていることを示します。
例: マシンプロファイルの入力がVMの場合、次のコマンドを実行します。
(get-item XDHyp:\HostingUnits\myAzureNetwork\machineprofile.folder\abc.resourcegroup\def.vm).AdditionalData
<!--NeedCopy-->
例: マシンプロファイルの入力がテンプレート仕様の場合、次のコマンドを実行します。
(get-item XDHyp:\HostingUnits\myAzureNetwork\machineprofile.folder\abc.resourcegroup\def_templatespec.templatespec\EncryptionAtHost.templatespecversion).AdditionalData
<!--NeedCopy-->
二重暗号化によるマシンカタログの作成
StudioおよびPowerShellコマンドを使用して、二重暗号化によるマシンカタログを作成および更新できます。
二重暗号化によるマシンカタログを作成する詳細な手順は次のとおりです。
- プラットフォーム管理キーと顧客管理キーを使用してAzure Key VaultとDESを作成します。Azure Key VaultとDESの作成方法については、Azure portal を使用してマネージドディスクの保存時の二重暗号化を有効にするを参照してください。
- ホスティング接続で利用可能なディスク暗号化セットを参照するには:
- PowerShellウィンドウを開きます。
- 次のPowerShellコマンドを実行します。
asnp citrix*cd xdhyp:cd HostingUnitscd YourHostingUnitName (ex. azure-east)cd diskencryptionset.folderdir
DiskEncryptionSetのIDを使用して、カスタムプロパティでカタログを作成または更新できます。 - マシンプロファイルワークフローを使用する場合は、VMまたはテンプレート仕様をマシンプロファイルの入力として作成します。
- VMをマシンプロファイルの入力として使用する場合:
- Azure PortalでVMを作成します。
-
ディスク>キー管理に移動して、任意の
DiskEncryptionSetIDでVMを直接暗号化します。
- テンプレート仕様をマシンプロファイルの入力として使用する場合:
- テンプレートで、
properties>storageProfile>osDisk>managedDiskの下にdiskEncryptionSetパラメーターを追加し、二重暗号化DESのIDを追加します。
- テンプレートで、
- VMをマシンプロファイルの入力として使用する場合:
- マシンカタログを作成します。
- Studioを使用する場合は、マシンカタログの作成の手順に加えて、次のいずれかを実行します。
- マシンプロファイルベースのワークフローを使用しない場合は、ディスク設定ページで、各マシンのデータを暗号化するために次のキーを使用するを選択します。次に、ドロップダウンリストから二重暗号化DESを選択します。カタログの作成を続行します。
- マシンプロファイルワークフローを使用する場合は、イメージページでマスターイメージ(または準備されたイメージ)とマシンプロファイルを選択します。マシンプロファイルのプロパティにディスク暗号化セットIDがあることを確認してください。
カタログで作成されたすべてのマシンは、選択したDESに関連付けられたキーによって二重に暗号化されます。
- PowerShellコマンドを使用する場合は、次のいずれかを実行します。
-
マシンプロファイルベースのワークフローを使用しない場合は、
New-ProvSchemeコマンドにカスタムプロパティDiskEncryptionSetIdを追加します。例:New-ProvScheme -CleanOnBoot -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" /> <Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS" /> <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/12345678-xxxx-1234-1234-123456789012/resourceGroups/Sample-RG/providers/Microsoft.Compute/diskEncryptionSets/SampleEncryptionSet" /> </CustomProperties>' -HostingUnitName "Redacted" -IdentityPoolName "Redacted" -InitialBatchSizeHint 1 -MasterImageVM "Redacted" -NetworkMapping @{"0"="Redacted"} -ProvisioningSchemeName "Redacted" -ServiceOffering "Redacted" <!--NeedCopy--> -
マシンプロファイルベースのワークフローを使用している場合は、
New-ProvSchemeコマンドでマシンプロファイル入力を指定します。例:New-ProvScheme -CleanOnBoot -HostingUnitName azure-east -IdentityPoolName aio-ip -InitialBatchSizeHint 1 -MasterImageVM XDHyp:\HostingUnits\azure-east\image.folder\abc.resourcegroup\fgb-vda-snapshot.snapshot -NetworkMapping @{"0"="XDHyp:\HostingUnits\azure-east\virtualprivatecloud.folder\apa-resourceGroup.resourcegroup\apa-resourceGroup-vnet.virtualprivatecloud\default.network"} -ProvisioningSchemeName aio-test -MachineProfile XDHyp:\HostingUnits\azure-east\machineprofile.folder\abc.resourcegroup\abx-mp.templatespec\1.0.0.templatespecversion <!--NeedCopy-->
リモート PowerShell SDK を使用してカタログの作成を完了します。カタログで作成されたすべてのマシンは、選択した DES に関連付けられたキーによって二重に暗号化されます。
-
- Studioを使用する場合は、マシンカタログの作成の手順に加えて、次のいずれかを実行します。
暗号化されていないカタログを二重暗号化を使用するように変換
マシンカタログの暗号化タイプは、カスタムプロパティまたはマシンプロファイルを使用して更新できます。
-
マシンプロファイルベースのワークフローを使用していない場合は、
Set-ProvSchemeコマンドでカスタムプロパティDiskEncryptionSetIdを追加します。例:Set-ProvScheme -ProvisioningSchemeName "SampleProvSchemeName" -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/12345678-xxxx-1234-1234-123456789012/resourceGroups/Sample-RG/providers/Microsoft.Compute/diskEncryptionSets/SampleEncryptionSet" /> </CustomProperties>' <!--NeedCopy--> -
マシンプロファイルベースのワークフローを使用している場合は、
Set-ProvSchemeコマンドでマシンプロファイル入力を指定します。例:Set-ProvScheme -ProvisioningSchemeName mxiao-test -MachineProfile XDHyp:\HostingUnits\azure-east\machineprofile.folder\aelx.resourcegroup\elx-mp.templatespec\1.0.0.templatespecversion <!--NeedCopy-->
成功すると、カタログに追加するすべての新しい VM は、選択した DES に関連付けられたキーによって二重に暗号化されます。
カタログの二重暗号化の確認
-
Studio で:
- マシンカタログに移動します。
- 確認するカタログを選択します。画面下部にあるテンプレートプロパティタブをクリックします。
- Azure の詳細で、ディスク暗号化セットのディスク暗号化セット ID を確認します。カタログの DES ID が空白の場合、カタログは暗号化されていません。
- Azure Portal で、DES ID に関連付けられた DES の暗号化タイプがプラットフォーム管理キーと顧客管理キーであることを確認します。
-
PowerShell コマンドの使用:
- PowerShell ウィンドウを開きます。
-
asnp citrix*を実行して、Citrix 固有の PowerShell モジュールをロードします。 -
Get-ProvSchemeを使用して、マシンカタログの情報を取得します。例:Get-ProvScheme -ProvisioningSchemeName "SampleProvSchemeName" <!--NeedCopy--> -
マシンカタログの DES ID カスタムプロパティを取得します。例:
<Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/Sample-RG/providers/Microsoft.Compute/diskEncryptionSets/SampleEncryptionSet" /> <!--NeedCopy--> - Azure Portal で、DES ID に関連付けられた DES の暗号化タイプがプラットフォーム管理キーと顧客管理キーであることを確認します。
ページファイルの場所の決定
ページファイルの場所は、次のシナリオに従って決定されます。
注:
デフォルトのページファイルの場所は OS ディスクです。
| シナリオ | 場所 |
|---|---|
| カスタムプロパティでページファイル設定が指定されている場合 | カスタムプロパティで指定されたとおり |
| エフェメラル OS ディスクまたはハイバネーションが有効になっている場合 | OS ディスク |
| VM に一時ディスクがある場合 | 一時ディスク |
| MCS IO が有効になっている場合 | WBC ディスク |
ページファイル設定のシナリオ
次の表は、イメージ準備中およびプロビジョニングスキーム更新中のページファイル設定の考えられるシナリオの一部を示しています。
| 期間 | シナリオ | 結果 |
|---|---|---|
| イメージ準備 | プロビジョニングスキームで指定する VM サイズに一時ディスクがないにもかかわらず、ソースイメージのページファイルを一時ディスクに設定した場合 | ページファイルは OS に配置されます |
| イメージ準備 | プロビジョニングスキームで指定する VM サイズに一時ディスクがあるにもかかわらず、ソースイメージのページファイルを OS ディスクに設定した場合 | ページファイルは一時ディスクに配置されます |
| イメージ準備 | ソースイメージのページファイルを一時ディスクに設定し、プロビジョニングスキームでエフェメラル OS ディスクを有効にした場合 | ページファイルは OS ディスクに配置されます |
| プロビジョニングスキームの更新 | VDA バージョンが 2311 より前の場合にプロビジョニングスキームを更新しようとした場合 | 警告とともにページファイル設定を変更します |
| プロビジョニングスキームの更新 | VDA バージョンが 2311 以降の場合にプロビジョニングスキームを更新しようとした場合 | ページファイルの場所の決定 に従ってページファイルの場所を決定します |
ページファイル設定の指定
PowerShell コマンドを使用して、場所やサイズを含むページファイル設定を指定できます。これにより、ページファイルの場所の決定 に従って MCS によって決定されたページファイル設定が上書きされます。これは、マシンカタログ作成中に次の New-ProvScheme コマンドを実行することで行えます。
重要な考慮事項
カタログ作成を進める前に、以下を考慮してください。
- カスタムプロパティ(
PageFileDiskDriveLetterOverride、InitialPageFileSizeInMB、およびMaxPageFileSizeInMB)は、New-ProvSchemeコマンドですべて指定するか、または一切指定しないかのいずれかである必要があります。 - この機能はCitrix Studioではサポートされていません。
- 初期ページファイルサイズは16 MBから16777216 MBの間である必要があります。
- 最大ページファイルサイズは、初期ページファイルサイズ以上かつ16777216 MB未満である必要があります。
- 初期ページファイルサイズと最大ページファイルサイズの両方を同時にゼロに設定できます。
注:
既存のカタログに新しく追加されたVMのページファイル設定は、マスターイメージを更新せずに変更できます。ページファイル設定を変更するには、VDAバージョン2311以降が必要です。PowerShellコマンドを使用してページファイル設定を変更できます。詳しくは、「ページファイル設定の変更」を参照してください。
New-ProvScheme -CleanOnBoot `
-HostingUnitName "zijinnet" `
-IdentityPoolName "PageFileSettingExample" `
-ProvisioningSchemeName "PageFileSettingExample" `
-InitialBatchSizeHint 1 `
-MasterImageVM "XDHyp:\HostingUnits\zijinnet\image.folder\neal-zijincloud-resources.resourcegroup\CustomWin10VDA_OsDisk_1_9473d7c8a6174b2c8284c7d3efeea88f.manageddisk" `
-NetworkMapping @{"0"="XDHyp:\\HostingUnits\\zijinnet\\virtualprivatecloud.folder\\East US.region\\virtualprivatecloud.folder\\neal-zijincloud-resources.resourcegroup\\neal-zijincloud-resources-vnet.virtualprivatecloud\\default.network"} `
-ServiceOffering "XDHyp:\\HostingUnits\\zijinnet\\serviceoffering.folder\\Standard_B2ms.serviceoffering" `
-CustomProperties '<CustomProperties xmlns=" http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"> `
<Property xsi:type="StringProperty" Name="PersistOsDisk" Value="false"/> `
<Property xsi:type="StringProperty" Name="PersistVm" Value="false"/> `
<Property xsi:type="StringProperty" Name="PageFileDiskDriveLetterOverride" Value="d"/> `
<Property xsi:type="StringProperty" Name="InitialPageFileSizeInMB" Value="2048"/> `
<Property xsi:type="StringProperty" Name="MaxPageFileSizeInMB" Value="8196"/> `
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS"/> `
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client"/> `
</CustomProperties>'
<!--NeedCopy-->
ページファイル設定の変更
既存のカタログに新しく追加されたVMのページファイル設定は、マスターイメージを更新せずに変更できます。現在、この機能はAzure環境のみに適用されます。
ページファイル設定を変更するには、VDAバージョン2311以降が必要です。PowerShellコマンドを使用してページファイル設定を変更できます。
Azure環境で変更できるさまざまなページファイル設定は次のとおりです。
PageFileDiskDriveLetterOverrideInitialPageFileSizeInMBMaxPageFileSizeInMB
既存のカタログのページファイル設定の変更
既存のマシンカタログのページファイル設定を変更するには、Set-ProvSchemeコマンドを実行します。この場合、更新はカタログに追加された新しいVMにのみ適用されます。例:
Set-ProvScheme -ProvisioningSchemeName $schemeName -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="OsType" Value="Windows" />
<Property xsi:type="StringProperty" Name="StorageType" Value="StandardSSD_LRS" />
<Property xsi:type="StringProperty" Name="PageFileDiskDriveLetterOverride" Value="D" />
<Property xsi:type="StringProperty" Name="InitialPageFileSizeInMB" Value="2048" />
<Property xsi:type="StringProperty" Name="MaxPageFileSizeInMB" Value="8196" />
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client" />
<Property xsi:type="StringProperty" Name="Zones" Value="1" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="neal-test-group1" />
<Property xsi:type="StringProperty" Name="SchemaVersion" Value="2" />
</CustomProperties>'
<!--NeedCopy-->
注:
ライトバックキャッシュを有効にして、PowerShellコマンドを使用して
PageFileDiskDriveLetterOverrideをC:に設定しようとすると、MCS I/Oドライバーはページファイルを自動的に正しいディスクドライブにリダイレクトし、C:にはリダイレクトしません。
AMAが有効なカタログVMのプロビジョニング
-
マシンプロファイルテンプレートを設定します。
-
VMをマシンプロファイルテンプレートとして使用する場合:
- AzureポータルでVMを作成します。
- VMの電源を入れます。
- リソースの下にあるデータ収集ルールにVMを追加します。これにより、テンプレートVMにエージェントのインストールが呼び出されます。
注:
Linuxカタログを作成する必要がある場合は、Linuxマシンを設定します。
-
テンプレート仕様をマシンプロファイルテンプレートとして使用する場合:
- テンプレート仕様を設定します。
-
生成されたテンプレート仕様に、次の拡張機能とデータ収集ルール関連付けを追加します。
{ "type": "Microsoft.Compute/virtualMachines/extensions", "apiVersion": "2022-03-01", "name": "<vm-name>/AzureMonitorWindowsAgent", "dependsOn": [ "Microsoft.Compute/virtualMachines/<vm-name>" ], "location": "<azure-region>", "properties": { "publisher": "Microsoft.Azure.Monitor", "type": "AzureMonitorWindowsAgent", "typeHandlerVersion": "1.0", "autoUpgradeMinorVersion": true, "enableAutomaticUpgrade": true } }, { "type": "Microsoft.Insights/dataCollectionRuleAssociations", "apiVersion": "2021-11-01", "name": "<associatio-name>", "scope": "Microsoft.Compute/virtualMachines/<vm-name>", "dependsOn": [ "Microsoft.Compute/virtualMachines/<vm-name>", "Microsoft.Compute/virtualMachines/<vm-name>/extensions/AzureMonitorWindowsAgent" ], "properties": { "description": "Association of data collection rule. Deleting this association will break the data collection for this Arc server.", "dataCollectionRuleId": "/subscriptions/<azure-subscription>/resourcegroups/<azure-resource-group>/providers/microsoft.insights/datacollectionrules/<azure-data-collection-rule>" } } <!--NeedCopy-->
注:
Microsoft Sentinelデータコネクタでデータ収集ルールが設定されている場合、通常のDCR関連付けと同様に、テンプレート仕様に
dataCollectionRuleAssociationを追加するだけで済みます。これにより、カタログVMがSentinel DCRに表示され、AMAがそれらのVMにインストールされます。データ収集ルール作成のベストプラクティスについては、「Azure Monitorでのデータ収集ルール作成と管理のベストプラクティス」を参照してください。
-
-
既存のMCSマシンカタログを作成または更新します。
-
新しいMCSカタログを作成するには:
- StudioでそのVMまたはテンプレート仕様をマシンプロファイルとして選択します。
- 次の手順に進み、カタログを作成します。
-
既存のMCSカタログを更新するには、次のPowerShellコマンドを使用します。この場合、新しいVMのみが更新されたマシンプロファイルテンプレートを取得します。
Set-ProvScheme -ProvisioningSchemeName "name" -MachineProfile "XDHyp:\HostingUnits\Unit1\machineprofile.folder\abc.resourcegroup\ab-machine-profile.vm" <!--NeedCopy--> -
既存のVMを更新されたマシンプロファイルテンプレートで更新するには、
Set-ProvSchemeを実行し、次にSet-ProvVMUpdateTimeWindowを実行します。Set-ProvScheme -ProvisioningSchemeName "name" -MachineProfile "XDHyp:\HostingUnits\Unit1\machineprofile.folder\abc.resourcegroup\ab-machine-profile.vm" Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -StartsNow -DurationInMinutes -1 <!--NeedCopy-->
-
- カタログVMの電源をオンにします。
- Azureポータルに移動し、モニター拡張機能がVMにインストールされていること、およびVMがDCRのリソースに表示されていることを確認します。数分後、監視データがAzure Monitorに表示されます。
トラブルシューティング
Azure Monitor Agentのトラブルシューティングガイダンスについては、以下を参照してください。
- https://learn.microsoft.com/en-us/azure/azure-monitor/agents/azure-monitor-agent-troubleshoot-windows-vm/
- https://learn.microsoft.com/en-us/azure/azure-resource-manager/troubleshooting/create-troubleshooting-template/
Azure Spot VMを使用したカタログの作成
Azure Spot VMを使用すると、Azureの未使用のコンピューティング容量を大幅なコスト削減で活用できます。ただし、Azure Spot VMを割り当てる機能は、現在の容量と価格設定によって異なります。そのため、強制排除ポリシーに従って、Azureは実行中のVMを強制排除したり、VMの作成に失敗したり、VMの電源をオンにできなかったりする可能性があります。したがって、Azure Spot VMは、一部の重要でないアプリケーションやデスクトップに適しています。詳細については、Azure Spot Virtual Machinesの使用を参照してください。
制限事項
-
すべてのVMサイズがAzure Spot VMでサポートされているわけではありません。詳細については、制限事項を参照してください。
VMサイズがSpot VMをサポートしているかどうかを確認するには、次のPowerShellコマンドを実行します。VMサイズがSpot VMをサポートしている場合、
SupportsSpotVMはTrueになります。(Get-Item "XDHyp:\HostingUnits\azure-res-conn2\serviceoffering.folder\Standard_D2ds_v4.serviceoffering"). AdditionalData <!--NeedCopy--> -
現在、Azure Spot VMは休止状態をサポートしていません。
要件
Azure Spot VMカタログ用のマシンプロファイルソース(VMまたはテンプレート仕様)を作成する際、Azure Spot Instance(VMを使用する場合)を選択するか、priorityをSpot(テンプレート仕様を使用する場合)に設定する必要があります。
Azure Spot VMを使用したカタログ作成の手順
-
マシンプロファイルソース(VMまたは起動テンプレート)を作成します。
- Azureポータルを使用してVMを作成するには、Azureポータルを使用したAzure Spot Virtual Machinesのデプロイを参照してください。
-
テンプレート仕様を作成するには、テンプレート仕様のresources > type: Microsoft.Compute/virtualMachines > propertiesの下に次のプロパティを追加します。例:
"priority": "Spot", "evictionPolicy": "Deallocate", "billingProfile": { "maxPrice": 0.01 } <!--NeedCopy-->
注:
- 強制排除ポリシーは、割り当て解除または削除のいずれかです。
- 非永続VMの場合、MCSは常に強制排除ポリシーを削除に設定します。VMが強制排除されると、非永続ディスク(例:OSディスク)とともに削除されます。永続ディスク(例:IDディスク)は削除されません。ただし、カタログタイプが永続であるか、
PersistOsDiskカスタムプロパティがTrueに設定されている場合、OSディスクは永続です。同様に、PersistWbcカスタムプロパティがTrueに設定されている場合、WBCディスクは永続です。 - 永続VMの場合、MCSは常に強制排除ポリシーを割り当て解除に設定します。VMが強制排除されると、割り当て解除されます。ディスクに変更は加えられません。
- 最大価格は、1時間あたりに支払う意思のある価格です。容量のみを使用している場合、これは-1です。最大価格は、null、-1、またはゼロより大きい小数である必要があります。詳細については、価格を参照してください。
-
マシンプロファイルがAzure Spot VM対応であるかどうかを確認するには、次のPowerShellコマンドを実行します。
SpotEnabledパラメーターがTrueで、SpotEvictionPolicyがDeallocateまたはDeleteに設定されている場合、マシンプロファイルはAzure Spot VM対応です。例:-
マシンプロファイルソースがVMの場合、次のコマンドを実行します。
(Get-Item "XDHyp:\HostingUnits\azure-res-conn2\machineprofile.folder\fifthcolumn.resourcegroup\kb-spot-delete.vm"). AdditionalData <!--NeedCopy--> -
マシンプロファイルソースがテンプレート仕様の場合、次のコマンドを実行します。
(Get-Item "XDHyp:\HostingUnits\azure-res-conn2\machineprofile.folder\fifthcolumn.resourcegroup\fc-aeh-templatespec.templatespec\14.0.0-spot-delete.templatespecversion").AdditionalData <!--NeedCopy-->
-
-
New-ProvSchemePowerShellコマンドを使用して、マシンプロファイルでマシンカタログを作成します。
Set-ProvSchemeコマンドを使用してカタログを更新できます。また、Set-ProvVmUpdateTimeWindow PowerShellコマンドを使用して既存のVMを更新することもできます。マシンプロファイルは、次回の電源オン時に更新されます。
実行中のAzure Spot VMでの強制排除
コンピューティング容量が利用できない場合、または構成された最大価格よりも1時間あたりの価格が高い場合、Azureは実行中のSpot VMを強制排除します。デフォルトでは、強制排除の通知はされません。VMは単にフリーズし、強制排除されます。Microsoftは、強制排除を監視するためにScheduled Eventsを使用することを推奨しています。強制排除の継続的な監視を参照してください。VM内からスクリプトを実行して、強制排除前に通知を受け取ることもできます。たとえば、MicrosoftはPythonでポーリングスクリプトScheduledEvents.csを提供しています。
トラブルシューティング
-
Get-ProvVMコマンドを使用して、プロビジョニングされたVMのcustomMachineDataでSpot VMのプロパティを確認できます。優先度フィールドがSpotに設定されている場合、Spotが使用されています。 -
Azure PortalでVMがSpotを使用しているかどうかを確認できます。
- Azure PortalでVMを見つけます。
- 概要ページに移動します。
-
下までスクロールし、Azure Spotセクションを見つけます。
- Spotが使用されていない場合、このフィールドは空です。
- Spotが使用されている場合、Azure SpotおよびAzure Spot eviction policyフィールドが設定されます。
- VMの課金プロファイルまたは1時間あたりの最大価格は、[構成]ページで確認できます。
バックアップVMサイズの構成
パブリッククラウドでは、特定のVMサイズの容量が不足する場合があります。Azureの容量が不足している場合、MCSは事前に構成されたバックアップVMサイズのリストにフォールバックします。顧客がワークロード要件に合わせて調整したこの厳選されたリストにより、VMが以前に休止状態であった場合に、これらのサイズのいずれかが電源オンまたは再開時に起動するのに十分な容量を持つ可能性が高まります。
電源操作が開始されると、MCSは高可用性を確保するために自動フォールバックシーケンスを実装します。ワークフローは次のとおりです。
- 開始: ユーザーまたは管理者がWeb Studioを介してPowerOnまたはResumeコマンドを発行します。
- 例外監視: MCSはプライマリ構成を使用してVMを起動しようとします。Azureの容量または割り当てに関する障害など、特定のAzure容量例外を監視します。
- シーケンシャルフォールバック: 上記のいずれかのエラーが発生した場合、MCSはVMが正常に起動するまでBackupVmConfigurationリストを順次反復処理します。BackupVmConfiguration内のすべてのサイズが失敗した場合、電源操作は失敗としてマークされます。
-
更新と再作成のロジック:
- 直接更新: ほとんどの場合、MCSはバックアップSKUへの単純なVMサイズ更新を実行し、VMの電源をオンにします。
- 削除と再作成: 環境の整合性を維持するため、特定の移行では既存のVMを削除し、その場所に新しいVMを作成する必要があります。これは次の場合に発生します。
- Spot VMタイプと通常VMタイプを切り替える場合。
- リソースディスク(一時ストレージ)をサポートするVMサイズとサポートしないVMサイズを切り替える場合。
- データの永続性と回復: 「削除と再作成」操作中に、Azureの極端な容量不足によりすべてのバックアップサイズも失敗した場合、VMは一時的にAzure Portalから消えることがあります。ただし、データ損失は発生しません。次回のPowerOn試行時に、MCSは元の設定を使用してVMを再作成し、既存のOS、ID、およびデータディスクを再アタッチします。
- Spot VMの課金とMaxPriceの動作
プライマリ構成でSpot優先度と特定の課金プロファイル(MaxPrice)を持つマシンプロファイル(VMテンプレート)を使用している場合、フォールバック中に次のロジックが適用されます。
- プライマリサイズ: マシンプロファイルで定義されたMaxPriceを使用します。強制排除は価格または容量に基づきます。
- バックアップSpotサイズ: BackupVmConfigurationプロパティは現在、SKUごとに一意の`MaxPrice`入力をサポートしていないため、MCSは次のように移行を処理します。
- MaxPriceのリセット: MCSはMaxPriceを-1に設定します。
- 強制排除ポリシーの変更: これにより、Azureの強制排除動作が価格ベースから容量ベースに変更されます。
- 価格設定: 現在のSpot価格が課金され、そのバックアップSKUの標準的な従量課金制(PAYG)レートが上限となります。これにより、VMは価格変動のためではなく、Azureの物理容量が本当に不足した場合にのみ強制排除されることが保証されます。
- バックアップ状態の永続性: 一度起動すると、VMはシャットダウンまたは休止状態のリクエストが処理されるまで、セッション期間中バックアップサイズにとどまります。
- プライマリサイズの復元: 次回のPowerOnまたはResume時に、MCSは常にVMをプライマリサービスオファリング(カタログまたはマシンプロファイルで定義されている)に戻そうとします。プライマリサイズが利用できない場合、フォールバックシーケンスが繰り返されます。
休止状態に関する課題
Azureでは、一般的な制限で説明されているように、休止状態のVMのサイズ変更は許可されていません。VMは停止状態である必要があります。そのため、サイズを変更する前に、MCSは休止状態をクリアするためにDeallocateリクエストを発行し、これによりVMの休止状態が失われます。その後、MCSはバックアップサイズをループし、VMサイズを更新して電源をオンにします。
バックアップVMサイズがサポートされないシナリオ
次の構成はサポートされていません。
- 永続VMの場合、次のシナリオはサポートされていません。
- VMがDiskControllerType SCSIを使用しているが、バックアップVMサイズがDiskControllerType NVMeのみをサポートしている場合。
- VMがDiskControllerType NVMeを使用しているが、バックアップVMサイズがDiskControllerType SCSIのみをサポートしている場合。
- MCSIOが有効な非永続VMの場合、書き込みキャッシュディスクがリソースディスクの一時ストレージを使用している場合、一時ストレージのないサイズへの切り替えはサポートされていません。
バックアップVMサイズを構成するための前提条件
次のいずれかが満たされていない場合、エラーがスローされます。
- マシンプロファイルがマシンカタログで使用されている場合にのみサポートされます。
- タイプはオプションで、SpotまたはRegularのいずれかです。指定しない場合、デフォルトはRegularです。
- 構成の繰り返しを避けるため、ServiceOfferingの各組み合わせは一意である必要があります。
- リージョンクォータは、ServiceOfferingに十分なコアを持っている必要があります。
- ネットワークインターフェース数は、ServiceOfferingで許可されている最大数を超えてはなりません。
- このBackupVmConfigurationリスト内のServiceOfferingは、現在のカスタムプロパティ、マスターイメージの機能、およびマシンプロファイルと互換性がある必要があります。いくつかの失敗シナリオは次のとおりです。
- Azure Dedicated Hosts: 専用ホストが使用されている場合、ホストグループ内のホストはServiceOfferingをサポートする必要があります。
- Ephemeral OS Disk: カスタムプロパティで有効になっている場合、ServiceOfferingはEphemeral OS Diskをサポートする必要があります。
- Premium Storage: カスタムプロパティで指定されている場合、ServiceOfferingはPremium Storageをサポートする必要があります。
- Accelerated Networking: マシンプロファイルで有効になっている場合、ServiceOfferingはAccelerated Networkingをサポートする必要があります。
- DiskEncryptionAtHost: マシンプロファイルで有効になっている場合、ServiceOfferingはEncryption at Hostをサポートする必要があります。
- Temporary Storage: MCSIOが使用されており、書き込みキャッシュが一時ディスク上にある場合、一時ストレージを持たないVMサイズの使用は許可されません。
- HyperVGeneration: ServiceOfferingは、MasterImageVMで指定されたVM世代(1または2)と互換性がある必要があります。
- TrustedLaunch: マシンプロファイルで有効になっている場合、ServiceOfferingはTrustedLaunchをサポートする必要があります。
- Confidential VMs: マシンプロファイルで有効になっている場合、ServiceOfferingはConfidential VMをサポートする必要があります。
バックアップVMサイズを含むカタログの作成
注:
Studio UIがフリーズする問題を解決するには、PowerShellコマンドを実行する際に、すべてのシングルクォートを
"に置き換えてください。
- PowerShellウィンドウを開きます。
-
asnp citrix*を実行して、Citrix固有のPowerShellモジュールをロードします。 - ブローカーカタログを作成します。このカタログには、作成されるマシンが投入されます。
- IDプールを作成します。これは、作成されるマシン用に作成されたADアカウントのコンテナになります。
- マシンプロファイルを使用してプロビジョニングスキームを作成します。バックアップ構成の構成方法を参照してください。
- プロビジョニングスキームの一意のIDで
BrokerCatalogを更新します。 - VMを作成し、カタログに追加します。
既存のカタログの更新
Set-ProvSchemeコマンドを使用してプロビジョニングスキームを更新できます。バックアップ構成の構成方法を参照してください。
既存のVMの更新
既存のVMは、Set-ProvVMUpdateTimeWindow PowerShellコマンドレットを使用してカタログ内で更新できます。このコマンドは、カタログに関連付けられたプロビジョニングスキームから作成されたVMを、指定された時間枠内での次回の電源投入時に更新します。例:
Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -StartTimeInUTC "3/12/2022 3am" -DurationInMinutes 60`
<!--NeedCopy-->
Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -StartsNow -DurationInMinutes 60
<!--NeedCopy-->
Set-ProvVMコマンドを使用して、選択した数の既存のMCS VMのバックアップVMサイズリストを構成できます。ただし、アップデートを適用するには、Set-ProvVMUpdateTimeWindowを使用してVMの更新時間枠を設定し、その時間枠内でVMを起動する必要があります。例:
-
Set-ProvVMコマンドを実行して、選択した既存の MCS VM のバックアップ VM サイズリストを構成します。例:Set-ProvVM -ProvisioningSchemeName "name" -VMName "Vm-001" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`"xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"> <Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /> <Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"Premium_LRS`" /> <Property xsi:type=`"StringProperty`" Name=`"LicenseType`" Value=`"Windows_Server`"/> <Property xsi:type=`"StringProperty`" Name=`"PersistWBC`" Value=`"true`"/> <Property xsi:type=`"StringProperty`" Name=`"BackupVmConfiguration`" Value=`"[{"ServiceOffering": "Standard_D2as_v4", "Type": "Spot"}, {"ServiceOffering": "Standard_D2s_v3", "Type": "Regular"}, {"ServiceOffering": "Standard_D2s_v3", "Type": "Spot"}]`"/> </CustomProperties>" <!--NeedCopy--> -
Set-ProvVMUpdateTimeWindowコマンドを実行して、更新を適用します。例:Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -StartsNow -DurationInMinutes 60 <!--NeedCopy-->
すべてのリソースにタグをコピー
マシンプロファイルで指定されたタグを、新しい VM またはマシンカタログ内の既存の VM のすべてのリソース (複数の NIC やディスク (OS ディスク、ID ディスク、ライトバックキャッシュディスクなど)) にコピーできます。マシンプロファイルのソースは、VM または ARM テンプレート仕様にすることができます。
注:
タグをリソースに保持するには、タグにポリシーを追加するか (タグコンプライアンスのポリシー定義の割り当てを参照)、マシンプロファイルソースにタグを追加する必要があります。
前提条件
VM のタグ、ディスク、および NIC を持つマシンプロファイルソース (VM または ARM テンプレート仕様) を作成します。
- VM をマシンプロファイルの入力として使用する場合は、Azure ポータルで VM およびすべてのリソースにタグを適用します。Azure ポータルでタグを適用するを参照してください。
-
ARM テンプレート仕様をマシンプロファイルの入力として使用する場合は、各リソースの下に次のタグブロックを追加します。
"tags": { "TagC": "Value3" }, <!--NeedCopy-->
注:
テンプレート仕様には、最大 1 つのディスクと少なくとも 1 つの NIC を含めることができます。
新しいマシンカタログ内の VM のリソースへのタグのコピー
- VM または ARM テンプレート仕様をマシンプロファイルの入力として使用して、非永続または永続カタログを作成します。
-
カタログに VM を追加し、電源をオンにします。マシンプロファイルで指定されたタグが、その VM の対応するリソースにコピーされていることを確認する必要があります。
注:
マシンプロファイルで提供されている NIC の数と、VM で使用する NIC の数に不一致がある場合、エラーが発生します。
既存の VM のリソース上のタグの変更
- すべてのリソースにタグが付いたマシンプロファイルを作成します。
-
更新されたマシンプロファイルで既存のマシンカタログを更新します。例:
Set-ProvScheme -ProvisioningSchemeName <YourCatalogName> -MachineProfile <PathToYourMachineProfile> <!--NeedCopy--> - 更新を適用する VM の電源をオフにします。
-
VM のスケジュールされた更新を要求します。例:
Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName <YourCatalogName> -VMName machine1 -StartsNow -DurationInMinutes -1 <!--NeedCopy--> - VM の電源をオンにします。
- マシンプロファイルで指定されたタグが、対応するリソースにコピーされていることを確認する必要があります。
注:
マシンプロファイルで提供されている NIC の数と、
Set-ProvSchemeで提供されている NIC の数に不一致がある場合、エラーが発生します。
事前フォーマットされた WBC ディスクカタログの作成
プロビジョニングされたマシンの起動パフォーマンスを向上させるために、事前フォーマットされた WBC ディスクカタログを作成できます。この機能を実装するには、WBC が有効な Azure カタログを作成し、追加のカスタムプロパティ PreformatWriteBackCache を True として含めます。
Set-ProvScheme コマンドを使用して、既存のカタログを更新し、WBC ディスクサイズを更新できます。
この機能は、MCS がマスタリングフェーズを全体的なプロビジョニングワークフローから分離するイメージ管理ワークフローと互換性があります。イメージ管理の詳細については、イメージ管理を参照してください。
WBC が有効で PreformatWriteBackCache が True の Azure カタログを作成する例:
$customProperties = @'
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="PreformatWriteBackCache" Value="true" />
</CustomProperties>
'@
New-ProvScheme -CleanOnBoot `
-ProvisioningSchemeName "provisioningschemename" `
-HostingUnitName "hostingunitname" `
-IdentityPoolName "identitypoolnamename" `
-MasterImageVM "XDHyp:\HostingUnits\AzureHostingUnit\image.folder\rg.resourcegroup\masterImage.manageddisk" `
-CustomProperties $customProperties `
-NetworkMapping $networkMapping `
-UseWriteBackCache `
-WriteBackCacheDiskSize 30
<!--NeedCopy-->
既存のカタログの WBC ディスクキャッシュサイズを更新する例:
Set-ProvScheme -ProvisioningSchemeName provisioningschemename -WriteBackCacheDiskSize 127
<!--NeedCopy-->
MCSプロビジョニングされたCitrix Provisioning™カタログのシャットダウン時のWBCディスク削除
AzureでMCSプロビジョニングされたCitrix Provisioningカタログを作成する際、WBCディスクを非永続的(PersistWBCをFalseとして)にプロビジョニングできます。この構成により、AzureのMCSプロビジョニングされたCitrix ProvisioningカタログのVMをシャットダウンした後、ライトバックキャッシュ(WBC)ディスクを削除できます。
条件:
この機能が動作するためには、カスタムプロパティPreformatWriteBackCacheをTrueに設定する必要があります。
PersistWBCをFalse、PreformatWriteBackCacheをTrueとしてAzureカタログを作成する例:
$customProperties = @'
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="PersistWBC" Value="false" />
<Property xsi:type="StringProperty" Name="PreformatWriteBackCache" Value="true" />
</CustomProperties>
'@
New-ProvScheme -CleanOnBoot `
-ProvisioningSchemeName "provisioningschemename" `
-HostingUnitName "hostingunitname" `
-IdentityPoolName "identitypoolnamename" `
-MasterImageVM "XDHyp:\HostingUnits\AzureHostingUnit\image.folder\rg.resourcegroup\masterImage.manageddisk" `
-CustomProperties $customProperties `
-NetworkMapping $networkMapping `
-UseWriteBackCache `
-WriteBackCacheDiskSize 30
<!--NeedCopy-->
既存のカタログをSet-ProvSchemeコマンドを使用して更新し、PersistWBCカスタムプロパティを更新することもできます。
データディスクのプロビジョニング
AzureのMCSマシンカタログにおいて、MCSで作成された永続または非永続VMに永続データディスクを作成して割り当てることができます。
データディスクは、イメージソースとしてマネージドディスクからプロビジョニングする必要があります。
データディスクのプロパティ
データディスクは、プロパティがカスタムプロパティで指定されていない場合、カスタムプロパティまたはOSディスクテンプレートからプロパティを継承します。
-
カスタムプロパティから継承されるプロパティ
DiskEncryptionSetIdZonesStorageType
-
カスタムプロパティで指定されていない場合、OSディスクテンプレートから継承されるプロパティ
DiskEncryptionSetIdZonesStorageType
注:
- ゾーン冗長ストレージ (ZRS) がカスタムプロパティまたはOSディスクテンプレートで指定されていない場合、データディスクはOSディスクおよびIDディスクと同じゾーンに配置されます。
- タグはOSディスクテンプレートからのみ継承されます。
制限事項
現在、以下の操作はサポートされていません。
- 複数のデータディスクのプロビジョニング
- 非永続データディスクのプロビジョニング
- テンプレートを使用したデータディスクの作成
- データディスクを使用するための既存のカタログとVMの変更
- データディスクのリセット
- データディスクのイメージ更新
- マネージドディスク以外のソースの使用
- Azure Compute Gallery (ACG) へのデータディスクの保存
- データディスクに
StorageTypeAtShutdownを使用すること
データディスクを使用したカタログの作成
データディスクを持つMCSマシンカタログをプロビジョニングするには、New-ProvScheme PowerShellコマンドに以下のパラメーターを含めます。
-
DataDisk: 有効なManagedDiskタイプのインベントリアイテムへのパス -
DataDiskPersistence:DataDiskが永続的か非永続的かを示します。ただし、現在サポートされているのは永続データディスクのみです
例:
New-ProvScheme -CleanOnBoot -HostingUnitName "<HostingUnitName >" -IdentityPoolName "<IdentityPoolName >" -InitialBatchSizeHint 1 -MasterImageVM disk.manageddisk -NetworkMapping <NetworkMapping > -ProvisioningSchemeName "<ProvisioningSchemeName >" -DataDisk "XDHyp:\HostingUnits\Azure-Resources-1\image.folder\<resourcegroupname>\xxxx-datadisk.manageddisk" -DataDiskPersistence "Persistent" -Scope @() -VMCpuCount 4 -VMMemoryMB 6144 -TenancyType Shared -FunctionalLevel "L7_20"
<!--NeedCopy-->
データディスクが使用中かどうかの判断
データディスクがVMに割り当てられているかどうかを確認するには、以下を実行します。
-
Get-ProvVmを実行し、VMのCustomVmDataを確認します。VMがデータディスクを使用している場合、DiskRole.DataDiskの役割を持つディスクレコードがあります - AzureポータルのVMの下にデータディスクが存在するかどうかを確認します
データディスクの削除
カタログを削除すると、forgetVM または purgeDBOnly オプションを使用しない限り、データディスクは削除されます。VM を削除すると、forgetVM または purgeDBOnly オプションを使用しない限り、データディスクは削除されます。
アンマネージドディスクからマネージドディスクへの移行
2025 年 9 月 30 日に、Azure はアンマネージドディスク (VHD) のサポートを正式に終了します。期限後、アンマネージドディスクを使用している既存の VM はすべて停止され、割り当てが解除されます。
ただし、MCS でプロビジョニングされた VM をアンマネージドディスクからマネージドディスクに移行することで、Azure のアンマネージドディスク廃止計画によるサービス停止を回避できます。
VM に接続されているすべてのアンマネージドディスクが変換されます。これには、ID ディスク、OS ディスク、および WBC ディスク (使用されている場合) が含まれます。
Azure のアンマネージドディスク廃止計画の詳細については、「2025 年 9 月 30 日までに Azure アンマネージドディスクを移行する」を参照してください。
ユースケース
この機能は、永続および非永続の MCS プロビジョニングカタログに適用されます。
また、オンデマンド VM と非オンデマンド (レガシー) VM の両方の移行をサポートします。
- オンデマンド VM: 既存のディスクをアンマネージドディスクからマネージドディスクに移行し、Azure の更新されたサポートに合わせます。
- 非オンデマンド (レガシー) VM: レガシーまたは非オンデマンド VM はアンマネージドディスクのみをサポートします。この機能を使用して、レガシー VM をオンデマンドに変換すると同時に、マネージドディスクに移行します。
オンデマンドプロビジョニングの詳細については、「Azure オンデマンドプロビジョニング」を参照してください。
制限事項
- マシンカタログまたは VM がマネージドディスクに変換されると、アンマネージドディスクに戻すことはできません。
- 非オンデマンド (レガシー) VM の場合、移行プロセスにはオンデマンドプロビジョニングへの変換が含まれます。ディスクのみを変換して非オンデマンド VM を引き続き使用することはできません。
重要な考慮事項
- 変換は自動的には行われません。電源オン操作の一部として実行されます。
- VM に対して複数の更新が要求された場合、ディスク変換が優先されます。追加の更新は、次回の電源オンまで延期されます。
- VM が正常に変換され、電源がオンになると、コストを節約するために VM の VHD はクリーンアップされます。ストレージアカウント自体はクリーンアップされません。
- ベースディスクはストレージアカウントに残っている可能性があります。カタログの更新を実行すると、新しいスナップショット (または ACG) ベースディスクが作成されます。
- カタログ内のすべての VM が変換され、新しいベースディスクが作成されると、空のストレージアカウントを削除できます。
必要な権限
アンマネージドディスクからマネージドディスクへの変換を許可するには、Azure サービスプリンシパルで次の権限が必要です。
Microsoft.Compute/virtualMachines/convertToManagedDisks/write
<!--NeedCopy-->
構成手順
オンデマンドカタログの場合:
-
Set-ProvScheme(永続 VM の場合はSet-ProvVM) を実行して、UseManagedDisksをTrueに更新します。例:Set-ProvScheme -ProvisioningSchemeName "<provscheme-name>" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /></CustomProperties>" <!--NeedCopy-->Set-ProvVM -ProvisioningSchemeName "<provscheme-name>" -VMName "<vm-name>" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /></CustomProperties>" <!--NeedCopy--> -
Set-ProvVMUpdateTimeWindowを実行して更新を適用します。この例では、更新は VM の次回の電源オン時に適用されます。Set-ProvVmUpdateTimeWindow -ProvisioningSchemeName "<provscheme-name>" -VMName "<vm-name>" <!--NeedCopy--> -
VM の電源をオンにします。
非オンデマンド (レガシー) カタログの場合:
-
Set-ProvScheme(永続 VM の場合はSet-ProvVM) を実行して、DeploymentSchemaを1.1に構成します。例:Set-ProvScheme -ProvisioningSchemeName "<provscheme-name>" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"DeploymentSchema`" Value=`"1.1`" /></CustomProperties>" <!--NeedCopy-->Set-ProvVM -ProvisioningSchemeName "<provscheme-name>" -VMName "<vm-name>" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"DeploymentSchema`" Value=`"1.1`" /></CustomProperties> <!--NeedCopy--> -
アップデートを適用するために
Set-ProvVMUpdateTimeWindowを実行します。この例では、VM の次回の電源投入時にアップデートが適用されます。Set-ProvVmUpdateTimeWindow -ProvisioningSchemeName "<provscheme-name>" -VMName "<vm-name>" <!--NeedCopy--> -
VM の電源を投入します。
トラブルシューティング
VM がアンマネージドディスクからマネージドディスクへの変換に失敗した場合:
-
UseManagedDisksまたはDeploymentSchemaのカスタムプロパティが正しく設定されていることを確認します。-
Set-ProvSchemeを使用している場合は、Get-ProvSchemeを実行して ProvScheme のカスタムプロパティを確認します。詳細については、「Get-ProvScheme」を参照してください。 -
Set-ProvVMを使用している場合は、Get-ProvVMConfigurationを実行して、VM に更新されたカスタムプロパティを持つ新しい構成があることを確認します。詳細については、「Set-ProvVM」を参照してください。
-
-
Azure サービスプリンシパルに次の権限が存在することを確認します。
Microsoft.Compute/virtualMachines/convertToManagedDisks/write
-
プロビジョニングスキームの警告を表示するには、
Get-ProvOperationEventを実行します。詳細については、「Get-ProvOperationEvent」を参照してください。例:Get-ProvOperationEvent -LinkedObjectType ProvisioningScheme -LinkedObjectUid <your-provscheme-id> <!--NeedCopy-->
次のステップ
- これが最初に作成されたカタログである場合、デリバリーグループの作成に誘導されます。
- 構成プロセス全体を確認するには、「デプロイメントの計画と構築」を参照してください。
- カタログを管理するには、「マシンカタログの管理」および「Microsoft Azure カタログの管理」を参照してください。
詳細情報
この記事の概要
- マシンカタログの作成
- StudioでAzure Resource Managerイメージを使用してマシンカタログを作成
- Azureテンプレートスペックの作成
- マシンプロファイルをJSONファイルにエクスポート
- マシンプロファイルをAzureのARMテンプレートスペックとしてインポート
- 指定された可用性ゾーンへのマシンのプロビジョニング
- Azure エフェメラルディスク
- Azure Compute Gallery
- Azure 一時ディスクが書き戻しキャッシュディスクの対象となる条件
- Azureサーバー側暗号化
- ホストでのAzureディスク暗号化
- マネージドディスクでの二重暗号化
- Azureリソースグループ
- Azure Marketplace
- Azure Monitor AgentがインストールされたカタログVMのプロビジョニング
- Azure 機密 VM
- ブート整合性監視
- オンデマンド容量予約VMのカタログを作成
- 入れ子になった仮想化
- NVMe専用SKU
- PowerShellの使用
- PowerShellを使用したカタログの作成または更新でのテンプレート仕様
- Azure VM 拡張機能を有効にする
- トラステッド起動によるマシンカタログ
- マシンプロファイルプロパティ値の使用
- PowerShellを使用したアベイラビリティゾーンの構成
- Azure 専用ホストへの VM のプロビジョニング
- ストレージタイプの構成
- ゾーン冗長ストレージの有効化
- マシンプロファイルからのVMおよびNICの診断設定のキャプチャ
- Windows ライセンスの確認
- Linuxライセンスの構成
- Azureエフェメラルディスクを使用したマシンカタログの作成
- Azure Compute Galleryの構成
- VMあたり複数のNICを持つカタログの作成または更新
- 非永続的なライトバックキャッシュディスクを持つマシンカタログを作成
- 永続的な書き込みキャッシュディスクを持つマシンカタログを作成
- MCSIO で起動パフォーマンスを向上
- 顧客管理の暗号化キーを持つマシンカタログを作成
- ホストでの暗号化機能を持つマシンカタログの作成
- 二重暗号化によるマシンカタログの作成
- ページファイルの場所の決定
- ページファイル設定のシナリオ
- ページファイル設定の指定
- ページファイル設定の変更
- AMAが有効なカタログVMのプロビジョニング
- Azure Spot VMを使用したカタログの作成
- バックアップVMサイズの構成
- すべてのリソースにタグをコピー
- 事前フォーマットされた WBC ディスクカタログの作成
- MCSプロビジョニングされたCitrix Provisioning™カタログのシャットダウン時のWBCディスク削除
- データディスクのプロビジョニング
- アンマネージドディスクからマネージドディスクへの移行
- 次のステップ
- 詳細情報