Citrix DaaS

Microsoft Azureカタログの作成

2023年7月より、MicrosoftはAzure Active Directory(Azure AD)の名前をMicrosoft Entra IDに変更しました。 このドキュメントでは、Azure Active Directory、Azure AD、またはAADへの言及はすべて、Microsoft Entra IDを意味することになります。

マシンカタログの作成」では、マシンカタログを作成するウィザードについて説明します。 以下の情報は、Microsoft Azure Resource Managerクラウド環境に固有の詳細について説明しています。

Microsoft Azureカタログを作成する前に、Microsoft Azureへの接続の作成を完了する必要があります。 「Microsoft Azureへの接続」を参照してください。

マシンカタログの作成

マシンカタログは次の2つの方法で作成できます。

StudioでAzure Resource Managerイメージを使用してマシンカタログを作成する

これは、「マシンカタログの作成」のガイダンスを補完する情報です。

イメージは、マシンカタログ内にVMを作成するために使用されるAzure Compute Gallery内のイメージ定義のイメージバージョンの場合もあれば、ディスクまたはスナップショットの場合もあります。

マシンカタログを作成する前に、Azure Resource Managerでイメージを作成します。

  • 非管理ディスクを使用して仮想マシンをプロビジョニングすることは推奨されません。
  • ホスト接続で構成されたリージョンとは異なるリージョンからマスターイメージを使用することに対するサポートは、廃止されました。 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です。

マシンカタログ作成ウィザードで次の操作を行います:

  1. [マシンの種類] ページと [マシン管理] ページには、Azure固有の情報は含まれていません。 「マシンカタログの作成」のガイダンスに従ってください。

  2. [イメージ] ページで、カタログ内のすべてのマシンのマスターイメージとして使用するイメージを選択します。 [イメージの選択] ウィザードが表示されます。 イメージを選択するには、次の手順に従います:

    1. (テナント内またはテナント間で共有イメージを使用して構成された接続にのみ適用可能) イメージが存在するサブスクリプションを選択します。
    2. リソースグループの選択
    3. Azure管理対象ディスク、Azure Compute Gallery、またはAzureイメージバージョンに移動します。

    イメージを選択するときは、次の点を考慮してください:

    • Citrix VDAがイメージにインストールされていることを確認します。
    • VMに接続されているディスクを選択した場合は、次の手順に進む前にVMをシャットダウンする必要があります。

    • カタログにマシンを作成した接続(ホスト)のサブスクリプションは、緑色の点で示されます。 他のサブスクリプションは、Azure Compute Galleryをそのサブスクリプションと共有します。 これらのサブスクリプションでは、共有ギャラリーのみが表示されます。 共有サブスクリプションの構成方法については、「単一のテナント内(サブスクリプション間)での画像の共有」および「テナント間での画像の共有」を参照してください。
    • トラステッド起動で、WindowsでエフェメラルOSディスクを使用して、プロビジョニングスキームを作成できます。 トラステッド起動でイメージを選択する場合は、vTPMが有効になっているトラステッド起動でマシンプロファイルを選択する必要があります。 エフェメラルOSディスクを使用してマシンカタログを作成する方法については、「エフェメラルOSディスクを使用してマシンを作成する方法」を参照してください。
    • イメージのレプリケーション中に、先に進んでそのイメージをマスターイメージとして選択し、セットアップを完了することができます。 ただし、イメージのレプリケーション中は、カタログ作成完了までの時間が長くなることがあります。 MCSでは、カタログの作成開始から1時間以内にレプリケーションを完了する必要があります。 レプリケーションがタイムアウトすると、カタログの作成は失敗します。 レプリケーションステータスはAzureで確認できます。 レプリケーションがまだ保留中の場合、またはレプリケーションが完了した後で再試行してください。
    • Gen2イメージを使用してGen 2 VMカタログをプロビジョニングし、起動時のパフォーマンスを向上させることができます。 ただし、Gen1イメージを使用したGen2マシンカタログの作成はサポートされていません。 同様に、Gen2イメージを使用したGen1マシンカタログの作成もサポートされていません。 また、世代情報を持たない古いイメージはすべてGen1イメージです。

    カタログ内のVMがマシンプロファイルから構成を継承するかどうかを選択します。 デフォルトでは、[マシンプロファイルを使用する(Azure Active Directoryでは必須)] チェックボックスがオンになっています。 [マシンプロファイルを選択] を クリックして、リソースグループの一覧からVMまたはARMテンプレートスペックを参照します。

    VMがマシンプロファイルから継承できる構成の例として、次のようなものがあります:

    • 高速ネットワーク
    • ブート診断
    • ホストのディスクキャッシュ(OSおよびMCSIOディスク関連)
    • マシンサイズ(別途指定されていない場合)
    • VMに適用されたタグ

    • Azureでマシンカタログのマスターイメージを選択すると、選択されたマスターイメージに基づいてマシンプロファイルがフィルタリングされます。 たとえば、マシンプロファイルは、Windows OS、セキュリティの種類、休止のサポート、およびマスターイメージのディスク暗号化セットIDに基づいてフィルタリングされます。
    • トラステッド起動が有効になっているイメージまたはスナップショットを選択する場合は、[セキュリティの種類]としてトラステッド起動が選択されているマシンプロファイルを使用する必要があります。 次に、[マシンプロファイル]の値を指定することにより、SecureBootとvTPMを有効または無効にできます。 Azureのトラステッド起動について詳しくは、https://docs.microsoft.com/en-us/azure/virtual-machines/trusted-launchを参照してください。

    ARMテンプレートスペックを検証して、マシンカタログを作成するためにマシンプロファイルとして使用できるかどうかを確認します。 Azureテンプレートスペックの作成について詳しくは、「Azureテンプレートスペックの作成」を参照してください。

    ARMテンプレートスペックを検証する方法は2つあります:

    • After you select the ARM template spec from the resource group list, click Next. Error messages appear if the ARM template spec has errors.
    • Run one of the following PowerShell commands: - Test-ProvInventoryItem -HostingUnitName <string> -InventoryPath <string> - Test-ProvInventoryItem -HostingUnitUid <Guid> -InventoryPath <string>

         For example:
      
         Test-ProvInventoryItem -HostingUnitName "we-vdi0101-d-vnet" -InventoryPath machineprofile.folder/vdi01-d-rg.resourcegroup/VDD-templ-spec.templatespec/1.5.templatespecversion
       <!--NeedCopy-->
      

    カタログを作成した後、イメージがマシンプロファイルから継承している構成を表示できます。 [マシンカタログ] ノードで、カタログを選択して下部ペインに詳細を表示します。 次に、[テンプレートのプロパティ] タブをクリックしてマシンプロファイルのプロパティを表示します。 [タグ] セクションには、最大3つのタグが表示されます。 そのVMに配置されているすべてのタグを表示するには、[すべて表示] をクリックします。

    MCSでAzure専用ホストにVMをプロビジョニングする場合は、[ホストグループを使用する] チェックボックスをオンにし、リストからホストグループを選択します。 ホストグループは、専用ホストのコレクションを表すリソースです。 専用ホストは、1つまたは複数の仮想マシンをホストする物理サーバーを提供するサービスです。 サーバーはAzureサブスクリプション専用であり、他のサブスクライバーとは共有されません。 専用ホストを使用する場合、Azureは、VMがそのホストで実行されている唯一のマシンであることを保証します。 この機能は、規制または内部のセキュリティ要件を満たす必要があるシナリオに適しています。 ホストグループとそれらを使用する際の考慮事項について詳しくは、「Azure専用ホストでのVMのプロビジョニング」を参照してください。

    重要:

    • Azureの自動配置が有効になっているホストグループのみが表示されます。
    • ホストグループを使用すると、ウィザードの後半で表示される [Virtual Machines] ページが変更されます。 選択したホストグループに含まれるマシンサイズのみが、このページに表示されます。 また、アベイラビリティゾーンは自動的に選択され、選択できません。
  3. [ストレージとライセンスの種類] ページは、Azure Resource Managerイメージを使用するときのみ表示されます。

    マシンカタログに使用するストレージの種類は次のとおりです:

    • プレミアムSSD。 I/Oを多用するワークロードを持つVMに適した、高性能かつ低遅延のディスクストレージオプションを提供します。
    • 標準SSD。 低IOPSレベルで安定したパフォーマンスを必要とするワークロードに適した、コスト効率の高いストレージオプションを提供します。
    • 標準HDD。 遅延の影響を受けないワークロードを実行しているVMに対して、信頼性の高い低コストのディスクストレージオプションを提供します。
    • AzureエフェメラルOSディスク VMのローカルディスクを再利用してオペレーティングシステムディスクをホストする、コスト効率の高いストレージオプションを提供します。 または、PowerShellを使用して、エフェメラルOSディスクを使用するマシンを作成することもできます。 詳しくは、「Azureエフェメラルディスク」を参照してください。 エフェメラルOSディスクを使用する場合は、次の点を考慮してください:
      • AzureエフェメラルOSディスクとMCS I/Oを同時に有効にすることはできません。
      • エフェメラルOSディスクを使用するマシンを更新するには、サイズが仮想マシンのキャッシュディスクまたは一時的ディスクのサイズを超えないイメージを選択する必要があります。
      • ウィザードの後半で表示される [電源サイクル中に仮想マシンとシステムディスクを保持する] オプションを使用することはできません。

    IDディスクは、選択したストレージの種類に関係なく、常に標準SSDを使用して作成されます。

    ストレージの種類によって、ウィザードの [仮想マシン] ページに表示されるマシンのサイズが変わります。 MCSは、ローカル冗長ストレージ(LRS)を使用するようにプレミアムディスクと標準ディスクを構成します。 LRSは、単一のデータ センター内でデータの複数の同期コピーを作成します。 AzureエフェメラルOSディスクは、VMのローカルディスクを使用してオペレーティングシステムを格納します。 Azureのストレージの種類およびストレージの複製について詳しくは、以下のドキュメントを参照してください:

    既存のWindowsライセンスを使用するかLinuxライセンスを使用するかを選択します:

    • Windowsライセンス:WindowsライセンスとWindowsイメージ(Azureプラットフォームのサポートイメージまたはカスタムイメージ)を使用すると、AzureでWindows VMを低コストで実行できます。 ライセンスには次の2種類があります:

      • Windows Serverライセンス。 Windows ServerライセンスまたはAzure Windows Serverライセンスを使用できます。これにより、Azure Hybrid特典を使用できます。 詳しくは、https://azure.microsoft.com/en-us/pricing/hybrid-benefit/を参照してください。 Azure Hybrid特典を使用すると、AzureギャラリーからのWindows Server追加ライセンス料金が不要になるため、Azureでの仮想マシン実行コストを基本計算料金のみに抑えられます。

      • Windowsクライアントライセンス。 Windows 10ライセンスおよびWindows 11ライセンスをAzureに移行できるため、追加のライセンスなしでWindows 10 VMおよびWindows 11 VMをAzureで実行できます。 詳しくは、「クライアントアクセスライセンスと管理ライセンス」を参照してください。

    • Linuxライセンス:bring-your-own-subscription(BYOS)Linuxライセンスを使用すると、ソフトウェアの料金を支払う必要がありません。 BYOSの料金には、コンピューティングハードウェアの料金のみが含まれます。 ライセンスには次の2種類があります:

      • RHEL_BYOS:RHEL_BYOSの種類を正しく使用するには、AzureサブスクリプションでRed Hat Cloud Accessを有効にします。
      • SLES_BYOS:SLESのBYOSバージョンには、SUSEからのサポートが含まれています。

    以下を参照してください:

    ライセンスの種類と利点を理解するには、次のドキュメントを参照してください:

    Azure Compute Galleryは、イメージを管理および共有するためのリポジトリです。 これにより、組織全体でイメージを利用できるようになります。 大規模な永続的でないマシンカタログを作成する場合は、よりすばやくVDA OSディスクをリセットできるため、イメージをAzure Compute Galleryに保存することをお勧めします。 [準備されたイメージをAzure Compute Galleryに配置します] を選択すると、[Azure Computer Gallaryの設定] セクションが表示され、追加のAzure Computer Gallary設定を指定できます:

    • イメージレプリカに対する仮想マシンの比率。 Azureで保持するイメージレプリカに対する仮想マシンの比率を指定できます。 デフォルトでは、Azureは40台の非永続的なマシンごとに1つのイメージレプリカを保持します。 永続マシンの場合、その数はデフォルトで1,000になります。

    • 最大レプリカ数。 Azureで保持するイメージレプリカの最大数を指定できます。 デフォルトは100です。

    Azure Compute Galleryについて詳しくは、「Azure Compute Gallery」を参照してください。

    画像を保存するためにACGにギャラリーが作成されます。 このギャラリーは、仮想マシン作成用のMCSのみがアクセスでき、[イメージを選択] ページには表示されません。

  4. [仮想マシン] ページで、作成するVMの数とマシンサイズを指定します。 カタログ作成後、カタログを編集してマシンサイズを変更できます。

    プライマリマシンのサイズが処理能力の最大値に達したときに、セカンダリ仮想マシンを構成できるようになりました。 セカンダリ仮想マシンのサイズを構成するには、[セカンダリサイズ(オプション)]をクリックします。

    1. [セカンダリマシンのサイズ]ウィンドウで、一覧表示されている仮想マシンには、スポットVMタイプと通常のVMタイプの両方があります。 最大10台のセカンダリマシンのサイズを選択できます。 10台のVMを選択すると、表示されている他のVMは選択できなくなります。
    2. [次へ] をクリックします。 [セカンダリマシンのサイズ]ブレードでは、複数のマシンサイズを選択し、ドラッグアンドドロップして優先順位を変更できます。 [完了] をクリックします。 選択したマシンサイズが[セカンダリサイズ(オプション)]に表示されます。 編集アイコンをクリックして、必要に応じて編集します。

    • プライマリ仮想マシンに[一時ディスクのサイズ]プロパティが設定されている場合、[一時ディスクのサイズ]プロパティが設定されているセカンダリ仮想マシンのみが表示されます。
    • プライマリ仮想マシンに[一時ディスクのサイズ]プロパティが設定されていない場合、[一時ディスクのサイズ]プロパティがないセカンダリ仮想マシンが表示されます。
    • プライマリ仮想マシンを変更する場合は、セカンダリ仮想マシンを再構成する必要があります。
    • スポットをサポートしないセカンダリ仮想マシンのサイズは、次の条件のいずれかが一致する場合にのみ表示されます。それ以外の場合は、すべてのセカンダリ仮想マシンのサイズが表示されます:
    • プライマリ仮想マシンのサイズはスポットをサポートしていません
    • プライマリVMサイズはスポットをサポートしていますが、MPはスポットをサポートしていません
    • マシンプロファイルは休止状態をサポートします
  5. [NIC] ページには、Azure固有の情報は表示されません。 「マシンカタログの作成」のガイダンスに従ってください。
  6. [ディスク設定] ページで、ライトバックキャッシュを有効にするかどうかを選択します。 MCSストレージ最適化機能を有効にすると、カタログを作成するときに以下の設定を構成できます。

    ライトバックキャッシュを有効にした後、次の操作を実行できます:

    • 一時データのキャッシュに使用するディスクとRAMのサイズを構成する。 詳しくは、「一時データ用キャッシュの構成」を参照してください。

    • ライトバックキャッシュディスク用のストレージの種類を選択します。 ライトバックキャッシュディスクには、次のストレージのオプションを使用できます:

      • プレミアムSSD
      • 標準SSD
      • 標準HDD
    • プロビジョニングされたVMに対してライトバックキャッシュディスクを保持するかどうかを選択します。 このオプションを使用可能にするには、[ライトバックキャッシュを有効にする] を選択します。 デフォルトでは、[非永続的なライトバックキャッシュディスクを使用する] が選択されています。

    • ライトバックキャッシュディスクの種類を選択します。

      • 非永続的なライトバックキャッシュディスクを使用する。 選択した場合、ライトバックキャッシュディスクは電源サイクル中に削除されます。 リダイレクトされたデータはすべて失われます。 VMの一時ディスクに十分なスペースがある場合、それはライトバックキャッシュディスクのホストに使用され、コストを削減します。 カタログの作成後、プロビジョニングされたマシンが一時ディスクを使用しているかどうかを確認できます。 これを行うには、カタログをクリックして、[テンプレートのプロパティ] タブの情報を確認します。 一時ディスクが使用されている場合は、[非永続的なライトバックキャッシュディスク]が表示され、その値は[はい(VMの一時ディスクを使用)]になっています。 そうでない場合は、[非永続的なライトバックキャッシュディスク]が表示され、その値は[いいえ](VMの一時ディスクを使用しない)になっています。
      • 永続的なライトバックキャッシュディスクを使用する。 選択した場合、ライトバックキャッシュディスクは、プロビジョニングされたVMで保持されます。 このオプションを有効にすると、ストレージコストが増加します。

      次のすべての条件が満たされている場合、カタログではWBCディスクにAzure一時ディスクが自動的に使用されます:

      • MCSIOが有効になっている。
      • WBCディスクが非永続的である。
      • VMのサイズに、WBCディスクに十分な大きさの一時ディスクが含まれる。
      • WBCディスクにドライブ文字が指定されていない。

      この機能はカタログの作成と編集の両方に適用され、ストレージコストの削減に役立ちます。

    • Choose whether to retain VMs and system disks for VDAs during power cycles.

         **Retain VM and system disk during power cycles.** Available when you've selected **Enable write-back cache**.   By default, VMs and the system disks are deleted on shutdown and recreated on startup.   If you want to reduce VM restart times, select this option.   Keep in mind that enabling this option also increases storage costs.
      
    • Choose whether to Enable storage cost saving. If enabled, save storage costs by downgrading the storage disk to Standard HDD when the VM shuts down. The VM switches to its original settings on restart. The option applies to both storage and write-back cache disks. Alternatively, you can also use PowerShell. See Change the storage type to a lower tier when a VM is shut down.

         > **Note:**
         >
         > Microsoft imposes restrictions on changing the storage type during VM shutdown.   It's also possible that Microsoft will block storage type changes in the future.   For more information, see this [Microsoft article](https://learn.microsoft.com/ja-jp/azure/virtual-machines/disks-convert-types?tabs=azure-powershell#restrictions).
      
    • Choose whether to encrypt data on machines in this catalog and which encryption key to use. Server-side encryption with a customer-managed key (CMK) lets you manage encryption at a managed disk level and protect data on the machines in the catalog. Default settings are inherited from either the machine profile or the master image, with the profile taking priority:

         -  If you're using a *machine profile* with a *CMK*, the **Use the following key to encrypt data on each machine** option is auto-selected and defaults to the key from the *machine profile*.
         -  If you're using a *machine profile* with a Platform Managed Key (PMK) and the *master image* is *CMK* encrypted, the **Use the following key to encrypt data on each machine** option is auto-selected and defaults to the key from the master image.
         -  If you're *not* using a *machine profile* and the *master image* is *CMK* encrypted, the **Use the following key to encrypt data on each machine** option is auto-selected and defaults to the key from the *master image*.
      

    詳しくは、「Azureサーバー側暗号化」を参照してください。

  7. [リソースグループ] ページで、リソースグループを作成するか、既存のグループを使用するかを選択します。

    • リソースグループを作成する場合は、[次へ] を選択します。
    • 既存のリソースグループを使用する場合は、[使用可能なプロビジョニングリソースグループ]ボックスの一覧からグループを選択します。

    カタログで作成しているマシンを収容するのに十分なグループを選択してください。 選択が少なすぎると、メッセージが表示されます。 後でカタログにさらにVMを追加する予定がある場合は、必要最小限よりも多く選択しておくことをお勧めします。 カタログが作成された後、カタログにリソースグループをさらに追加することはできません。

    詳しくは、「Azureリソースグループ」を参照してください。

  8. [マシンID] ページでIDの種類を選択し、このカタログ内のマシンのIDを設定します。 [Azure Active Directory参加] として仮想マシンを選択すると、それらをAzure ADセキュリティグループに追加できます。 詳細な手順は次のとおりです:

    1. [IDの種類] フィールドから、[Azure Active Directory参加] を選択します。 [Azure ADセキュリティグループ(オプション)] オプションが表示されます。
    2. [Azure ADセキュリティグループ:新規作成]をクリックします。
    3. グループ名を入力して、[作成] をクリックします。
    4. 画面の指示に従って、Azureにサインインします。 グループ名がAzureに存在しない場合は、緑色のアイコンが表示されます。 それ以外の場合は、新しい名前の入力を求めるエラーメッセージが表示されます。
    5. 割り当て済みセキュリティ グループにこのセキュリティグループを追加するには、[割り当て済みのセキュリティグループをメンバーとして参加させる] を選択し、[グループの選択] をクリックしててから、参加させる割り当て済みグループを選択します。
    6. 仮想マシンのマシンアカウント名前付けスキームを入力します。

    カタログの作成後、Citrix DaaSはユーザーに代わってAzureにアクセスし、セキュリティグループとグループの動的メンバーシップ規則を作成します。 この規則に基づいて、このカタログで指定された名前付けスキームの仮想マシンがセキュリティグループに自動的に追加されます。

    このカタログに別の名前付けスキームの仮想マシンを追加するには、Azureにサインインする必要があります。 その後、Citrix DaaSはAzureにアクセスし、新しい名前付けスキームに基づいて動的メンバーシップ規則を作成できます。

    このカタログを削除する場合、Azureからセキュリティグループを削除するには、Azureへのサインインも必要です。

    カタログの作成後にAzure ADセキュリティグループの名前を変更するには、カタログを編集し、左側のナビゲーションから [Azure ADセキュリティグループ] に移動します。 Azure ADセキュリティグループの名前には、次の文字を含めることはできません:@ " \ / ; : # . * ? = {\[--lt--]} &gt; | [ \] ( ) '

  • [ドメイン資格情報] ページおよび [概要] ページには、Azure固有の情報は表示されません。 「マシンカタログの作成」のガイダンスに従ってください。

ウィザードを完了します。

Azureテンプレートスペックを作成する

Azure PortalでAzureテンプレートスペックを作成し、それをStudioとPowerShellコマンドで使用して、MCSマシンカタログを作成または更新できます。

既存の仮想マシンのAzureテンプレートスペックを作成するには、以下の手順に従います:

  1. Azure Portalに移動します。 リソースグループを選択してから、仮想マシンとネットワークインターフェイスを選択します。 上の[…] メニューで、[Export template]をクリックします。
  2. カタログプロビジョニング用のテンプレートスペックを作成する場合は、[Include parameters] チェックボックスをオフにします。
  3. テンプレートスペックを後で変更するには、[Add to library] をクリックします。
  4. [Importing template] ページで、NameSubscriptionResource GroupLocationVersionなどの必要な情報を入力します。 [Next: Edit Template] をクリックします。
  5. カタログをプロビジョニングする場合は、独立したリソースとしてネットワークインターフェイスも必要です。 したがって、テンプレートスペックで指定されているdependsOnを削除する必要があります。 次に例を示します:

      "dependsOn": [
      "[resourceId('Microsoft.Network/networkInterfaces', 'tnic937')]"
      ],
    <!--NeedCopy-->
    
  6. [Review+Create] を作成してテンプレートスペックを作成します。
  7. [Template Specs] ページで、作成したテンプレートスペックを確認します。 テンプレートスペックをクリックします。 左側のパネルで、[Versions] をクリックします。
  8. [Create new version] をクリックして、新しいバージョンを作成できます。 新しいバージョン番号を指定し、現在のテンプレートスペックを変更して、[Review + Create] をクリックし、新しいバージョンのテンプレートスペックを作成します。

次の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マシンカタログを作成または更新できます。 このために、次の操作を実行できます:

マシンプロファイルをJSONファイルにエクスポートする

カタログで使用されるマシンプロファイルをJSONファイルにエクスポートできます。 この機能により、プロファイルをカスタマイズし、将来のプロビジョニングに備えてARMテンプレートスペックとしてAzureにインポートできます。

  1. [マシンカタログ]ページで、カタログを選択して下部ペインに詳細を表示します。
  2. [テンプレートプロパティ]タブをクリックしてマシンプロファイルのプロパティを表示し、[エクスポート]をクリックします。
  3. ローカルコンピューター上のパスを指定して、マシンプロファイルをJSONファイルとして保存します。

マシンプロファイルをAzureのARMテンプレートスペックとしてインポートする

  1. Azureポータルで、[テンプレートスペック]を選択し、 [テンプレートのインポート]をクリックします。
  2. コンピューターに保存されているマシンプロファイル(JSON形式)を参照してインポートします。
  3. インポートするテンプレートにNameSubscriptionResource GroupLocationVersionを入力し、[Review + Create]をクリックします。 テンプレートは検証され、正常にインポートされます。 インポートされたテンプレートは[テンプレートスペック]に表示されます。

マシンプロファイルを使用してマシンカタログを作成する場合、プロファイルを選択するとこのテンプレートが表示されます。 詳しくは、カタログの作成または更新でテンプレートスペックを使用するを参照してください。

指定されたアベイラビリティゾーンへのマシンのプロビジョニング

Azure環境の特定のアベイラビリティゾーンにマシンをプロビジョニングできます。 これは、StudioまたはPowerShellを使用して実現できます。

ゾーンが指定されていない場合、MCSはAzureにマシンをリージョン内に配置させます。 複数のゾーンが指定されている場合、MCSはマシンをそれらにランダムに分散します。

Studioでのアベイラビリティゾーンの構成

マシンカタログを作成するときに、マシンをプロビジョニングするアベイラビリティゾーンを指定できます。 [仮想マシン] ページで、マシンを作成するアベイラビリティゾーンを1つ以上選択します。

アベイラビリティゾーンが使用できない理由は2つあります:リージョンにアベイラビリティゾーンがないか、選択したマシンサイズが使用できないことです。

PowerShellコマンドを使用した構成について詳しくは、「PowerShellを使用したアベイラビリティゾーンの構成」を参照してください。

Azureエフェメラルディスク

Azureエフェメラルディスクを使用すると、キャッシュディスクまたは一時ディスクを再利用して、Azure対応の仮想マシンのOSディスクを保存できます。 この機能は、標準のHDDディスクよりも高性能のSSDディスクを必要とするAzure環境で役立ちます。 Azureエフェメラルディスクを使用したカタログの作成については、「Azureエフェメラルディスクを使用したカタログの作成」を参照してください。

永続カタログでは、エフェメラルOSディスクはサポートされていません。

エフェメラルOSディスクでは、プロビジョニングスキームで管理対象ディスクとAzure Compute Galleryを使用する必要があります。 詳しくは、「Azure Shared Image Gallery」を参照してください。

エフェメラルOS一時ディスクの保存

エフェメラルOSディスクをVM一時ディスクまたはリソースディスクに保存するオプションがあります。 この機能により、キャッシュがないか、キャッシュが不十分なVMで、エフェメラルOSディスクを使用できます。 このようなVMには、Ddv4などのエフェメラルOSディスクを保存するための一時ディスクまたはリソースディスクがあります。

以下に注意してください:

  • エフェメラルディスクは、VMキャッシュディスクまたはVMの一時(リソース)ディスクのいずれかに保存されます。 キャッシュディスクがOSディスクの内容を保持するのに十分な大きさでない場合を除き、キャッシュディスクは一時ディスクよりも優先されます。
  • 更新の際は、キャッシュディスクよりも大きいが一時ディスクよりも小さい新しいイメージにより、エフェメラルOSディスクがVMの一時ディスクに置き換えられます。

AzureエフェメラルディスクとMachine Creation Services(MCS)ストレージ最適化(MCS I/O)

AzureエフェメラルOSディスクとMCS I/Oを同時に有効にすることはできません。

重要な考慮事項は次のとおりです:

  • エフェメラルOSディスクとMCS I/Oの両方を同時に有効にしてマシンカタログを作成することはできません。
  • マシンカタログのセットアップウィザードで、[ストレージとライセンスの種類] ページの [AzureエフェメラルOSディスク] を選択した場合、[ディスク設定] ページでライトバックキャッシュディスク のオプションは使用できません。

    AzureエフェメラルOSディスクを選択

    ライトバックキャッシュディスク設定が使用できない

  • PowerShellパラメーター(UseWriteBackCacheUseEphemeralOsDisk)をNew-ProvSchemeまたはSet-ProvSchemetrueに設定すると、適切なエラーメッセージが表示され失敗します。
  • 両方の機能を有効にして作成した既存のマシンカタログについては、次のことができます:
    • マシンカタログの更新。
    • VMの追加または削除。
    • マシンカタログの削除。

Azureにおいて、MCSでプロビジョニングされたマシンの公開イメージリポジトリとしてAzure Shared Image Gallery(旧称:Shared Image Gallery)を使用します。 公開イメージをギャラリーに保存して、OSディスクの作成とハイドレーションを高速化し、非永続仮想マシンの起動時間とアプリケーションの起動時間を改善できます。 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 Galleryyからイメージにアクセスする

マシンカタログの作成に使用するイメージを選択するときに、Azure Compute Galleryで作成したイメージを選択できます。 これらのイメージは、マシンカタログインストールウィザードの [イメージ] ページのイメージ一覧に表示されます。

これらのイメージを表示するには、次のことを行う必要があります:

  1. Citrix DaaSをセットアップします。
  2. Azure Resource Managerに接続します。
  3. Azureポータルで、リソースグループを作成します。 詳しくは、「ポータルを使用してAzure Shared Image Galleryを作成する」を参照してください。
  4. リソースグループで、Azure Compute Galleryを作成します。
  5. Azure Compute Galleryで、イメージ定義を作成します。
  6. イメージ定義で、イメージバージョンを作成します。

Azure Compute Galleryについて詳しくは、「Configure Azure Compute Gallery」を参照してください。

Azure一時ディスクをライトバックキャッシュディスクとして使用するための条件

次のすべての条件が満たされている場合にのみ、Azure一時ディスクをライトバックキャッシュディスクとして使用できます:

  • Azure一時ディスクは永続データには適していないため、ライトバックキャッシュディスクは非永続である必要があります。
  • 選択したAzure VMのサイズには、一時ディスクが含まれている必要があります。
  • エフェメラルOSディスクを有効にする必要はありません。
  • ライトバックキャッシュファイルをAzure一時ディスクに保存することを受け入れます。
  • Azure一時ディスクのサイズは、「ライトバックキャッシュディスクサイズ + ページングファイル用に予約されたスペース + 1GBのバッファスペース」の合計サイズよりも大きい必要があります。

非永続的なライトバックキャッシュディスクのシナリオ

次の表は、マシンカタログの作成中に一時ディスクがライトバックキャッシュに使用される場合の3つの異なるシナリオを示しています。

シナリオ 結果
ライトバックキャッシュに一時ディスクを使用するためのすべての条件が満たされている。 WBCファイルmcsdif.vhdxは一時ディスクに保存されます。
一時ディスクに、ライトバックキャッシュを使用するための十分なスペースがない。 VHDディスク「MCSWCDisk」が作成され、WBCファイルmcsdif.vhdxがこのディスクに配置されます。
一時ディスクに、ライトバックキャッシュを使用するための十分なスペースがあるが、UseTempDiskForWBCはfalseに設定されている。 VHDディスク「MCSWCDisk」が作成され、WBCファイルmcsdif.vhdxがこのディスクに配置されます。

次のPowerShellトピックを参照してください:

Azureサーバー側暗号化

Citrix DaaSは、Azure Key Vaultを使用してAzure Managed Disksの顧客が管理する暗号化キーをサポートします。 このサポートにより、独自の暗号キーを使用してマシンカタログの管理対象ディスクを暗号化して、組織およびコンプライアンスの要件を管理できます。 詳しくは、「Azure Disk Storageのサーバー側暗号化」を参照してください。

管理対象ディスクにこの機能を使用する場合:

  • ディスクが暗号化されているキーを変更するには、DiskEncryptionSetの現在のキーを変更します。 DiskEncryptionSetに関連付けられているすべてのリソースは、新しいキーで暗号化されるように変更されます。

  • キーを無効にするか削除すると、そのキーを使用するディスクのあるVMはすべて自動的にシャットダウンします。 シャットダウン後、キーを再度有効にするか、新しいキーを割り当てない限り、VMは使用できません。 このキーを使用するカタログの電源をオンにすることはできません。また、VMをカタログに追加することもできません。

顧客が管理する暗号化キーを使用する場合の重要な考慮事項

この機能を使用するときは、次のことに注意してください:

  • 顧客が管理するキーに関連するすべてのリソース(Azure Key Vault、ディスク暗号化セット、VM、ディスク、スナップショット)は、同じサブスクリプションとリージョンに配置される必要があります。
  • 顧客が管理するキーで暗号化されたディスク、スナップショット、イメージは、別のリソースグループおよびサブスクリプションに移動できません。
  • リージョンごとのディスク暗号化セットの制限については、Microsoft社のサイトを参照してください。

Azureサーバー側暗号化の構成については、「クイックスタート:Azure Portalを使用してキーコンテナを作成する」を参照してください。

Azureの顧客が管理する暗号キー

マシンカタログを作成するときに、カタログでプロビジョニングされるマシンのデータを暗号化するかどうかを選択できます。 顧客が管理する暗号化キーを使用したサーバー側暗号化により、管理対象ディスクレベルで暗号化を管理し、カタログ内のマシン上のデータを保護できます。 ディスク暗号化セット(DES)は、顧客が管理するキーを表します。 この機能を使用するには、最初にAzureでDESを作成する必要があります。 DESの形式は次のとおりです:

  • /subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/Sample-RG/providers/Microsoft.Compute/diskEncryptionSets/SampleEncryptionSet

一覧からDESを選択します。 選択したDESは、リソースと同じサブスクリプションおよびリージョンに存在する必要があります。

暗号化キーを使用してカタログを作成し、後でAzureで対応するDESを無効にすると、カタログ内のマシンの電源をオンにしたり、カタログにマシンを追加したりできなくなります。

顧客管理暗号キーを使用したマシンカタログの作成」を参照してください。

ホストでのAzureディスク暗号化

ホスト機能での暗号化を使用して、MCSマシンカタログを作成できます。 現在、MCSはこの機能でマシンプロファイルワークフローのみをサポートします。 VMまたはテンプレートスペックをマシンプロファイルの入力として使用できます。

この暗号化方法は、Azure Storageでデータを暗号化しません。 VMをホストするサーバーがデータを暗号化し、暗号化されたデータがAzure Storageサーバーを通過します。 つまり、この暗号化方法はデータをエンドツーエンドで暗号化します。

制限:

ホストでのAzureディスク暗号化は:

  • すべてのAzureマシンサイズでサポートされているわけではありません
  • Azure Disk Encryptionと互換性がありません

詳しくは、次のトピックを参照してください:

管理対象ディスクの二重暗号化

二重暗号化を使用してマシンカタログを作成できます。 この機能を使用して作成されたカタログでは、すべてのディスクがプラットフォームキーと顧客管理キーの両方によってサーバー側で暗号化されています。 Azure Key Vault、暗号キー、およびディスク暗号化セット(DES)は、顧客が所有し、維持します。

二重暗号化とは、プラットフォーム側の暗号化(デフォルト)と顧客管理の暗号化(CMEK)です。 したがって、暗号化アルゴリズム、実装、またはキーの侵害に関するリスクを懸念している、セキュリティに非常に敏感なお客様は、この二重暗号化を選択できます。 永続的OSディスクとデータディスク、スナップショット、イメージはすべて二重暗号化により保存時に暗号化されます。

  • Studioを使用するか、PowerShellコマンドを実行することで、二重暗号化を使用してマシンカタログを作成し、更新できます。
  • 二重暗号化を使用してマシンカタログを作成または更新するには、非マシンプロファイルベースのワークフローまたはマシンプロファイルベースのワークフローを使用できます。
  • 非マシンプロファイルベースのワークフローを使用してマシンカタログを作成する場合は、保存されているDiskEncryptionSetIdを再利用できます。
  • マシンプロファイルを使用する場合は、VMまたはテンプレートスペックをマシンプロファイルの入力に使用できます。

制限事項

  • 二重暗号化は、Ultra DiskまたはPremium SSD v2ディスクではサポートされていません。
  • 二重暗号化は、非管理ディスクではサポートされません。
  • カタログに関連付けられているディスク暗号化セットキーを無効にすると、カタログのVMが無効になります。
  • 顧客が管理するキーに関連するすべてのリソース(Azure Key Vault、ディスク暗号化セット、VM、ディスク、スナップショット)は、同じサブスクリプションとリージョンに存在する必要があります。
  • サブスクリプションごとに、リージョンあたり最大50のディスク暗号化セットのみを作成できます。

次のPowerShellトピックを参照してください:

Azureリソースグループ

Azureプロビジョニングのリソースグループは、アプリケーションとデスクトップをユーザーに提供するVMをプロビジョニングする方法を提供します。 リソースグループを作成するか、既存のリソースグループを使用してMCSマシンカタログ内の仮想マシンをプロビジョニングできます。 同じリソースグループを複数のマシンカタログで使用できます。 Azureリソースグループについて詳しくは、Microsoft社のドキュメントを参照してください。

Azureリソースグループの使用

Azureリソースグループごとの仮想マシン、管理対象ディスク、スナップショット、およびイメージの数に制限はありません (Azureリソースグループごとに仮想マシンは240、管理対象ディスクは800という数の制限はなくなりました)。

  • フルスコープのサービスプリンシパルを使用してマシンカタログを作成する場合、MCSは1つのAzureリソースグループのみを作成し、カタログのこのグループを使用します。
  • スコープの狭いサービスプリンシパルを使用してマシンカタログを作成する場合、事前に作成された空のAzureリソースグループを指定する必要があります。

Azure Marketplace

Citrix DaaSは、マシンカタログを作成するためのプラン情報を含むAzure上のマスターイメージの使用をサポートしています。 詳しくは、Microsoft Azure Marketplaceを参照してください。

ヒント:

標準のWindows Serverイメージなど、Azure Marketplaceにある一部のイメージには、プラン情報が追加されていません。 Citrix DaaS機能は有料イメージ用です。

Azure Compute Galleryで作成されたイメージにAzureプラン情報が含まれていることを確認する

このセクションの手順を使用して、StudioでAzure Compute Galleryのイメージを表示します。 これらのイメージは、マスターイメージに使用することもできます。 イメージをAzure Compute Galleryに追加するには、ギャラリーでイメージ定義を作成します。

Azure Marketplace、Shared Image Gallery

[公開オプション] ページで、購入プラン情報を確認します。

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

Azure MarketplaceでのVDA公開オプションの確認

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

Azure Marketplace、VDAバージョンの追加

[バージョンの詳細] セクションで、ソースとしてイメージスナップショットか管理対象ディスクを選択します:

Azure Marketplace、VDAオプションの選択

[Azure MonitorエージェントがインストールされたカタログVMをプロビジョニングする]

Azureの監視は、Azure環境および社内のオンプレミス環境からテレメトリデータを収集、分析し、それに基づいて操作するために使用できるサービスです。

Azure Monitorエージェント(AMA)は、仮想マシンなどのコンピューティングリソースから監視データを収集し、そのデータをAzure Monitorに配信します。 現在、イベントログ、Syslog、パフォーマンスメトリックの収集がサポートされており、収集した結果をAzure MonitorメトリックとAzure Monitor Logのデータソースとして送信します。

監視データ内のVMを一意に識別して監視を有効にするには、AMAを拡張機能としてインストールしてMCSマシンカタログのVMをプロビジョニングします。

要件

  • 権限: 「Azureの権限について」で規定されている最小限のAzureの権限と、Azure Monitorを使用するための次の権限を持っていることを確認します:

    • Microsoft.Compute/virtualMachines/extensions/read
    • Microsoft.Compute/virtualMachines/extensions/write
    • Microsoft.Insights/DataCollectionRuleAssociations/Read
    • Microsoft.Insights/dataCollectionRuleAssociations/write
    • Microsoft.Insights/DataCollectionRules/Read
  • データ収集規則(DCR):Azure Portalでデータ収集規則を設定します。 DCRの設定について詳しくは、「データ収集規則の作成」を参照してください。 DCRはプラットフォーム(WindowsまたはLinux)に固有です。 必要なプラットフォームに応じたDCRを必ず作成してください。 AMAはデータ収集規則(DCR)を使用して、VMなどのリソースと、Azure MonitorメトリックやAzure MonitorのLog Analyticsエージェントなどのデータ ソースとのマッピングを管理します。
  • デフォルトのワークスペース:Azure Portalでワークスペースを作成します。 ワークスペースの作成については、「 Log Analyticsワークスペースの作成」を参照してください。 収集したログとデータの情報は、ワークスペースに保存されます。 ワークスペースは、一意のワークスペースIDとリソースIDを持っています。 ワークスペース名は、特定のリソースグループに対して固有のものにする必要があります。 ワークスペースを作成した後、データがワークスペースに保存されるようにデータソースとソリューションを構成します。
  • モニター拡張機能を許可リストに登録しました:拡張機能AzureMonitorWindowsAgentおよびAzureMonitorLinuxAgentが、Citrixが定義している許可リストに登録されました。 許可リストに登録されている拡張機能の一覧を表示するには、PowerShellコマンドGet-ProvMetadataConfigurationを使用します。
  • マスターイメージ:Microsoftでは、既存のマシンから新しいマシンを作成する前に、既存のマシンから拡張機能を削除することを推奨しています。 拡張子を削除しないと、ファイルが残ったり、予期しない動作が行われたりする可能性があるからです。 詳しくは、「 既存のVMを再作成する場合」を参照してください。

PowerShellを使用してAMAを有効にしたカタログを作成する方法については、「AMAを有効にしたカタログVMのプロビジョニング」を参照してください。

Azure Confidential VM

Azure Confidential Computing VMによって、仮想デスクトップは確実にメモリ内で暗号化され、使用中に保護されます。

MCSを使用して、Azure Confidential VMを含むカタログを作成できます。 このようなカタログを作成するには、マシンプロファイルワークフローを使用する必要があります。 VMとARMテンプレートスペックの両方をマシンプロファイル入力として使用できます。

Confidential VMに関する重要な考慮事項

サポートされるVMサイズと、Confidential VMを含むマシンカタログの作成に関する重要な考慮事項は次のとおりです:

  • Confidential VMsがサポートする仮想マシンのサイズを確認するには、「サイズ」を参照してください。

  • Confidential VMを含むマシンカタログを作成します。

    • StudioとPowerShellコマンドを使用することで、Azure Confidential VMを使用してマシンカタログを作成できます。
    • Azure Confidential VMでマシンカタログを作成するには、マシンプロファイルベースのワークフローを使用する必要があります。 VMまたはテンプレートスペックをマシンプロファイルの入力として使用できます。
    • マスターイメージとマシンプロファイル入力は両方とも同じ機密のセキュリティの種類で有効にする必要があります。 セキュリティの種類は次のとおりです:

      • VMGuestStateOnly:VMゲスト状態のみが暗号化されたConfidential VM
      • DiskWithVMGuestState:OSディスクとVMゲスト状態の両方がプラットフォーム管理キーまたは顧客管理キーで暗号化されたConfidential VM。 通常のOSディスクとエフェメラルOSディスクの両方を暗号化できます。
    • AdditionalDataパラメーターを使用すると、管理対象ディスク、スナップショット、Azure Compute Galleryイメージ、VM、ARMテンプレートスペックなど、さまざまなリソースの種類のConfidential VM情報を取得できます。 次に例を示します:

         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

      マシンサイズのConfidential Computingプロパティを取得するには、次のコマンドを実行します:(Get-Item -path "XDHyp:\Connections\my-connection-name\East US.region\serviceoffering.folder\abc.serviceoffering").AdditionalData

      追加のデータフィールドはConfidentialComputingTypeです。

    • マスターイメージまたはマシンプロファイルを機密のセキュリティの種類から機密以外のセキュリティ種類に、または機密以外のセキュリティに酒類から機密のセキュリティの種類に変更することはできません。
    • 構成が正しくない場合は、適切なエラーメッセージが表示されます。

マスターイメージとマシンプロファイルを準備する

Confidential VMのセットを作成する前に、次の手順に従ってそれらのマスターイメージとマシンプロファイルを準備します:

  1. Azureポータルで、次のような特定の設定でConfidential VMを作成します:
    • セキュリティの種類:Confidential VM
    • OSディスクの機密暗号化:有効になっています。
    • キー管理:プラットフォーム管理キーを使用した機密ディスクの暗号化 Confidential VMの作成について詳しくは、こちらのMicrosoftの記事を参照してください。
  2. 作成したVM上でマスターイメージを準備します。 作成したVM上で必要なアプリケーションとVDAをインストールします。

    VHDを使用したConfidential VMの作成はサポートされていません。 代わりに、Azure Compute Gallery、Managed Disks、またはスナップショットを使用します。

  3. 次のいずれかの方法でマシンプロファイルを作成します:

    • 手順1で作成した既存のVMに必要なマシンプロパティがある場合は、それを使用します。
    • マシンプロファイルとしてARMテンプレートスペックを選択する場合は、必要に応じてテンプレートスペックを作成します。 具体的には、SecurityEncryptionTypediskEncryptionSet(顧客管理キーの場合)など、Confidential VMの要件を満たすパラメーターを構成します。 詳しくは、「Azureテンプレートスペックの作成」を参照してください。

      • マスターイメージとマシンプロファイルのセキュリティキーの種類が同じであることを確認します。
      • 顧客管理キーを使用してOSディスクの機密暗号化を必要とするConfidential VMを作成するには、マスターイメージとマシンプロファイルの両方のディスク暗号化セットIDが同一であることを確認します。

StudioまたはPowerShellコマンドを使用してConfidential VMを作成する

Confidential VMのセットを作成するには、マスターイメージと、目的のConfidential VMに基づくマシンプロファイルを使用してマシンカタログを作成します。

Studioを使用してカタログを作成するには、「マシンカタログの作成」で説明されている手順に従います。 次の考慮事項に留意してください:

  • [イメージ] ページで、Confidential VMの作成用に準備したマスターイメージとマシンプロファイルを選択します。 マシンプロファイルの選択は必須であり、選択したマスターイメージと同じセキュリティ暗号化の種類に一致するプロファイルのみが選択可能です。
  • [仮想マシン] ページでは、Confidential VMをサポートするマシンサイズのみが選択肢に表示されます。
  • [ディスク設定] ページでは、選択したマシンプロファイルから継承されるため、ディスク暗号化セットを指定することはできません。

起動の整合性の監視

仮想マシンでセキュアブートと仮想トラステッドプラットフォームモジュール(vTPM)が有効になっていて、GuestAttestation拡張機能がインストールされている場合、Microsoft Defender for Cloudは仮想マシンが正常に起動していることをリモートで検証できます。 この監視は起動の整合性の監視と呼ばれます。 起動の整合性監視について詳しくは、「起動の整合性監視の概要」を参照してください。

マシンプロファイル(仮想マシンまたはテンプレートスペック)を使用して、MCSマシンカタログ仮想マシン(永続および非永続VM)の起動の整合性の監視を有効にできます。 起動の整合性の監視は、トラステッド起動VMとConfidential VMでのみサポートされます。

Set-ProvSchemeを使用して起動の整合性を使用するように既存のカタログを更新し、起動の整合性が有効になっているマシンプロファイルを参照することができます。 カタログに追加された新しい仮想マシンは、整合性の監視が有効になります。

Set-ProvVmUpdateTimeWindowSet-ProvVm、またはメンテナンスサイクルを使用してカタログ内の既存の仮想マシンを更新することもできます。

以下を変換できます:

  • 整合性の監視なしの仮想マシンを整合性の監視ありにする。
  • 整合性の監視あり仮想マシンから整合性の監視なしにする。

整合性の監視が有効になっているマシンカタログを作成する

次の権限があることを確認してください:

  • Microsoft.Compute/virtualMachines/extensions/read
  • Microsoft.Compute/virtualMachines/extensions/write

次の手順を実行して、整合性の監視が有効になっているMCSマシンカタログを作成します:

  1. GuestAttestation拡張子を使用してマシンプロファイル(仮想マシンまたはテンプレートスペック)を作成します。
  2. 完全な構成インターフェイスまたはPowerShellコマンドを使用して、マシンプロファイルの入力によってMCSマシンカタログを作成します。

    Get-Item PowerShell コマンドにAdditionalDataパラメーターを指定すると、仮想マシンまたはテンプレートスペックのGuestAttestationExtensionEnabledのステータスを確認できます。

  3. VMをマシンカタログに追加します。

GuestAttestation拡張機能が有効になっているマシンプロファイルを作成する

整合性の監視を有効にして、マシンプロファイルの入力として仮想マシンまたはテンプレートスペックを作成します。これはGuestAttestation拡張機能がインストールされていることを意味します。

整合性の監視を有効にした仮想マシンを作成するには、次の操作を行います:

  1. Azure Portalにサインインします。
  2. 新しい仮想マシンを作成する場合:

    1. [Security type]トラステッド起動VMまたはConfidential VMとして選択します。
    2. [Configure security features]をクリックして[Integrity monitoring]チェックボックスをオンにします。

      整合性の監視では、セキュアブートとvTPMを有効にする必要があります。

  3. [Overview]ページで[Security type]セクションに移動し、セキュリティタイプがトラステッド起動またはConfidential VMで、整合性の監視が有効になっていることを確認します。
  4. [Extensions + applications]ページに移動して、GuestAttestationがインストールされていることを確認します。

既存のVMの整合性の監視を有効にするには、整合性の監視を有効にする - Azure Portalを参照してください。

GuestAttestation拡張機能がインストールされたテンプレートスペックを作成するには:

  1. GuestAttestationはテンプレートスペックを使用してインストールできます。 整合性の監視を有効にする - テンプレートスペックを参照してください。

    このテンプレートスペックでは、Settingsで、認証に使用するエンドポイントを設定できます。 構成しない場合、構成するエンドポイントはAzureによって決定されます。

オンデマンド容量予約仮想マシンのカタログを作成する

オンデマンド容量予約を使用すると、Azureリージョンまたはアベイラビリティゾーン内のコンピューティング容量を任意の期間予約できます。 Azureオンデマンド容量予約について詳しくは、Microsoftのドキュメント「オンデマンド容量予約」を参照してください。

マシンプロファイル(VMまたはテンプレートスペック)を使用して、オンデマンド容量予約対応のAzure VMのMCSマシンカタログを作成できます。 既存のマシンカタログと既存のVMを更新して、オンデマンド容量予約を追加または削除することもできます。

この機能は、永続および非永続のマシンカタログに適用できます。

制限事項

この機能は以下には適用されません:

  • Spot VM
  • ホストグループ
  • 休止状態が有効なVM

制限事項について詳しくは、Microsoftのドキュメント「制限事項と制約事項」を参照してください。

必要な権限

オンデマンド容量予約仮想マシンのカタログを作成するには、次の権限が必要です:

Microsoft.Compute/capacityReservationGroups/deploy/action

オンデマンド容量予約仮想マシンのカタログを作成する手順

  1. マシンプロファイルのソース(VMまたはARMテンプレートスペック)を作成します。 VMまたはARM テンプレートスペックを作成する場合は、「VMを容量予約グループに関連付ける」を参照してください。
  2. 次の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-->
    
  3. StudioまたはPowerShellコマンドを使用し、マシンプロファイルを使用してマシンカタログを作成します。

Set-ProvSchemeコマンドを使用してカタログを更新できます。 PowerShellコマンドSet-ProvVmUpdateTimeWindowを使用して既存のVMを更新することもできます。 マシンプロファイルは、次回の電源投入時に更新されます。

入れ子構造の仮想化

入れ子構造の仮想化を有効にしてマスターVMを構成すると、そのマスターVMを使用して作成されたMCSマシンカタログ内のすべてのVMで入れ子構造の仮想化が有効になります。 この機能は、永続VMと非永続VMの両方に適用できます。 イメージの更新を通じて、既存のMCSマシンカタログと既存のVMを更新し、入れ子構造の仮想化を実現できます。

現在、入れ子構造の仮想化をサポートしているのはDv3およびEv3 VMサイズのみです。

入れ子構造の仮想化について詳しくは、Microsoftのブログ「Nested Virtualization in Azure」を参照してください。

NVMeのみのSKU

通常、旧世代の汎用仮想マシン、メモリ最適化仮想マシン、およびコンピューティング最適化仮想マシン(D/Ev5またはFv2以前)はSCSIをサポートします。 新しい世代(Da/Ea/Fav6以降)は通常、NVMeストレージインターフェイスのみをサポートします。 MCSはNVMeストレージコントローラータイプをサポートし、Azure上で新しいVM SKUをサポートします。

NVMeについて詳しくは、MicrosoftのドキュメントNVMeに関する一般的なFAQを参照してください。

MCSカタログは、次のようなサービスオファリングを使用して作成できます:

制限事項

  • NVMeをサポートするすべてのサービスがトラステッド起動を同時にサポートしているわけではありません。
  • NVMeは第1世代仮想マシンではサポートされていません。
  • OSイメージによってはNVMeをサポートしていない場合があります。 その場合、Azure UIではNVMeオプションがグレー表示されます。

SCSIとNVMeの両方をサポートするサービスオファリングを使用してカタログを作成する

  1. マスターイメージとして使用する仮想マシンを作成します。

    1. NVMeをサポートするマーケットプレイスイメージを使用します。 NVMeをサポートするAzure Marketplaceイメージの一覧は、リモートNVMeでサポートされているOSイメージを参照してください。
    2. VMのOSディスクのスナップショットを作成して、New-ProvSchemeコマンドのMasterImageVMパラメーターで使用するか、マネージドディスクを直接使用してください。

      以下のいずれかの方法を使用して、マスターイメージがNVMeをサポートしているかどうかを確認します:

      • Get-ItemAdditionalDataフィールドのSupportedDiskControllerTypesを確認してください。 次に例を示します:

           (get-item XDHyp:\HostingUnits\mynetwork\image.folder\abc.resourcegroup\deg-snapshot).AdditionalData
         <!--NeedCopy-->
        

        SupportedDiskControllerTypesSCSI、NVMeであることが必要です。

      • Azure CLIとPowerShellを使用します

  2. NVMe と SCSI の両方をサポートするサービスを使用してください。
  3. 仮想マシンまたはテンプレートスペックを、NVMeが有効になっているマシンプロファイルとして使用します。 DiskControllerTypeがNVMeに設定されている仮想マシンであればどれでも構いません。 仮想マシンをマシンプロファイルとして直接使用するか、テンプレートをエクスポートして、テンプレートスペックをマシンプロファイルとして使用します。

NVMeのみをサポートするサービスオファリングを使用してカタログを作成する

  1. マスターイメージとして使用する仮想マシンを作成します。 NVMeをサポートするマーケットプレイスイメージを使用します。 NVMeをサポートするAzure Marketplaceイメージの一覧は、リモートNVMeでサポートされているOSイメージを参照してください。
  2. NVMeのみをサポートするサービスオファリングを使用します。

    このサービスではNVMeがサポートされているため、カタログでNVMeを有効にするためのDiskControllerTypeNVMeに設定されたマシンプロファイルは必要ありません。 ただし、マシンプロファイルを使用する場合は、DiskControllerTypeNVMeに設定されているか、空白または指定されていない必要があります。

既存の永続的な仮想マシンの変更

NVMe構成は、一度作成した仮想マシンでは変更できません。 永続的な仮想マシンのNVMe構成を変更する方法は、仮想マシンを再展開することです。 このためのロジックは次のとおりです:

  1. 仮想マシンの現在の状態を保存します。
  2. 既存の仮想マシンの電源をオンにした後、仮想マシンの再展開が必要かどうかを検出します。

    1. 構成をNVMeからNVMeに、またはSCSIからSCSIに変更する場合、仮想マシンを再展開する必要はありません。
    2. 構成がSCSIからNVMeに、またはその逆に変更された場合は、仮想マシンを再展開して再作成します。

PowerShellの使用

このセクションでは、PowerShellを使用して次のタスクを実行する方法について説明します:

PowerShellを使用したカタログの作成または更新でテンプレートスペックを使用する

テンプレートスペックをマシンプロファイルの入力に使用して、MCSマシンカタログを作成または更新できます。 これを行うには、StudioまたはPowerShellコマンドを使用できます。

Studioインターフェイスについては、「StudioインターフェイスでAzure Resource Managerイメージを使用してマシンカタログを作成する」を参照してください。

PowerShellコマンドを使用する:

  1. PowerShellウィンドウを開きます。
  2. asnp citrix*を実行します。
  3. カタログを作成または更新します。
    • カタログを作成するには:
      1. マシンプロファイルの入力で、テンプレートスペックを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-->
        
      2. カタログの作成を完了します。

    • カタログを更新するには、マシンプロファイルの入力で、テンプレートスペックを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 Resource Manager)テンプレートスペックを選択したら、次のPowerShellコマンドを実行して、Azure VM(仮想マシン)拡張機能を操作します:

  • サポートされているAzure VM拡張機能の一覧を表示する場合:Get-ProvMetadataConfiguration
  • VM拡張機能をさらに追加する場合:Add-ProvMetadataConfiguration。 例:Add-ProvMetadataConfiguration -PluginType "AzureRM" -ConfigurationName "Extension" -ConfigurationValue "CustomScriptExtension"

    次のいずれかを追加しようとするとコマンドが失敗し、エラーメッセージが表示されます:

    • Citrix定義の拡張機能。
    • 既存のユーザー定義の拡張機能。
    • サポートされていない構成キー。 現在、サポートされている構成キーはExtensionです。
  • 一覧から拡張機能を削除する場合:Remove-ProvMetadataConfiguration。 追加した拡張機能は削除できます。

トラステッド起動を使用したマシンカタログ

トラステッド起動でマシンカタログを正常に作成するには、次を使用します:

  • トラステッド起動が有効になっているマスターイメージ。 マシンプロファイルを使用する必要がありますが、マシンプロファイルでトラステッド起動が有効になっている必要はありません。 トラステッド起動が有効になっているマスターイメージと、トラステッド起動が有効になっていないマシンプロファイルを使用すると、マスターイメージとマシンプロファイル間のトラステッド起動の構成が一致しないため、警告メッセージが表示されます。
  • トラステッド起動をサポートするVMサイズ。
  • トラステッド起動をサポートするWindows VMバージョン。 現在、Windows 10、Windows 11、Windows Server 2016、2019、および2022はトラステッド起動をサポートしています。

Citrix DaaSオファリングのインベントリアイテムを表示し、VMサイズがトラステッド起動をサポートしているかどうかを判断するには、次のコマンドを実行します:

  1. PowerShellウィンドウを開きます。
  2. asnp citrix*を実行し、Citrix固有のPowerShellモジュールをロードします。
  3. 次のコマンドを実行します:

      $s = (ls XDHyp:\HostingUnits\<name of hosting unit>\serviceoffering.folder\"<VM size>".serviceoffering)
    <!--NeedCopy-->
    
  4. $s | select -ExpandProperty Additionaldataを実行します
  5. SupportsTrustedLaunch属性の値を確認してください。

    • SupportsTrustedLaunchTrueの場合、VMサイズはトラステッド起動をサポートします。
    • SupportsTrustedLaunchFalseの場合、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 Virtual Machinesのトラステッド起動」を参照してください。

トラステッド起動を使用したマシンカタログの作成

  1. トラステッド起動が有効になっているマスターイメージを作成します。 Microsoftのドキュメント「トラステッド起動VMイメージ」を参照してください。
  2. セキュリティの種類をトラステッド起動VMとしてVMまたはテンプレートスペックを作成します。 VMまたはテンプレートスペックの作成について詳しくは、Microsoftドキュメント「トラステッド起動のVMをデプロイする」を参照してください。
  3. StudioまたはPowerShellコマンドを使用してマシンカタログを作成します。

    • Studioを使用する場合は、「 StudioでAzure Resource Managerイメージを使用してマシンカタログを作成する」を参照してください。
    • PowerShellコマンドを使用する場合は、New-ProvSchemeコマンドを使用し、マシンプロファイルの入力にVMまたはテンプレートスペックを指定します。

      マシンプロファイルの入力に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テンプレートスペックの指定または仮想マシンのいずれかから設定されます。 また、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
      • Zonesを定義する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
      • Zonesを定義する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オファリングのインベントリアイテムを表示できます。 たとえば、米国東部リージョン 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つまたは複数のアベイラビリティゾーンを含めることができます。 たとえば、Zones 1と3の場合は、&lt;Property xsi:type="StringProperty" Name="Zones" Value="1, 3"/&gt;になります。

Set-ProvSchemeコマンドを使用して、プロビジョニングスキームのゾーンを更新します。

無効なゾーンが指定された場合、プロビジョニングスキームは更新されず、無効なコマンドを修正する方法を示すエラーメッセージが表示されます。

ヒント:

無効なカスタムプロパティを指定すると、プロビジョニングスキームは更新されず、関連するエラーメッセージが表示されます。

ホストグループゾーンとAzure Availability Zonesの同時使用の結果

カスタムプロパティで指定されたアベイラビリティゾーンとホストグループのゾーンに基づいて、マシンカタログの作成が成功するかどうかを評価する事前チェックがあります。 アベイラビリティゾーンのカスタムプロパティがホストグループのゾーンと一致しない場合、カタログの作成は失敗します。

PowerShellを使用してアベイラビリティゾーンを構成する方法については、「PowerShellを使用したアベイラビリティゾーンの構成」を参照してください。

Azure専用ホストについて詳しくは、「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の自動配置が必要です。 この機能は、ホストグループに関連付けられたサブスクリプションをオンボードするように要求します。 詳しくは、「Azure専用ホストのVMスケールセット - パブリックプレビュー」を参照してください。 自動配置が有効になっていない場合、MCSはカタログの作成中にエラーをスローします。

ストレージの種類の構成

MCSを使用するAzure環境の仮想マシン用に異なるストレージの種類を選択します。 ターゲットVMの場合、MCSは以下をサポートします:

  • OSディスク:プレミアムSSD、SSDまたはHDD
  • ライトバックキャッシュディスク:プレミアムSSD、SSD、またはHDD

これらのストレージの種類を使用するときは、次の点を考慮してください:

  • VMが選択したストレージの種類をサポートしていることを確認してください。
  • 構成でAzureエフェメラルディスクを使用している場合、ライトバックキャッシュディスク設定のオプションは使用できません。

ヒント:

StorageTypeは、OSタイプとストレージアカウント用に構成されています。 WBCDiskStorageTypeは、ライトバックキャッシュのストレージの種類用に構成されています。 通常のカタログの場合、StorageTypeが必要です。 WBCDiskStorageTypeが構成されていない場合は、WBCDiskStorageTypeのデフォルトとしてStorageTypeが使用されます。

WBCDiskStorageTypeが構成されていない場合、WBCDiskStorageTypeのデフォルトとしてStorageTypeが使用されます

VMのストレージの種類の構成

VM用のストレージの種類を構成するには、New-ProvSchemeStorageTypeパラメーターを使用します。 既存カタログのStorageTypeパラメーター値を、サポートされているストレージ種類の1つに更新するには、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 Managed Disksを同期的に複製するため、別のゾーンの冗長を利用して、ゾーンでの障害から回復できます。

ストレージの種類のカスタムプロパティでPremium_ZRSおよびStandardSSD_ZRSを指定できます。 ZRSストレージは、既存のカスタムプロパティを使用するか、MachineProfileテンプレートを使用して設定できます。 ZRSストレージは、-StartsNowおよび-DurationInMinutes -1パラメーターを指定したSet-ProvVMUpdateTimeWindowでもサポートされています。 既存のVMをLRSストレージからZRSストレージに変更できるのです。

  • StartsNowは、スケジュールの開始時刻が現在時刻であることを指定します。
  • 負の数(-1など)のDurationInMinutesは、スケジュールの期間に上限がないことを示します。

制限事項:

  • 管理対象ディスクでのみサポートされます
  • プレミアムおよびスタンダードのソリッドステートドライブ(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:ゾーン冗長ストレージは、管理対象ディスクでのみ使用できます。

次のカスタムプロパティを使用して、ディスクストレージの種類を設定できます:

  • StorageType
  • WBCDiskStorageType
  • IdentityDiskStorageType

カスタムプロパティが設定されていない場合、カタログの作成中にマシンプロファイルのOSディスク(StorageType)が使用されます。

マシンプロファイルからVMおよびNICの診断設定をキャプチャする

マシンカタログの作成中、既存のマシンカタログの更新中、および既存のVMの更新中に、マシンプロファイルからVMおよびNICの診断設定をキャプチャできます。

VMまたはテンプレートスペックをマシンプロファイルのソースとして使用できます。

主な手順

  1. Azureで必要なIDを設定します。 これらのIDをテンプレートスペックで指定する必要があります。

    • ストレージアカウント
    • Log Analyticsワークスペース
    • 標準レベルの料金設定のイベントハブ名前空間
  2. マシンプロファイルのソースを作成します。
  3. 新しいマシンカタログを作成するか、既存のカタログを更新するか、既存のVMを更新します。

Azureで必要なIDを設定する

Azureで次のいずれかを設定します:

  • ストレージアカウント
  • Log Analyticsワークスペース
  • 標準レベルの料金設定のイベントハブ名前空間

ストレージアカウントをセットアップする

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 Portalでイベントハブをセットアップするには、次の手順を実行します:

  1. 標準レベルの料金設定でイベントハブ名前空間を作成します。
  2. 名前空間の下にイベントハブを作成します。
  3. イベントハブの下のCaptureに移動します。 Avro出力タイプでキャプチャするにはトグルをオンにします。
  4. 既存のストレージアカウントに新しいコンテナを作成して、ログをキャプチャします。
  5. テンプレートスペックでは、eventHubAuthorizationRuleIdを次の形式で指定します:/subscriptions/093f4c12-704b-4b1d-8339-f339e7557f60/resourcegroups/matspo/providers/Microsoft.EventHub/namespaces/matspoeventhub/authorizationrules/RootManageSharedAccessKey
  6. イベントハブの名前を指定します。

イベントハブにデータを記録するように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カタログ内のリソースに適用されることを保証します。

  1. VMとNICを定義する標準テンプレートスペックを作成します。
  2. スペックに従って診断設定を展開するためのリソースを追加します:Microsoft.Insights diagnosticSettings。 スコープについては、テンプレート内のVMまたはNICを、部分的なIDを含めた名前で参照します。 たとえば、テンプレートスペックで「test-VM」という名前のVMにアタッチされた診断設定を作成するには、スコープを次のように指定します:

      "scope": "microsoft.compute/virtualMachines/test-VM",
    <!--NeedCopy-->
    
  3. テンプレートスペックをマシンプロファイルのソースとして使用します。

診断設定を使用したカタログの作成または更新

マシンプロファイルのソースを作成した後、New-ProvSchemeコマンドを使用してマシンカタログを作成し、Set-ProvSchemeコマンドを使用して既存のマシンカタログを更新し、Request-ProvVMUpdateコマンドを使用して既存のVMを更新できるようになりました。

Windowsライセンスの確認

プロビジョニングされた仮想マシンがライセンス特典を使用していることを確認するには、次のPowerShellコマンドを実行します:Get-AzVM -ResourceGroup MyResourceGroup -Name MyVM

または、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ライセンスの構成

bring-your-own-subscription(BYOS)Linuxライセンスを使用すると、ソフトウェアの料金を支払う必要がなくなります。 BYOSの料金には、コンピューティングハードウェアの料金のみが含まれます。 ライセンスには次の2種類があります:

  • RHEL_BYOS:RHEL_BYOSの種類を正しく使用するには、AzureサブスクリプションでRed Hat Cloud Accessを有効にします。
  • SLES_BYOS:SLESのBYOSバージョンには、SUSEからのサポートが含まれています。

LicenseType値をNew-ProvSchemeおよびSet-ProvSchemeでLinuxオプションに設定できます。

LicenseTypeをNew-ProvSchemeで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-->

LicenseTypeをSet-ProvSchemeでRHEL_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ディスクのサイズ以上である必要があります。
  • 一時ディスクのサイズは、キャッシュディスクのサイズよりも大きい必要があります。

これらの制約を考慮する必要があるのは、以下の場合です:

  • プロビジョニングスキームを作成する場合
  • プロビジョニングスキームを変更する場合
  • イメージを更新する場合

エフェメラルディスクを使用するには、UseEphemeralOsDiskを実行するとき、カスタムプロパティNew-ProvSchemetrueに設定する必要があります。

UseEphemeralOsDiskfalseに設定されているか、値が指定されていない場合、プロビジョニングされたすべての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-ProvSchemeUseEphemeralOsDiskパラメーターを使用します。 UseEphemeralOsDiskパラメーターの値をtrueに設定します。

この機能を使用するには、パラメーターのUseManagedDisksUseSharedImageGalleryも有効にする必要があります。

次に例を示します:

  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-->

Azure Compute Galleryを構成する

New-ProvSchemeコマンドを使用することで、Azure Compute Galleryをサポートする新しいプロビジョニングスキームを作成できます。 Set-ProvSchemeコマンドでは、プロビジョニングスキームでのこの機能の有効化または無効化と、レプリカの比率およびレプリカの最大値の変更が可能です。

Azure Compute Gallery機能をサポートするために、プロビジョニングスキームに3つのカスタムプロパティが追加されました:

UseSharedImageGallery

  • Azure Compute Galleryを使用して公開イメージを保存するかどうかを定義します。 Trueに設定すると、イメージはAzure Compute Galleryイメージとして保存されます。Trueに設定しない場合、イメージはスナップショットとして保存されます。
  • 有効な値は、TrueおよびFalseです。
  • プロパティが定義されていない場合、デフォルト値はFalseです。

SharedImageGalleryReplicaRatio

  • ギャラリーイメージバージョンのレプリカに対するマシンの比率を定義します。
  • 有効な値は、0より大きい整数です。
  • プロパティが定義されていない場合は、デフォルト値が使用されます。 永続OSディスクのデフォルト値は1000であり、非永続OSディスクのデフォルト値は40です。

SharedImageGalleryReplicaMaximum

  • 各ギャラリーイメージバージョンのレプリカの最大数を定義します。
  • 有効な値は、0より大きく最大100までの整数です。 有効な範囲以外の値を指定すると、MCSはエラーを生成します。
  • プロパティが定義されていない場合、デフォルト値は10です。
  • プロパティが定義されていない場合、デフォルト値は100です。

ヒント:

Azure Compute Galleryを使用してMCSプロビジョニングされたカタログの公開イメージを保存する場合、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カタログをスナップショットカタログに変換する

このユースケースの場合:

  1. UseSharedImageGalleryフラグをTrueに設定してSet-ProvSchemeを実行します。 オプションで、SharedImageGalleryReplicaRatioおよびSharedImageGalleryReplicaMaximumプロパティを含めます。
  2. カタログを更新します。
  3. マシンの電源を入れ直して、強制的に更新します。

次に例を示します:

  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カタログをスナップショットカタログに変換する

このユースケースの場合:

  1. UseSharedImageGalleryフラグをFalseに設定するか、定義せずにSet-ProvSchemeを実行します。
  2. カタログを更新します。
  3. マシンの電源を入れ直して、強制的に更新します。

次に例を示します:

  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-nameSet-ProvSchemeコマンドが完了した後、イメージスナップショットはまだ作成されていません。 ギャラリーを使用しないようにカタログを構成すると、次回のカタログ更新操作で公開イメージがスナップショットとして保存されます。 その時点から、既存のすべての非永続マシンはスナップショットを使用してリセットされ、新しくプロビジョニングされたすべてのマシンはスナップショットから作成されます。 マシンの電源を入れ直すと更新され、そのときカスタムマシンデータが更新されて、UseSharedImageGalleryFalseに設定されていることが反映されます。 古いAzure Compute Galleryアセット(ギャラリー、画像、バージョン)は、数時間以内に自動的にクリーンアップされます。

VMごとに複数のNICを含むカタログを作成または更新する

MCSは、仮想マシンごとに複数のNICをサポートします。 仮想マシン上の複数のNICを複数のサブネットに関連付けることができますが、それらのサブネットは同じ仮想ネットワーク(vNet)内に存在する必要があります。 PowerShellコマンドを使用して、次のことができます:

非マシンプロファイルベースのマシンカタログまたはマシンプロファイルベースのマシンカタログを作成または更新して、仮想マシン上で複数のNICを割り当てることができます。 現在、マシンプロファイルベースのマシンカタログの場合、ソースであるマシンプロファイルで指定されているのと同じ数のNICのみを持つことができます。

高速ネットワークやネットワークなどのプロパティは、マシンプロファイルをソースとして設定されます。

仮想マシンのサイズは、同じ数のNICと対応する高速ネットワークをサポートしている必要があります。サポートしていない場合は、エラーが発生します。

選択した仮想マシンサイズに割り当てられたNICの最大数を取得できます。 MaxNetworkInterfacesというPowerShellプロパティは、get-item PowerShellコマンドにAdditionalDataパラメーターを指定して実行すると、NICの最大数を表示します。

最大NIC数を取得する

最大NIC数を取得するには、以下の手順を実行します:

  1. Delivery ControllerホストからPowerShellウィンドウを開きます。
  2. asnp citrix*を実行し、Citrix固有のPowerShellモジュールをロードします。
  3. Get-ChildItem -Path "XDHyp:\Connections\abc-connection\East US.region\serviceoffering.folder"を実行して、使用可能なすべてのVMサイズを一覧表示します。
  4. get-item -Path "XDHyp:\Connections\abc-connection\East US.region\serviceoffering.folder\Standard_M416ms_v2.serviceoffering").AdditionalDataを実行します
  5. NICの最大数を確認するには、MaxNetworkInterfacesを確認します。

仮想マシン上に複数のNICを含むカタログを作成する

仮想マシン上に複数のNICを含むカタログを作成するには、次の手順を実行します:

  1. Delivery ControllerホストからPowerShellウィンドウを開きます。
  2. asnp citrix*を実行し、Citrix固有のPowerShellモジュールをロードします。
  3. IDプールをまだ作成していない場合は作成します。
  4. プロビジョニングスキームを作成します:
    • 非マシンプロファイルベースのマシンカタログを作成する場合は、New-ProvSchemeコマンドにNetworkMappingsパラメーターを指定して実行します。 パラメーターNetworkMappingsには複数のサブネットを追加できます。 次に例を示します:

         New-Provscheme -NetworkMappings @{"0"="subnetpath1";"1"="subnetpath1"}
       <!--NeedCopy-->
      
    • マシンプロファイルベースのマシンカタログを作成する場合は、以下を実行します:

      1. Azureに仮想マシンを作成して複数のNICを設定します。 詳しくは、「複数のNICを持つWindows仮想マシンの作成と管理」を参照してください。 新しい仮想マシンを作成し、Azure Portalの [Networking] ページでネットワーク インターフェイスをアタッチすることもできます。
      2. New-ProvSchemeコマンドを実行して、仮想マシンをマシンプロファイルの入力に使用します。

      マシンプロファイルベースのマシンカタログを作成する場合、NetworkMappingsの数はマシンプロファイルのNetworkInterfaceCountと同じである必要があります。 NetworkInterfaceCountGet-item -Path "machine profile path"AdditionalDataから取得できます。

  5. カタログの作成を完了します。

VM上で複数のNICを含むカタログを更新する

仮想マシン上で複数のNICを含むカタログを更新するには、次の手順を実行します:

  1. Delivery ControllerホストからPowerShellウィンドウを開きます。
  2. asnp citrix*を実行し、Citrix固有のPowerShellモジュールをロードします。
  3. プロビジョニングスキームを更新します:

    • 非マシンプロファイルベースのマシンカタログを作成する場合は、Set-ProvSchemeコマンドにNetworkMappingsパラメーターを指定して実行します。 パラメーターNetworkMappingsには複数のサブネットを追加できます。 次に例を示します:

         Set-Provscheme -NetworkMappings @{"0"="subnetpath1";"1"="subnetpath1"}
       <!--NeedCopy-->
      
    • マシンプロファイルに基づいてマシンカタログを作成するには、以下の手順を実行します:

      1. Azureに仮想マシンを作成して複数のNICを設定します。 詳しくは、「複数のNICを持つWindows仮想マシンの作成と管理」を参照してください。
      2. Set-ProvSchemeコマンドを実行して、仮想マシンをマシンプロファイルの入力に使用します。

VM上で複数のNICが割り当てられるように既存の仮想マシンを更新する

Set-ProvVMUpdateTimeWindowを使用して既存の仮想マシンを更新したり、更新作業時間中に既存の仮想マシンの電源を入れ直したりすることもできます。 既存の仮想マシンの更新について詳しくは、「プロビジョニングされたマシンを現在のプロビジョニングスキームの状態に更新する」を参照してください。

非永続的なライトバックキャッシュディスクのマシンカタログを作成する

非永続的なライトバックキャッシュディスクのカタログを構成するには、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は必要ありません。

このパラメーターでは追加プロパティPersistWBCをサポートしており、これを使用することで、MCSでプロビジョニングされたマシンのライトバックキャッシュディスクを永続化させる方法を指定できます。 PersistWBCプロパティは、UseWriteBackCacheパラメーターが指定され、WriteBackCacheDiskSizeパラメーターがディスクが作成されたことを示すよう設定された場合のみ使用されます。

この動作は、電源を入れ直したときにデフォルトのMCSIOライトバックキャッシュディスクが削除されて再作成されるAzureおよびGCPの両方に適用されます。 ディスクを永続化すると、MCSIOライトバックキャッシュディスクの削除と再作成を回避できます。

以下は、CustomPropertiesをサポートする前にPersistWBCパラメーターで使用されるプロパティの例です:

  <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プロパティには、次の2つの値が設定可能です:trueまたはfalse

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-ProvScheme Powershellコマンドレットを使用してのみ設定できます。 作成後にプロビジョニングスキームのCustomPropertiesを変更しようとしても、マシンがシャットダウンしたときにマシンカタログやライトバックキャッシュディスクの永続性は影響を受けません。

例:PersistWBCプロパティをtrueに設定するときにNew-ProvSchemeを設定してライトバックキャッシュを使用した場合:

  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-->

この機能を有効にするには、カスタムプロパティPersistOSDisktrueに設定します。 次に例を示します:

  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コマンドを使用して、暗号化キーが顧客管理キーであるマシンカタログを作成する場合は、次の手順を実行します:

  1. PowerShellウィンドウを開きます。
  2. asnp citrix*を実行し、Citrix固有のPowerShellモジュールをロードします。
  3. cd xdhyp:/と入力します。
  4. cd .\HostingUnits\(ホスティングユニット)と入力します。
  5. 「cd diskencryptionset.folder」と入力します。
  6. 「dir」と入力して、ディスク暗号化セットのリストを取得します。
  7. ディスク暗号化セットのIDをコピーします。
  8. ディスク暗号化セットの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-->
    
  9. IDプールをまだ作成していない場合は作成します。 次に例を示します:

      New-AcctIdentityPool -IdentityPoolName idPool -NamingScheme ms## -Domain def.local -NamingSchemeType Numeric
    <!--NeedCopy-->
    
  10. 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-->
    
  11. マシンカタログの作成を完了します。

ホスト機能での暗号化を使用してマシンカタログを作成する

ホスト機能での暗号化を使用してマシンカタログを作成するには

  1. ホスト機能での暗号化がサブスクリプションで有効になっているかどうかを確認します。 確認する方法については、https://learn.microsoft.com/ja-jp/rest/api/resources/features/get?tabs=HTTP/を参照してください。 有効になっていない場合は、サブスクリプションの機能を有効にする必要があります。 サブスクリプションでこの機能を有効にする方法については、https://learn.microsoft.com/ja-jp/azure/virtual-machines/disks-enable-host-based-encryption-portal?tabs=azure-powershell#prerequisites/を参照してください。
  2. 使用するAzure VMのサイズがホストでの暗号化をサポートしているかどうかを確認します。 確認するには、PowerShellウィンドウで次のいずれかを実行します:

      PS XDHyp:\Connections\<your connection>\east us.region\serviceoffering.folder>
    <!--NeedCopy-->
    
      PS XDHyp:\HostingUnits\<your hosting unit>\serviceoffering.folder>
    <!--NeedCopy-->
    
  3. Azure Portalでホストでの暗号化を有効にして、マシンプロファイルの入力として、VMまたはテンプレートスペックを作成します。

    • VMを作成する場合は、ホストでの暗号化をサポートしているVMサイズを選択します。 VMを作成すると、VMプロパティの [Encryption at host] が有効になります。
    • テンプレートスペックを使用する場合は、Encryption at HostパラメーターをsecurityProfile内でtrueにします。
  4. 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コマンドを実行することで、二重暗号化を使用してマシンカタログを作成し、更新できます。

二重暗号化を使用してマシンカタログを作成する方法の詳細な手順は次のとおりです。

  1. プラットフォーム管理キーと顧客が管理するキーを使用してAzure Key VaultとDESを作成します。 Azure Key VaultとDESを作成する方法については、「Azure portalを使用して、マネージドディスクの保存時の二重暗号化を有効にします」を参照してください。
  2. ホスト接続で利用可能なディスク暗号化セットを参照するには、次の手順を実行します:
    1. PowerShellウィンドウを開きます。
    2. 次のPowerShellコマンドを実行します:
      1. asnp citrix*
      2. cd xdhyp:
      3. cd HostingUnits
      4. cd YourHostingUnitName (ex. azure-east)
      5. cd diskencryptionset.folder
      6. dir

    DiskEncryptionSetのIDを使用したカスタムプロパティで、カタログを作成または更新できます。

  3. マシンプロファイルワークフローを使用する場合は、マシンプロファイルの入力用にVMまたはテンプレートスペックを作成します。
    • VMをマシンプロファイルの入力に使用する場合は、次の手順を実行します:
      1. Azure PortalでVMを作成します。
      2. Disks>Key managementに移動して、VMをDiskEncryptionSetIDで直接暗号化します。
    • テンプレートスペックをマシンプロファイルの入力に使用する場合は、次の手順を実行します:
      1. テンプレートのproperties&gt;storageProfile&gt;osDisk&gt;managedDiskの下にdiskEncryptionSetパラメーターを追加し、二重暗号化のDESのIDを追加します。
  4. マシンカタログを作成します。
    • 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-->
        

      Remote PowerShell SDKを使用してカタログの作成を完了します。 カタログ内に作成されたすべてのマシンは、選択したDESに関連付けられたキーによって二重暗号化されます。

暗号化されていないカタログを二重暗号化を使用するように変換

マシンカタログの暗号化の種類を(カスタムプロパティまたはマシンプロファイルを使用して)更新できます。

  • マシンプロファイルベースのワークフローを使用しない場合は、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-->
    

成功すると、カタログ内に追加されたすべてのマシンは、選択したDESに関連付けられたキーによって二重暗号化されます。

カタログが二重暗号化されていることの確認

  • Studio使用の場合:

    1. [マシンカタログ] に移動します。
    2. 確認するカタログを選択します。 画面の下部近くにある [テンプレートのプロパティ] タブをクリックします。
    3. [Azureの詳細][ディスク暗号化セット] でディスク暗号化セットIDを確認します。 カタログのDES IDが空白の場合、カタログは暗号化されていません。
    4. Azure Portalで、DES IDに関連付けられたDESの暗号化の種類が、プラットフォーム管理キーと顧客が管理するキーであることを確認します。
  • PowerShellコマンドを使用して以下の手順を実行します:

    1. PowerShellウィンドウを開きます。
    2. asnp citrix*を実行し、Citrix固有のPowerShellモジュールをロードします。
    3. Get-ProvSchemeを使用して、マシンカタログの情報を取得します。 次に例を示します:

        Get-ProvScheme -ProvisioningSchemeName "SampleProvSchemeName"
      <!--NeedCopy-->
      
    4. マシンカタログのDES IDカスタムプロパティを取得します。 次に例を示します:

        <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/Sample-RG/providers/Microsoft.Compute/diskEncryptionSets/SampleEncryptionSet" />
      <!--NeedCopy-->
      
    5. Azure Portalで、DES IDに関連付けられたDESの暗号化の種類が、プラットフォーム管理キーと顧客が管理するキーであることを確認します。

ページファイルの場所の決定

ページファイルの場所は、次のシナリオに従って決定されます:

デフォルトのページファイルの場所はOSディスク上です。

シナリオ 場所
ページファイル設定はカスタムプロパティで指定される カスタムプロパティで指定された場所
エフェメラルOSディスクまたは休止状態が有効になっている OSディスク
VMに一時ディスクがある 一時ディスク
MCS IOが有効になっている WBCディスク

ページファイル設定シナリオ

次の表は、イメージの準備およびプロビジョニングスキーム更新中のページファイル設定について、いくつかの可能なシナリオを示しています:

タイミング シナリオ 結果
イメージの準備時 ソースイメージページファイルを一時ディスクに設定しており、プロビジョニングスキームで指定したVMサイズに一時ディスクがない ページファイルはOSに保存されます
イメージの準備時 ソースイメージページファイルをOSディスクに設定しており、プロビジョニングスキームで指定したVMサイズに一時ディスクがない ページファイルは一時ディスクに保存されます
イメージの準備時 ソースイメージページファイルを一時ディスクに設定しており、エフェメラルOSディスクがプロビジョニングスキームで有効になっている ページファイルはOSディスクに保存されます
プロビジョニングスキームの更新時 VDAバージョンが2311より前の場合にプロビジョニングスキームを更新しようとした 警告でページファイル設定を変更します
プロビジョニングスキームの更新時 VDAバージョンが2311以降の場合にプロビジョニングスキームを更新しようとした ページファイルの場所の決定に従ってページファイルの場所を決定します

ページファイル設定を指定する

PowerShellコマンドを使用して、場所やサイズなどのページファイル設定を指定できます。 その場合、ページファイルの場所の決定に従って、MCSによって決定されたページファイル設定は上書きされます。 これを行うには、マシンカタログの作成中に次のNew-ProvSchemeコマンドを実行します。

重要な注意事項

カタログの作成を進める前に、以下の点を考慮してください:

  • New-ProvSchemeコマンドですべてのカスタムプロパティ(「PageFileDiskDriveLetterOverride」、「InitialPageFileSizeInMB」、および 「MaxPageFileSizeInMB」)を指定するか、いずれも指定しないでください。
  • この機能はCitrix Studioではサポートされていません。
  • 初期ページファイルサイズは、16MB〜16,777,216MBである必要があります。
  • 最大ページファイルサイズは、初期ページファイルサイズ以上で、16,777,216MB未満である必要があります。
  • 初期ページファイルサイズと最大ページファイルサイズの両方を同時に0に設定できます。

マスターイメージを更新せずに、既存のカタログに新しく追加された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環境で変更できるさまざまなページファイル設定を次に示します:

  • PageFileDiskDriveLetterOverride
  • InitialPageFileSizeInMB
  • MaxPageFileSizeInMB

既存のカタログのページファイル設定を変更する

既存のマシンカタログのページファイル設定を変更するには、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コマンドを使用してPageFileDiskDriveLetterOverrideC:に設定しようとすると、MCS I/OドライバーはページファイルをC:ではなく正しいディスクドライブに自動的にリダイレクトします。

AMAを有効にしたカタログVMをプロビジョニングする

  1. マシンプロファイルテンプレートを設定します。

    • VMをマシンプロファイルテンプレートとして使用する場合は、次の手順を実行します:

      1. Azure PortalでVMを作成します。
      2. VMの電源を入れます。
      3. [リソース]で、VMをデータ収集規則に追加します。 これにより、テンプレートVMへのエージェントのインストールが起動されます。

    Linuxカタログを作成する場合は、Linuxマシンをセットアップします。

    • テンプレートスペックをマシンプロファイルテンプレートとして使用する場合は、次の手順を実行します:

      1. テンプレートスペックを設定します。
      2. 生成されたテンプレートスペックに次の拡張機能とデータ収集規則の関連付けを追加します:

          {
          "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でのデータ収集ルールの作成と管理のベストプラクティス」を参照してください。

  2. MCSマシンカタログを作成または更新します。

    • 新しいMCSカタログを作成するには:

      1. Studioで、前述のVMまたはテンプレートスペックをマシンプロファイルとして選択します。
      2. 次の手順に進んでカタログを作成します。
    • 既存の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-->
      
  3. カタログVMの電源を入れます。
  4. Azure Portalに移動し、モニター拡張機能がVMにインストールされているかどうか、およびVMがDCRの[リソース]の下に表示されているかどうかを確認します。 数分後、監視データがAzure Monitorに表示されます。

トラブルシューティング

Azure Monitorエージェントのトラブルシューティングガイダンスについて詳しくは、以下を参照してください:

Azure Spot VMを使用したカタログの作成

Azure Spot VMを使用すると、Azureの未使用のコンピューティング容量を活用することで、大幅なコスト削減になります。 ただし、Azure Spot VMを割り当てることができるかどうかは、現在の容量と料金によって異なります。 したがって、Azureは削除ポリシーに従って、実行中のVMを削除したり、VMの作成に失敗したり、VMの電源投入に失敗したりする可能性があります。 そのため、Azure Spot VMは、一部の重要ではないアプリケーションやデスクトップに適しています。 詳しくは、「Azure Spot Virtual Machinesを使用する」を参照してください。

制限事項

  • Azure Spot VMでは、すべてのVMサイズがサポートされているわけではありません。 詳しくは、「制限」を参照してください。

    次のPowerShellコマンドを実行して、VMサイズがSpot VMをサポートしているかどうかを確認できます。 VMサイズがSpot VMをサポートしている場合、SupportsSpotVMTrueです。

       (Get-Item "XDHyp:\HostingUnits\azure-res-conn2\serviceoffering.folder\Standard_D2ds_v4.serviceoffering").   AdditionalData
     <!--NeedCopy-->
    
  • 現在、Azure Spot VMは休止状態をサポートしていません。

条件

Azure Spot VMカタログのマシンプロファイルのソース(VMまたはテンプレートスペック)を作成するときに、Azure Spotインスタンスを選択するか(VMを使用する場合)、prioritySpotに設定するか(テンプレートスペックを使用する場合)を選択する必要があります。

Azure Spot VMを使用してカタログを作成する手順

  1. マシンプロファイルのソース(VMまたは起動テンプレート)を作成します。

    • Azure Portalを使用してVMを作成する場合は、「Azure portalを使用してAzure Spot Virtual Machinesをデプロイする」を参照してください。
    • テンプレートスペックを作成する場合は、テンプレートスペックのresources > type: Microsoft.Compute/virtualMachines > propertiesの下に次のプロパティを追加します。 次に例を示します:

         "priority": "Spot",
         "evictionPolicy": "Deallocate",
         "billingProfile": {
         "maxPrice": 0.01
         }
       <!--NeedCopy-->
      

    • 削除ポリシーは、DeallocateまたはDeleteにできます。
    • 非永続的なVMの場合、MCSは常に削除ポリシーをDeleteとして設定します。 VMが削除されると、非永続ディスク(OSディスクなど)とともに削除されます。 永続ディスク(IDディスクなど)は削除されません。 ただし、カタログの種類が永続的であるか、PersistOsDiskカスタムプロパティがTrueに設定されている場合、OSディスクは永続的です。 同様に、PersistWbcカスタムプロパティがTrueに設定されている場合、WBCディスクは永続的です。
    • 永続的なVMの場合、MCSは常に削除ポリシーをDeallocateとして設定します。 VMが削除されると、割り当てが解除されます。 ディスクには変更は加えられません。
    • 最大価格は、1時間あたり支払い可能な金額です。 Capacity Onlyを使用している場合、これは -1です。 最大価格は、null、-1、または0より大きい小数値のみにすることができます。 詳しくは、「価格」を参照してください。
  2. 次のPowerShellコマンドを実行すると、マシンプロファイルでAzure Spot VMが有効になっているかどうかを確認できます。 SpotEnabledパラメーターがTrueで、SpotEvictionPolicyDeallocateまたは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-->
      
  3. New-ProvScheme PowerShellコマンドを使用し、マシンプロファイルを使用してマシンカタログを作成します。

Set-ProvSchemeコマンドを使用してカタログを更新できます。 PowerShellコマンドSet-ProvVmUpdateTimeWindowを使用して既存のVMを更新することもできます。 マシンプロファイルは、次回の電源投入時に更新されます。

実行中のAzure Spot VMでの削除

コンピューティング容量が利用できない場合、または1時間あたりの料金が構成された最大価格より高い場合、Azureは実行中のSpot VMを削除します。 デフォルトでは、削除は通知されません。 VMは単にフリーズしてから削除されます。 Microsoftは、スケジュールされたイベントを使用して削除を監視することを推奨しています。 「削除の発生を継続的に監視する」を参照してください。 VM内からスクリプトを実行して、削除前に通知を受け取ることもできます。 たとえば、MicrosoftにはPython ScheduledEvents.csのポーリング スクリプトがあります。

トラブルシューティング

  • Get-ProvVMコマンドを使用すると、プロビジョニングされたVMのcustomMachineData内のSpot VMプロパティを確認できます。 priorityフィールドがSpotに設定されている場合、Spotは使用中です。
  • VMがAzure PortalでSpotを使用しているかどうかを確認できます:

    1. Azure PortalでVMを見つけます。
    2. Overviewページに移動します。
    3. 一番下までスクロールして、Azure Spotセクションを見つけます。

      • Spotが使用中ではない場合、このフィールドは空です。
      • Spotが使用中の場合、Azure SpotAzure Spot eviction policyフィールドが設定されます。
  1. [Configuration]ページで、VMの請求プロファイルまたは時間あたりの最大価格を確認できます。

バックアップVMサイズの構成

パブリッククラウドでは、特定のVMサイズで容量が不足する場合があります。 また、Azure Spot VMを使用している場合、VMはAzureの容量ニーズによってはいつでも削除されてしまいます。 Azureの容量が不十分な場合、またはSpot VMの電源投入に失敗した場合、MCSはバックアップVMサイズにフォールバックします。 MCSマシンカタログの作成または更新中に、カスタムプロパティBackupVmConfigurationを使用してバックアップVMサイズの一覧を提供できます。 MCSは、一覧で指定された順序でバックアップVMサイズにフォールバックしようとします。

MCSがVMに特定のバックアップ構成を使用する場合、次のシャットダウンまでその構成を使用し続けます。 次回の電源投入時に、MCSはプライマリVM構成の起動を試みます。 失敗した場合、MCSは一覧に従ってバックアップVMサイズの構成を再起動しようとします。

この機能は以下でサポートされています:

  • マシンプロファイルを使用するカタログ
  • 永続的および非永続的MCSマシンカタログ
  • 現在のAzure環境

重要な注意事項

  • 一覧には複数のバックアップVMサイズを指定できます。
  • この一覧は一意である必要があります。
  • 一覧内の各VMにインスタンスの種類プロパティを追加できます。 種類はSpotまたはRegularのいずれかです。 種類が指定されていない場合、MCSはVMをRegularであるとみなします。
  • Set-ProvScheme PowerShellコマンドを使用して、既存のカタログのバックアップVMサイズの一覧を変更できます。
  • Set-ProvVMUpdateTimeWindowコマンドを使用して、カタログに関連付けられたプロビジョニングスキームから作成された既存のVMを更新できます。
  • Set-ProvVMコマンドを使用して、選択した数の既存のMCS VMに対するバックアップVMサイズの一覧を構成できます。 ただし、更新を適用するには、Set-ProvVMUpdateTimeWindowを使用してVMの更新時間枠を設定し、その枠内でVMを起動します。 VMでSet-ProvVmコマンドが使用される場合、プロビジョニングスキームの一覧が後で更新されたとしても、VMはその特定のVMに設定されたバックアップVMサイズの一覧を引き続き使用します。 Set-ProvVM-RevertToProvSchemeConfigurationを使用すると、VMにプロビジョニングスキームのバックアップ一覧を使用させることができます。

バックアップVMサイズを含むカタログを作成する

Studio UIがフリーズする問題を解決するには、PowerShellコマンドを実行している間、すべての一重引用符を&quot;に置き換えてください。

  1. PowerShellウィンドウを開きます。
  2. asnp citrix*を実行し、Citrix固有のPowerShellモジュールをロードします。
  3. ブローカーカタログを作成します。 このカタログには、これから作成されるマシンが含まれています。
  4. IDプールを作成します。 これは、作成予定のマシン用に作成されるADアカウントのコンテナになります。
  5. マシンプロファイルを使用してプロビジョニングスキームを作成します。 How to configure backup configurationを参照してください。
  6. プロビジョニングスキームの一意のIDでBrokerCatalogを更新します。
  7. VMを作成してカタログに追加します。

既存のカタログの更新

Set-ProvSchemeコマンドを使用してプロビジョニングスキームを更新できます。 How to configure backup configurationを参照してください。

既存のVMの更新

Set-ProvVMUpdateTimeWindowPowerShellコマンドを使用してカタログの既存のVMを更新できます。 このコマンドは、指定された時間枠内の次回の電源投入時に、カタログに関連付けられたプロビジョニングスキームから作成された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を起動します。 例:

  1. 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=`"[{&quot;ServiceOffering&quot;: &quot;Standard_D2as_v4&quot;, &quot;Type&quot;: &quot;Spot&quot;}, {&quot;ServiceOffering&quot;: &quot;Standard_D2s_v3&quot;, &quot;Type&quot;: &quot;Regular&quot;}, {&quot;ServiceOffering&quot;: &quot;Standard_D2s_v3&quot;, &quot;Type&quot;: &quot;Spot&quot;}]`"/> </CustomProperties>"
    <!--NeedCopy-->
    
  2. Set-ProvVMUpdateTimeWindowコマンドを実行して変更を適用します。 次に例を示します:

      Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -StartsNow -DurationInMinutes 60
    <!--NeedCopy-->
    

すべてのリソースのタグをコピーする

マシンプロファイルで指定されたタグを、マシンカタログ内の新しいVMまたは既存のVMの複数のNICやディスク(OSディスク、IDディスク、ライトバックキャッシュディスク)などのすべてのリソースにコピーできます。 マシンプロファイルのソースは、VMまたはARMテンプレートスペックにすることができます。

タグにポリシーを追加するか(「タグの準拠のためのポリシー定義を割り当てる」を参照)、マシンプロファイルのソースにタグを追加してリソース上のタグを保持する必要があります。

前提条件

マシンプロファイルのソース(VMまたはARMテンプレートスペック)を作成して、VM、ディスク、およびそのVMのNICにタグを付けます。

  • VMをマシンプロファイルの入力で使用する場合は、Azure Portal内のVMとすべてのリソースにタグを適用します。 「Azure Portalを使用してタグを適用する」を参照してください。
  • ARMテンプレートスペックをマシンプロファイルの入力として使用する場合は、各リソースの下に次のタグブロックを追加します。

        "tags": {
       "TagC": "Value3"
       },
     <!--NeedCopy-->
    

テンプレートスペックには、最大1つのディスクと少なくとも1つのNICを含めることができます。

新しいマシンカタログ内のVMのリソースにタグをコピーする

  1. VMまたはARMテンプレートスペックをマシンプロファイル入力として使用して、非永続カタログまたは永続カタログを作成します。
  2. VMをカタログに追加し、電源をオンにします。 マシンプロファイルで指定されたタグがそのVMの対応するリソースにコピーされている必要があります。

    マシンプロファイルで指定されたNICの数とVMで使用するNICの数が一致しない場合、エラーが発生します。

既存のVMのリソースのタグを変更する

  1. すべてのリソースのタグを使用してマシンプロファイルを作成します。
  2. 更新されたマシンプロファイルで既存のマシンカタログを更新します。 次に例を示します:

      Set-ProvScheme -ProvisioningSchemeName <YourCatalogName> -MachineProfile <PathToYourMachineProfile>
    <!--NeedCopy-->
    
  3. 更新を適用するVMをオフにします。
  4. VMのスケジュールされた更新を要求します。 次に例を示します:

      Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName <YourCatalogName>  -VMName machine1 -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  5. 仮想マシンの電源を入れます。
  6. マシンプロファイルで指定されたタグが対応するリソースにコピーされている必要があります。

マシンプロファイルで指定されたNICの数とSet-ProvSchemeで指定されたNICの数が一致しない場合、エラーが発生します。

フォーマット済みのWBCディスクカタログの作成

フォーマット済みのWBCディスクカタログを作成して、プロビジョニングされたマシンの起動パフォーマンスを向上させることができます。 この機能を実装するには、WBCを有効にしてAzureカタログを作成し、追加のカスタムプロパティPreformatWriteBackCacheTrueとして追加します。

Set-ProvSchemeコマンドを使用して既存のカタログを更新し、WBCディスクサイズを更新できます。

この機能は、イメージ管理機能と互換性があり、これによって、MCSはマスタリングフェーズを全体的なプロビジョニングワークフローから分離できます。 イメージ管理について詳しくは、「イメージ管理」を参照してください。

WBCを有効にしてPreformatWriteBackCacheTrueにして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ディスクを削除する

MCSでプロビジョニングされたCitrix ProvisioningカタログをAzureで作成するときに、WBCディスクを非永続としてプロビジョニングできます(PersistWBCをFalseに設定)。 この構成は、MCSでプロビジョニングされたCitrix Provisioningカタログの仮想マシンをAzureでシャットダウンした後に、ライトバックキャッシュ(WBC)ディスクを削除するのに役立ちます。

条件

この機能を動作させるには、カスタムプロパティPreformatWriteBackCacheTrueに設定する必要があります。

PersistWBCFalsePreformatWriteBackCacheTrueにして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によって作成された永続的または非永続的な仮想マシンに永続的なデータディスクを作成して割り当てることができます。

データディスクは、イメージソースとして管理対象ディスクからプロビジョニングする必要があります。

データディスクのプロパティ

カスタムプロパティでプロパティが指定されていない場合、データディスクはカスタムプロパティまたはOSディスクテンプレートからプロパティを取得します。

  • カスタムプロパティから取得したプロパティ

    • DiskEncryptionSetId
    • ゾーン
    • StorageType
  • カスタムプロパティで指定されていない場合は、OSディスクテンプレートから取得したプロパティ

    • DiskEncryptionSetId
    • ゾーン
    • StorageType

  • カスタムプロパティまたはOSディスクテンプレートでゾーン冗長ストレージ(ZRS)が指定されていない場合、データディスクはOSディスクおよびIDディスクと同じゾーンに配置されます。
  • タグはOSディスクテンプレートからのみ取得されます。

制限事項

現在、次の操作はサポートされていません:

  • 複数のデータディスクのプロビジョニング。
  • 非永続データディスクのプロビジョニング。
  • テンプレートを使用してデータディスクを作成する。
  • データディスクを使用するように既存のカタログとVMを変更する。
  • データディスクをリセットする。
  • データディスクのイメージ更新。
  • 管理対象ディスク以外のソースを使用する。
  • Azure Compute Gallery(ACG)にデータディスクを保存する。
  • データディスクにStorageTypeAtShutdownを使用する

データディスクを使用してカタログを作成する

データディスクを使用してMCSマシンカタログをプロビジョニングするには、New-ProvScheme PowerShellコマンドに次のパラメーターを含めます。

  • DataDisk:有効なManagedDiskタイプのインベントリアイテムへのパス。
  • DataDiskPersistenceDataDiskが永続的か非永続的かを示します。 ただし、現在は永続データディスクのみがサポートされています。

次に例を示します:

  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-->

データディスクが使用中かどうかを確認する

データディスクが仮想マシンに割り当てられているかどうかを確認するには、次の手順を実行します:

  • Get-ProvVmを実行し、仮想マシンのCustomVmDataを確認します。 仮想マシンがデータディスクを使用している場合、役割DiskRole.DataDiskがあるディスクレコードが存在します。
  • Azureポータルで、仮想マシンの下にデータディスクが存在するかどうかを確認します。

データディスクを削除する

カタログを削除すると、forgetVMまたはpurgeDBOnlyオプションを使用しない限り、データディスクは削除されます。 仮想マシンを削除すると、forgetVMまたはpurgeDBOnlyオプションを使用しない限り、データディスクは削除されます。

次の手順

追加情報

Microsoft Azureカタログの作成

この記事の概要