Citrix Virtual Apps and Desktops

Microsoft Azureカタログの作成

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

注:

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

マシンカタログの作成

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

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

イメージは、ディスク、スナップショット、またはAzure Compute Gallery内のイメージ定義のイメージバージョンであり、マシンカタログ内のVMの作成に使用されます。マシンカタログを作成する前に、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です。

マシンカタログ作成ウィザードで:

  • マシンタイプおよびマシン管理ページには、Azure固有の情報は含まれていません。マシンカタログの作成の記事のガイダンスに従ってください。

  • イメージページで、このカタログにマシンを作成するためのテンプレートとして使用するイメージを選択します。

    使用するイメージタイプとしてマスターイメージを選択する場合は、イメージの選択をクリックし、必要に応じてマスターイメージを選択するために次の手順に従います。

    1. (テナント内またはテナント間で共有イメージが構成されている接続にのみ適用)イメージが存在するサブスクリプションを選択します。
    2. リソースグループを選択します。
    3. Azure VHD、Azure Compute Gallery、またはAzureイメージバージョンに移動します。必要に応じて、選択したイメージにメモを追加します。

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

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

    注:

    • カタログ内のマシンを作成した接続(ホスト)に対応するサブスクリプションは、緑色の点で示されます。その他のサブスクリプションは、そのサブスクリプションとAzure Compute Galleryを共有しているものです。これらのサブスクリプションでは、共有ギャラリーのみが表示されます。共有サブスクリプションの構成方法については、テナント内(サブスクリプション間)でイメージを共有およびテナント間でイメージを共有を参照してください。
    • Trusted Launchが有効なイメージまたはスナップショットを選択する場合、セキュリティの種類としてTrusted Launchを使用するマシンプロファイルの使用が必須です。その後、マシンプロファイルでSecureBootとvTPMの値を指定して、これらを有効または無効にできます。Trusted LaunchはShared Image Galleryではサポートされていません。Azure Trusted Launchの詳細については、https://docs.microsoft.com/en-us/azure/virtual-machines/trusted-launchを参照してください。
    • Trusted Launchが有効なWindowsでエフェメラルOSディスクを使用してプロビジョニングスキームを作成できます。Trusted Launchが有効なイメージを選択する場合、vTPMが有効なTrusted Launchを持つマシンプロファイルを選択する必要があります。エフェメラルOSディスクを使用してマシンカタログを作成する方法については、エフェメラルOSディスクを使用してマシンを作成する方法を参照してください。
    • イメージのレプリケーションが進行中の場合でも、イメージをマスターイメージとして選択してセットアップを完了できます。ただし、イメージのレプリケーション中にカタログ作成に時間がかかる場合があります。MCSは、カタログ作成から1時間以内にレプリケーションが完了することを要求します。レプリケーションがタイムアウトすると、カタログ作成は失敗します。Azureでレプリケーションステータスを確認できます。レプリケーションがまだ保留中の場合、またはレプリケーションが完了した後に再試行してください。
    • Azureでマシンカタログのマスターイメージを選択すると、MCSは選択したマスターイメージとマシンプロファイルに基づいてOSタイプを識別します。MCSが識別できない場合は、マスターイメージと一致するOSタイプを選択してください。
    • Gen2イメージを使用してGen2 VMカタログをプロビジョニングすることで、起動時間のパフォーマンスを向上させることができます。ただし、Gen1イメージを使用してGen2マシンカタログを作成することはサポートされていません。同様に、Gen2イメージを使用してGen1マシンカタログを作成することもサポートされていません。また、世代情報を持たない古いイメージはすべてGen1イメージです。

    使用するイメージタイプとして準備済みイメージを選択する場合は、イメージの選択をクリックし、必要に応じて準備済みイメージを選択します。

    VMの作成を成功させるには、イメージにCitrix VDA 2311以降がインストールされており、MCSIOがVDAに存在することを確認してください。

    イメージを選択すると、マシンプロファイルを使用(Microsoft Entra IDに必須)チェックボックスが自動的に選択されます。マシンプロファイルの選択をクリックして、リソースグループのリストからVMまたはARMテンプレート仕様を参照します。カタログ内のVMは、選択したマシンプロファイルから構成を継承できます。

    ARMテンプレート仕様がマシンカタログを作成するためのマシンプロファイルとして使用できることを確認するために、その有効性を検証します。ARMテンプレート仕様を検証する方法は2つあります。

    • リソースグループリストからARMテンプレート仕様を選択した後、次へをクリックします。ARMテンプレート仕様にエラーがある場合、エラーメッセージが表示されます。
    • 次のいずれかのPowerShellコマンドを実行します。
      • Test-ProvInventoryItem -HostingUnitName <string> -InventoryPath <string>
      • Test-ProvInventoryItem -HostingUnitUid <Guid> -InventoryPath <string>

    VMがマシンプロファイルから継承できる構成の例は次のとおりです。

    • アクセラレーテッドネットワーク
    • ブート診断
    • ホストディスクキャッシュ(OSおよびMCSIOディスクに関連)
    • マシンサイズ(特に指定がない限り)
  • VMに設定されたタグ

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

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

重要:

  • Azure自動配置が有効になっているホストグループのみが表示されます。
  • ホストグループを使用すると、ウィザードの後半で表示される仮想マシンページが変更されます。選択したホストグループに含まれるマシンサイズのみがそのページに表示されます。また、可用性ゾーンは自動的に選択され、選択できません。
  • ストレージとライセンスの種類ページは、Azure Resource Managerイメージを使用している場合にのみ表示されます。

    • ストレージ冗長タイプを選択します。
      • ローカル冗長ストレージ (LRS): LRSを使用すると、利用可能なすべてのストレージタイプから選択できます。LRSを使用する場合、Azureは指定された可用性ゾーン内にのみ仮想マシン (VM) をデプロイします。
      • ゾーン冗長ストレージ (ZRS): ZRSはVM配置の柔軟性を高め、Azureは利用可能な任意のゾーンでVMを起動できます。これはローカル冗長ストレージ (LRS) に対する主要な利点であり、ディスクの元のゾーンがアクセス不能になった場合でもVMの可用性を保証します。ただし、ZRSはPremium SSDおよびStandard SSDストレージタイプとのみ互換性があります。
    • マシンカタログに使用するストレージタイプを選択します。ストレージタイプによって、ウィザードの仮想マシンページで提供されるマシンサイズが決まります。

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

    注:

    • IDディスクは、選択したストレージタイプに関係なく、常にStandard SSDを使用して作成されます。
    • ストレージ冗長性 として ZRS を選択した場合、Premium SSDStandard SSD のみを選択するオプションが得られます。

    Azureストレージタイプとストレージレプリケーションの詳細については、以下を参照してください。

    既存のWindowsライセンスまたはLinuxライセンスを使用するかどうかを選択します。

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

      • Windows Serverライセンス。Windows ServerまたはAzure Windows Serverライセンスを使用でき、Azure Hybrid Benefitsを利用できます。詳細については、https://azure.microsoft.com/en-us/pricing/hybrid-benefit/ を参照してください。Azure Hybrid Benefitは、AzureでVMを実行するコストを基本コンピューティング料金に削減し、Azureギャラリーからの追加のWindows Serverライセンスのコストを免除します。

      • Windows Clientライセンス。Windows 10およびWindows 11ライセンスをAzureに持ち込むことができ、追加のライセンスなしでAzureでWindows 10およびWindows 11 VMを実行できます。詳細については、「クライアントアクセスライセンスと管理ライセンス」を参照してください。

    プロビジョニングされたVMがライセンス特典を使用していることは、次の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ライセンス: BYOS (Bring-Your-Own-Subscription) Linuxライセンスを使用すると、ソフトウェアの料金を支払う必要はありません。BYOS料金にはコンピューティングハードウェア料金のみが含まれます。ライセンスには2種類あります。

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

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

      New-ProvScheme でLicenseTypeをRHEL_BYOSに設定する例:

      New-ProvScheme -CleanOnBoot -ProvisioningSchemeName "azureCatalog" -RunAsynchronously -Scope @() -SecurityGroup @() -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" /><Property xsi:type="StringProperty" Name="StorageAccountType" Value="StandardSSD_LRS" /><Property xsi:type="StringProperty" Name="ResourceGroups" Value="hu-dev-mcs" /><Property xsi:type="StringProperty" Name="OsType" Value="Linux" /><Property xsi:type="StringProperty" Name="LicenseType" Value="RHEL_BYOS" /></CustomProperties>'
      <!--NeedCopy-->
      

      Set-ProvScheme でLicenseTypeをSLES_BYOSに設定する例:

      Set-ProvScheme -ProvisioningSchemeName "azureCatalog" -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" /><Property xsi:type="StringProperty" Name="StorageAccountType" Value="StandardSSD_LRS" /><Property xsi:type="StringProperty" Name="ResourceGroups" Value="hu-dev-mcs" /><Property xsi:type="StringProperty" Name="OsType" Value="Linux" /><Property xsi:type="StringProperty" Name="LicenseType" Value="SLES_BYOS" /></CustomProperties>'
      <!--NeedCopy-->
      

      注:

      LicenseType の値が空の場合、デフォルト値はOsType値に応じてAzure Windows Server LicenseまたはAzure Linux Licenseになります。

      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 Compute Gallery(旧称 Azure Shared Image Gallery)は、イメージを管理および共有するためのリポジトリです。これにより、組織全体でイメージを利用可能にできます。大規模な非永続マシンカタログを作成する際には、SIGにイメージを保存することをお勧めします。そうすることで、VDA OSディスクのより高速なリセットが可能になるためです。準備済みイメージをAzure Compute Galleryに配置 を選択すると、Azure Compute Gallery設定 セクションが表示され、さらにAzure Compute Gallery設定を指定できます。

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

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

    注:

    イメージを保存するためにACGにギャラリーが作成されます。このギャラリーはVM作成のためにMCSのみがアクセスでき、イメージの選択 ページには表示されません。

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

  • NIC ページにはAzure固有の情報は含まれていません。「マシンカタログの作成」記事のガイダンスに従ってください。

  • ディスク設定」ページで、ライトバックキャッシュを有効にするかどうかを選択します。MCS ストレージ最適化機能が有効になっている場合、カタログ作成時に次の設定を構成できます。これらの設定は、Azure および GCP 環境の両方に適用されます。

    Machine catalog setup- disk settings

    ライトバックキャッシュを有効にすると、次のことができます。

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

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

      • プレミアム SSD
      • スタンダード SSD
      • スタンダード HDD

      注:

      ストレージとライセンスの種類」ページで「ストレージ冗長性」として「ZRS」を選択した場合、ライトバックキャッシュディスクのストレージ冗長性はデフォルトで ZRS に設定されます。

    • プロビジョニングされた VM に対してライトバックキャッシュディスクを永続化するかどうかを選択します。オプションを有効にするには、「ライトバックキャッシュを有効にする」を選択します。デフォルトでは、「非永続ライトバックキャッシュディスクを使用する」が選択されています。

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

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

      注:

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

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

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

    • 電源サイクル中に VDA の VM とシステムディスクを保持するかどうかを選択します。

      電源サイクル中に VM とシステムディスクを保持する。「ライトバックキャッシュを有効にする」を選択した場合に利用可能です。デフォルトでは、VM とシステムディスクはシャットダウン時に削除され、起動時に再作成されます。VM の再起動時間を短縮したい場合は、このオプションを選択します。このオプションを有効にすると、ストレージコストも増加することに注意してください。

    • ストレージコストの節約」を有効にするかどうかを選択します。有効にすると、VM シャットダウン時にストレージディスクをスタンダード HDD にダウングレードすることで、ストレージコストを節約できます。VM は再起動時に元の設定に戻ります。このオプションは、ストレージディスクとライトバックキャッシュディスクの両方に適用されます。または、PowerShell を使用することもできます。VM シャットダウン時にストレージタイプを下位層に変更するを参照してください。

      注:

      Microsoft は、VM シャットダウン中のストレージタイプの変更に制限を課しています。また、将来的に Microsoft がストレージタイプの変更をブロックする可能性もあります。詳細については、この Microsoft の記事を参照してください。

    • このカタログ内のマシン上のデータを暗号化するかどうか、およびどの暗号化キーを使用するかを選択します。顧客管理キー (CMK) を使用したサーバー側暗号化により、マネージドディスクレベルで暗号化を管理し、カタログ内のマシン上のデータを保護できます。デフォルト設定は、マシンプロファイルまたはマスターイメージのいずれかから継承され、プロファイルが優先されます。

      • マシンプロファイルCMKを使用している場合、「各マシン上のデータを暗号化するために次のキーを使用する」オプションが自動選択され、マシンプロファイルからのキーがデフォルトになります。
      • プラットフォーム管理キー (PMK) を使用するマシンプロファイルを使用しており、マスターイメージCMKで暗号化されている場合、「各マシン上のデータを暗号化するために次のキーを使用する」オプションが自動選択され、マスターイメージからのキーがデフォルトになります。
      • マシンプロファイルを使用しておらず、マスターイメージCMKで暗号化されている場合、「各マシン上のデータを暗号化するために次のキーを使用する」オプションが自動選択され、マスターイメージからのキーがデフォルトになります。

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

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

    • リソースグループを作成する場合は、「次へ」を選択します。
    • 既存のリソースグループを使用する場合は、「利用可能なプロビジョニングリソースグループ」リストからグループを選択します。注意: カタログで作成するマシンを収容するのに十分なグループを選択してください。選択したグループが少なすぎる場合はメッセージが表示されます。後でカタログに VM を追加する予定がある場合は、必要最小限よりも多く選択することをお勧めします。カタログ作成後にリソースグループを追加することはできません。

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

  • マシンID」ページで、ID タイプを選択し、このカタログ内のマシンの ID を構成します。VM を「Microsoft Entra 参加済み」として選択した場合、それらを Microsoft Entra セキュリティグループに追加できます。詳細な手順は次のとおりです。

    1. ID タイプ」フィールドから「Microsoft Entra 参加済み」を選択します。「Microsoft Entra セキュリティグループ (オプション)」オプションが表示されます。
    2. Microsoft Entra セキュリティグループ: 新規作成」をクリックします。
    3. グループ名を入力し、「作成」をクリックします。
    4. 画面の指示に従って Azure にサインインします。 グループ名が Azure に存在しない場合、緑色のアイコンが表示されます。そうでない場合、新しい名前を入力するよう求めるエラーメッセージが表示されます。
    5. VM のマシンアカウント命名スキームを入力します。

    カタログ作成後、Citrix Virtual Apps and Desktops はユーザーに代わって Azure にアクセスし、セキュリティグループと、そのグループの動的メンバーシップルールを作成します。このルールに基づき、このカタログで指定された命名スキームを持つ VM は自動的にセキュリティグループに追加されます。

    異なる命名スキームを持つ VM をこのカタログに追加するには、Azure にサインインする必要があります。Citrix Virtual Apps™ and Desktops は、その後 Azure にアクセスし、新しい命名スキームに基づいて動的メンバーシップルールを作成できます。

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

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

    ヒント:

概要」ページでは、Azureの公開価格に基づいて、このマシンカタログ内の仮想マシンの月額見積もりコストを表示できます。カタログをホストする接続がAzureでMicrosoft.Consumption/pricesheets/read権限を持っている場合、見積もりは代わりに組織の契約価格を使用して計算されます。

コスト見積もりを選択すると、詳細情報が表示されます。より正確な見積もりを得るには、1日の稼働時間、週あたりの稼働日数、節約オプションなどの設定を使用状況に基づいて調整してください。

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

Azure一時ディスクがライトバックキャッシュディスクとして適格となる条件

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

  • ライトバックキャッシュディスクは非永続的である必要があります。Azure一時ディスクは永続データには適していません。

  • 選択したAzure VMサイズには一時ディスクが含まれている必要があります。

  • エフェメラルOSディスクを有効にする必要はありません。

  • ライトバックキャッシュファイルをAzure一時ディスクに配置することを受け入れます。

  • Azure一時ディスクのサイズは、(ライトバックキャッシュディスクサイズ + ページングファイル用の予約スペース + 1 GBのバッファースペース)の合計サイズよりも大きくする必要があります。

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

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

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

Azureテンプレート仕様の作成

AzureポータルでAzureテンプレート仕様を作成し、Web StudioおよびPowerShellコマンドで使用して、MCSマシンカタログを作成または更新できます。

既存のVMのAzureテンプレート仕様を作成するには:

  1. Azureポータルに移動します。リソースグループを選択し、VMとネットワークインターフェースを選択します。上部の メニューから、テンプレートのエクスポートをクリックします。
  2. カタログプロビジョニング用のテンプレート仕様を作成する場合は、パラメーターを含めるチェックボックスをオフにします。
  3. 後でテンプレート仕様を変更するには、ライブラリに追加をクリックします。
  4. テンプレートのインポートページで、名前サブスクリプションリソースグループ場所バージョンなどの必要な情報を入力します。次へ: テンプレートの編集をクリックします。
  5. カタログをプロビジョニングする場合は、ネットワークインターフェースも独立したリソースとして必要です。したがって、テンプレート仕様で指定されているdependsOnをすべて削除する必要があります。例:

    "dependsOn": [
    "[resourceId('Microsoft.Network/networkInterfaces', 'tnic937')]"
    ],
    <!--NeedCopy-->
    
  6. レビューと作成を作成し、テンプレート仕様を作成します。
  7. テンプレート仕様ページで、作成したばかりのテンプレート仕様を確認します。テンプレート仕様をクリックします。左側のパネルで、バージョンをクリックします。
  8. 新しいバージョンの作成をクリックして、新しいバージョンを作成できます。新しいバージョン番号を指定し、現在のテンプレート仕様に変更を加え、レビューと作成をクリックしてテンプレート仕様の新しいバージョンを作成します。

以下の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マシンカタログを作成または更新できます。これを行うには、Web StudioまたはPowerShellコマンドを使用できます。

Azureサーバー側暗号化

Citrix Virtual Apps and Desktopsは、Azure Key Vaultを介したAzureマネージドディスクの顧客管理暗号化キーをサポートしています。このサポートにより、独自の暗号化キーを使用してマシンカタログのマネージドディスクを暗号化することで、組織およびコンプライアンス要件を管理できます。詳細については、Azure Disk Storageのサーバー側暗号化を参照してください。

マネージドディスクにこの機能を使用する場合:

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

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

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

この機能を使用する際は、以下を考慮してください。

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

注:

Azureサーバー側暗号化の構成に関する情報については、クイックスタート: Azureポータルを使用してKey Vaultを作成するを参照してください。

Azure カスタマーマネージド暗号化キー

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

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

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

カスタマーマネージドキーを使用したマシンカタログの作成」を参照してください。

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

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

この暗号化方法は、Azureストレージを介してデータを暗号化しません。VMをホストするサーバーがデータを暗号化し、その後、暗号化されたデータがAzureストレージサーバーを介して流れます。したがって、この暗号化方法はデータをエンドツーエンドで暗号化します。

制限事項:

Azureホストでのディスク暗号化は次のとおりです。

  • すべてのAzureマシンサイズでサポートされているわけではありません
  • Azureディスク暗号化と互換性がありません

ホストでの暗号化機能を備えたマシンカタログを作成するには、次の手順を実行します。

  1. サブスクリプションでホストでの暗号化機能が有効になっているかどうかを確認します。これを行うには、「https://learn.microsoft.com/en-us/rest/api/resources/features/get?tabs=HTTP/」を参照してください。有効になっていない場合は、サブスクリプションでこの機能を有効にする必要があります。サブスクリプションで機能を有効にする方法については、「https://learn.microsoft.com/en-us/azure/virtual-machines/disks-enable-host-based-encryption-portal?tabs=azure-powershell#prerequisites/」を参照してください。
  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ポータルで、マシンプロファイルの入力としてVMまたはテンプレート仕様を作成します。

    • VMを作成する場合は、ホストでの暗号化をサポートするVMサイズを選択します。VMを作成すると、VMプロパティのホストでの暗号化が有効になります。
    • テンプレート仕様を使用する場合は、securityProfile内でパラメーターEncryption at Hosttrueとして割り当てます。
  4. VMまたはテンプレート仕様のいずれかを選択して、マシンプロファイルワークフローでMCSマシンカタログを作成します。

    • OSディスク/データディスク: カスタマーマネージドキーとプラットフォームマネージドキーを介して暗号化されます
    • エフェメラルOSディスク: プラットフォームマネージドキーのみを介して暗号化されます
    • キャッシュディスク: カスタマーマネージドキーとプラットフォームマネージドキーを介して暗号化されます

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

マネージドディスクでの二重暗号化

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

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

注:

  • Web StudioおよびPowerShellコマンドを使用して、二重暗号化でマシンカタログを作成および更新できます。PowerShellコマンドについては、「二重暗号化を使用したマシンカタログの作成」を参照してください。
  • 二重暗号化でマシンカタログを作成または更新するには、マシンプロファイルに基づかないワークフローまたはマシンプロファイルに基づくワークフローを使用できます。
  • マシンプロファイルに基づかないワークフローを使用してマシンカタログを作成する場合、保存されているDiskEncryptionSetIdを再利用できます。
  • マシンプロファイルを使用する場合、VMまたはテンプレート仕様をマシンプロファイルの入力として使用できます。

制限事項:

  • 二重暗号化は、Ultra DisksまたはPremium SSD v2ディスクではサポートされていません。
  • 二重暗号化は、アンマネージドディスクではサポートされていません。
  • カタログに関連付けられているDiskEncryptionSetキーを無効にすると、カタログのVMが無効になります。
  • カスタマーマネージドキーに関連するすべてのリソース (Azure Key Vault、ディスク暗号化セット、VM、ディスク、スナップショット) は、同じサブスクリプションおよびリージョンにある必要があります。
  • サブスクリプションごとに、リージョンあたり最大50個のディスク暗号化セットしか作成できません。

Azure リソースグループ

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

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

Azure リソースグループあたりの仮想マシン、マネージドディスク、スナップショット、およびイメージの数に制限はありません。(Azure リソースグループあたり240 VM、800 マネージドディスクの制限は削除されました。)

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

Azure エフェメラルディスク

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

注:

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

エフェメラル OS ディスクには、プロビジョニングスキームでマネージドディスクと Shared Image Gallery を使用する必要があります。

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

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

次の点を考慮してください。

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

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

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

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

  • エフェメラル OS ディスクと MCS I/O の両方を同時に有効にしてマシンカタログを作成することはできません。

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

Azure コンピュートギャラリー

Azure Compute Gallery (旧称 Azure Shared Image Gallery) を、Azure の MCS プロビジョニング済みマシン用の公開イメージリポジトリとして使用します。公開イメージをギャラリーに保存することで、OS ディスクの作成とハイドレーションを高速化し、非永続 VM の起動時間とアプリケーション起動時間を改善できます。共有イメージギャラリーには、次の3つの要素が含まれています。

  • ギャラリー: イメージはここに保存されます。MCS はマシンカタログごとに1つのギャラリーを作成します。
  • ギャラリーイメージ定義: この定義には、公開イメージに関する情報 (オペレーティングシステムの種類と状態、Azure リージョン) が含まれます。MCS は、カタログ用に作成されたイメージごとに1つのイメージ定義を作成します。
  • ギャラリーイメージバージョン: Shared Image Gallery の各イメージは複数のバージョンを持つことができ、各バージョンは異なるリージョンに複数のレプリカを持つことができます。各レプリカは、公開イメージの完全なコピーです。

注:

Shared Image Gallery 機能は、マネージドディスクとのみ互換性があります。レガシーマシンカタログでは利用できません。

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

PowerShell を使用して Azure Compute Gallery イメージを使用してマシンカタログを作成または更新する方法については、「Azure Compute Gallery イメージを使用してマシンカタログを作成または更新する」を参照してください。

Azure 機密 VM

Azure 機密コンピューティング VM は、仮想デスクトップがメモリ内で暗号化され、使用中に保護されることを保証します。

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

機密 VM タイプ Azure マスターイメージと機密 VM タイプ Azure マシンプロファイルを使用して準備済みイメージを作成し、その準備済みイメージを使用して MCS カタログを作成することもできます。

機密 VM の重要な考慮事項

サポートされている VM サイズと機密 VM を使用したマシンカタログの作成に関する重要な考慮事項は次のとおりです。

  • 機密 VM でサポートされている VM サイズを確認するには、「サイズ」を参照してください。

  • 機密VMを使用したマシンカタログの作成。

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

      Azureスナップショット、マネージドディスク、または仮想マシンでは、セキュリティタイプは次のとおりです。

      • ConfidentialVM_DiskEncryptedWithCustomerKey
      • ConfidentialVM_DiskEncryptedWithPlatformKey
      • ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey

      Azure ARMテンプレートスペックバージョンでは、セキュリティタイプは次のとおりです。

      • VMGuestStateOnly: VMゲスト状態のみが暗号化された機密VM
      • DiskWithVMGuestState: OSディスクとVMゲスト状態の両方がプラットフォーム管理キーまたは顧客管理キーで暗号化された機密VM。通常ディスクとエフェメラルOSディスクの両方を暗号化できます。
    • AdditionalDataパラメーターを使用して、マネージドディスク、スナップショット、Azure Compute Galleryイメージ、VM、ARMテンプレートスペックなど、さまざまなリソースタイプの機密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

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

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

    • マスターイメージまたはマシンプロファイルを、機密から非機密セキュリティタイプへ、または非機密から機密セキュリティタイプへ変更することはできません。
    • 不適切な構成に対しては、適切なエラーメッセージが表示されます。

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

機密VMのセットを作成する前に、マスターイメージとマシンプロファイルを準備するために次の手順に従います。

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

    注:

    VHDを使用した機密VMの作成はサポートされていません。代わりに、Azure Compute Gallery、マネージドディスク、またはスナップショットを使用してください。

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

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

      注:

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

機密VMタイプの準備済みイメージを使用してMCSカタログを作成する場合は、機密VMタイプのマスターイメージと機密VMタイプのマシンプロファイルを使用して準備済みイメージを作成します。準備済みイメージの作成については、「イメージ定義と初期イメージバージョンの作成」を参照してください。

Web StudioまたはPowerShellコマンドを使用した機密VMの作成

機密VMのセットを作成するには、目的の機密VMから派生したマスターイメージとマシンプロファイルを使用してマシンカタログを作成します。

Web Studioを使用してカタログを作成するには、「マシンカタログの作成」に記載されている手順に従います。以下の考慮事項に留意してください。

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

ブート整合性監視

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

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

Set-ProvSchemeを使用して、既存のカタログをブート整合性対応のマシンプロファイルを指すように更新することで、ブート整合性を使用できます。カタログに追加された新しいVMは、整合性監視が有効になります。

Set-ProvVmUpdateTimeWindowSet-ProvVm、またはMaintenance Cyclesを使用して、カタログ内の既存のVMを更新することもできます。以下を変換できます。

  • 整合性監視機能を持たないVMに整合性監視機能を付与
  • 整合性監視機能を持つVMから整合性監視機能を削除

整合性監視機能が有効なマシンカタログの作成

必要な権限:

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

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

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

  1. GuestAttestation拡張機能がインストールされたマシンプロファイル(VMまたはテンプレート仕様)を作成します。(以下のコンテンツへのリンク)
  2. Web StudioまたはPowerShellコマンドを使用して、マシンプロファイルの入力に基づいてMCSマシンカタログを作成します。

    注:

    AdditionalDataパラメーターを指定したGet-Item PowerShellコマンドを使用すると、VMまたはテンプレート仕様のGuestAttestationExtensionEnabledステータスを確認できます。

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

GuestAttestation拡張機能がインストールされたマシンプロファイルの作成

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

整合性監視機能が有効なVMを作成するには、次の手順を実行します。

  1. Azureポータルにサインインします。
  2. 新しいVMを作成する場合:

    1. セキュリティの種類として信頼された起動仮想マシンまたは機密仮想マシンを選択します。
    2. セキュリティ機能の構成をクリックし、整合性監視チェックボックスを選択します。

      注:

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

  3. 概要ページで、セキュリティの種類セクションに移動し、セキュリティの種類信頼された起動または機密仮想マシンであり、整合性監視が有効になっていることを確認します。
  4. 拡張機能 + アプリケーションページに移動し、GuestAttestationがインストールされていることを確認します。

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

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

  • テンプレート仕様を使用してGuestAttestationをインストールできます。「整合性監視を有効にする - テンプレート仕様」を参照してください。

    注:

    このテンプレート仕様では、設定の下で、アテステーションに使用するエンドポイントを構成できます。構成しない場合、Azureが構成するエンドポイントを決定します。

Azure Marketplace

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

ヒント:

Azure Marketplaceで見つかる一部のイメージ(標準のWindows Serverイメージなど)には、プラン情報が付加されていません。Citrix Virtual Apps and Desktopsの機能は、有料イメージ向けです。

共有イメージギャラリーで作成されたイメージにAzureプラン情報が含まれていることの確認

このセクションの手順を使用して、Web Studioで共有イメージギャラリーのイメージを表示します。これらのイメージは、オプションでマスターイメージとして使用できます。イメージを共有イメージギャラリーに配置するには、ギャラリーにイメージ定義を作成します。

Azure Marketplace 共有イメージギャラリー

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

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

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

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

Azure Marketplace VDAバージョンの追加

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

Azure MarketplaceでVDAオプションを選択

オンデマンド容量予約VMのカタログ作成

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

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

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

制限事項

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

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

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

オンデマンド容量予約VMのカタログ作成手順

  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. Web StudioまたはPowerShellコマンドを使用して、マシンプロファイルでマシンカタログを作成します。

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

ネストされた仮想化

マスターVMをネストされた仮想化が有効になるように構成すると、そのマスターVMを使用して作成されたMCSマシンカタログ内のすべてのVMでネストされた仮想化が有効になります。この機能は、永続的および非永続的なVMの両方に適用できます。既存のMCSマシンカタログと既存のVMをイメージ更新によってネストされた仮想化を持つように更新できます。

現在、Dv3およびEv3 VMサイズのみがネストされた仮想化をサポートしています。

ネストされた仮想化の詳細については、MicrosoftブログのAzureにおけるネストされた仮想化を参照してください。

NVMeのみのSKU

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

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

次のサービスオファリングを使用してMCSカタログを作成できます。

制限事項

  • NVMeをサポートするすべてのサービスオファリングが、同時にTrusted Launchをサポートするわけではありません。
  • NVMeはGen 1 VMではサポートされていません。
  • 一部のOSイメージはNVMeをサポートしない場合があります。その場合、Azure UIでNVMeオプションはグレー表示されます。

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

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

    1. NVMeをサポートするマーケットプレイスイメージを使用します。NVMeをサポートするAzure Marketplaceイメージのリストは、リモートNVMeでサポートされているOSイメージで確認できます。
    2. New-ProvSchemeコマンドのMasterImageVMパラメーターで使用するためにVMのOSディスクのスナップショットを取得するか、マネージドディスクを直接使用します。

      以下のいずれかの方法を使用して、マスターイメージが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が有効になっているマシンプロファイルとしてVMまたはテンプレート仕様を使用します。DiskControllerTypeがNVMeに設定されている任意のVMを使用します。VMをマシンプロファイルとして直接使用するか、テンプレートをエクスポートしてテンプレート仕様をマシンプロファイルとして使用します。

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

  1. マスターイメージとして使用するVMを作成します。NVMeをサポートするマーケットプレイスイメージを使用します。NVMeをサポートするAzure Marketplaceイメージのリストは、リモートNVMeでサポートされているOSイメージで確認できます。
  2. NVMeのみをサポートするサービスオファリングを使用します。

    注:

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

既存の永続VMの変更

VMは作成後にNVMe構成を変更できません。永続VMのNVMe構成を変更する方法は、VMを再デプロイすることです。これを行うロジックは次のとおりです。

  1. VMの現在の状態を保存します。
  2. 既存のVMの電源を投入した後、VMの再デプロイが必要かどうかを検出します。

    1. 構成変更がNVMeからNVMe、またはSCSIからSCSIの場合、VMの再デプロイは不要です。
    2. 構成変更がSCSIからNVMe、またはその逆の場合、VMを再デプロイして再作成します。

PowerShellを使用したマシンカタログの作成

このセクションでは、PowerShellを使用してカタログを作成する方法について詳しく説明します。

非永続ライトバックキャッシュディスクを使用したカタログの作成

非永続ライトバックキャッシュディスクでカタログを構成するには、PowerShellパラメーターNew-ProvScheme CustomPropertiesを使用します。カスタムプロパティUseTempDiskForWBCは、ライトバックキャッシュファイルを保存するためにAzure一時ストレージを使用することを受け入れるかどうかを示します。一時ディスクをライトバックキャッシュディスクとして使用する場合は、New-ProvSchemeの実行時にこれをtrueに構成する必要があります。このプロパティが指定されていない場合、パラメーターはデフォルトでFalseに設定されます。

例として、CustomPropertiesパラメーターを使用してUseTempDiskForWBCtrueに設定します。

-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を使用します。このパラメーターは、MCSプロビジョニングされたマシンに対してライトバックキャッシュディスクがどのように永続化するかを決定するために使用される追加のプロパティPersistWBCをサポートします。PersistWBCプロパティは、UseWriteBackCacheパラメーターが指定され、WriteBackCacheDiskSizeパラメーターがディスクが作成されることを示すように設定されている場合にのみ使用されます。

PersistWBCをサポートする前のCustomPropertiesパラメーターに見られるプロパティの例は次のとおりです。

<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="benvaldev5RG3" />
</CustomProperties>
<!--NeedCopy-->

これらのプロパティを使用する場合、CustomPropertiesパラメーターからプロパティが省略されている場合、それらがデフォルト値を含むことを考慮してください。PersistWBCプロパティには、trueまたはfalseの2つの可能な値があります。

PersistWBCプロパティをtrueに設定すると、Citrix Virtual Apps and Desktops管理者がWeb Studioを使用してマシンをシャットダウンしても、ライトバックキャッシュディスクは削除されません。

PersistWBCプロパティをfalseに設定すると、Citrix Virtual Apps and Desktops管理者がWeb Studioを使用してマシンをシャットダウンしたときに、ライトバックキャッシュディスクが削除されます。

注:

PersistWBCプロパティが省略されている場合、プロパティはデフォルトでfalseになり、Web Studioを使用してマシンがシャットダウンされるとライトバックキャッシュは削除されます。

例えば、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 を変更しようとしても、マシンカタログや、マシンのシャットダウン時のライトバックキャッシュディスクの永続性には影響しません。

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

New-ProvScheme
-CleanOnBoot
-CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"Premium_LRS`" /><Property xsi:type=`"StringProperty`" Name=`"ResourceGroups`" Value=`"benvaldev5RG3`" /><Property xsi:type=`"StringProperty`" Name=`"PersistWBC`" Value=`"true`" /></CustomProperties>"
-HostingUnitName "adSubnetScale1"
-IdentityPoolName "BV-WBC1-CAT1"
-MasterImageVM "XDHyp:\HostingUnits\adSubnetScale1\image.folder\GoldImages.resourcegroup\W10MCSIO-01_OsDisk_1_a940e6f5bab349019d57ccef65d2c7e3.manageddisk"
-NetworkMapping @{"0"="XDHyp:\HostingUnits\adSubnetScale1\\virtualprivatecloud.folder\CloudScale02.resourcegroup\adVNET.virtualprivatecloud\adSubnetScale1.network"}
-ProvisioningSchemeName "BV-WBC1-CAT1"
-ServiceOffering "XDHyp:\HostingUnits\adSubnetScale1\serviceoffering.folder\Standard_D2s_v3.serviceoffering"
-UseWriteBackCache
-WriteBackCacheDiskSize 127
-WriteBackCacheMemorySize 256
<!--NeedCopy-->

MCSIOによる起動パフォーマンスの向上

MCSIOが有効な場合、AzureおよびGCPのマネージドディスクの起動パフォーマンスを向上させることができます。この機能を構成するには、New-ProvScheme コマンドでPowerShellの PersistOSDisk カスタムプロパティを使用します。New-ProvScheme に関連するオプションは次のとおりです。

<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="Resource <!--NeedCopy-->
``````<!--NeedCopy-->
<!--NeedCopy-->
````````Groups" Value="benvaldev5RG3" />
<Property xsi:type="StringProperty" Name="PersistOsDisk" Value="true" />
</CustomProperties>
<!--NeedCopy-->

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

New-ProvScheme
-CleanOnBoot
-CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"Premium_LRS`" /><Property xsi:type=`"StringProperty`" Name=`"ResourceGroups`" Value=`"benvaldev5RG3`" /><Property xsi:type=`"StringProperty`" Name=`"PersistOsDisk`" Value=`"true`" /></CustomProperties>"
-HostingUnitName "adSubnetScale1"
-IdentityPoolName "BV-WBC1-CAT1"
-MasterImageVM "XDHyp:\HostingUnits\adSubnetScale1\image.folder\GoldImages.resourcegroup\W10MCSIO-01_OsDisk_1_a940e6f5bab349019d57ccef65d2c7e3.manageddisk"
-NetworkMapping @{"0"="XDHyp:\HostingUnits\adSubnetScale1\\virtualprivatecloud.folder\CloudScale02.resourcegroup\adVNET.virtualprivatecloud\adSubnetScale1.network"}
-ProvisioningSchemeName "BV-WBC1-CAT1"
-ServiceOffering "XDHyp:\HostingUnits\adSubnetScale1\serviceoffering.folder\Standard_D2s_v3.serviceoffering"
-UseWriteBackCache
-WriteBackCacheDiskSize 127
-WriteBackCacheMemorySize 256
<!--NeedCopy-->

PowerShellを使用したカタログ作成または更新でのテンプレート仕様の利用

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

Web Studioについては、「Web 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>
        [-LoggingId <Guid>]
        [-BearerToken <String>][-AdminAddress <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]
       [-LoggingId <Guid>] [-BearerToken <String>][-AdminAddress <String>] [<CommonParameters>]
       <!--NeedCopy-->
      

Trusted Launch対応マシンカタログ

Trusted Launch対応のマシンカタログを正常に作成するには、以下を使用します。

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

Citrix Virtual Apps and Desktopsの提供インベントリアイテムを表示し、VMサイズがTrusted Launchをサポートしているかどうかを判断するには、次のコマンドを実行します。

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

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

    • SupportsTrustedLaunchTrue の場合、VMサイズはTrusted Launchをサポートしています。
    • SupportsTrustedLaunchFalse の場合、VMサイズはTrusted Launchをサポートしていません。

AzureのPowerShellに従って、Trusted LaunchをサポートするVMサイズを判断するには、次のコマンドを使用できます。

(Get-AzComputeResourceSku | where {$_.Locations.Contains($region) -and ($_.Name -eq "<VM size>") })[0].Capabilities
<!--NeedCopy-->

Azure PowerShellコマンドを実行した後、VMサイズがTrusted Launchをサポートしているかどうかを説明する例を以下に示します。

  • 例 1: Azure VMがGeneration 1のみをサポートしている場合、そのVMはTrusted Launchをサポートしていません。したがって、Azure PowerShellコマンドを実行しても TrustedLaunchDisabled 機能は表示されません。
  • 例 2: Azure VMがGeneration 2のみをサポートしており、TrustedLaunchDisabled 機能が True の場合、Generation 2 VMサイズはTrusted Launchでサポートされていません。
  • 例 3: Azure VMがGeneration 2のみをサポートしており、PowerShellコマンドを実行しても TrustedLaunchDisabled 機能が表示されない場合、Generation 2 VMサイズはTrusted Launchでサポートされています。

Azure仮想マシンのTrusted Launchの詳細については、Microsoftドキュメント「Azure仮想マシンのTrusted Launch」を参照してください。

Trusted Launch を使用したマシンカタログの作成

  1. Trusted Launch が有効なマスターイメージを作成します。Microsoft ドキュメント「Trusted Launch VM Images」を参照してください。
  2. セキュリティの種類を trusted launch virtual machines として VM またはテンプレートスペックを作成します。VM またはテンプレートスペックの作成に関する詳細は、Microsoft ドキュメント「Deploy a trusted launch VM」を参照してください。
  3. Web Studio または PowerShell コマンドを使用してマシンカタログを作成します。

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

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

Trusted Launch を使用したマシンカタログの更新

永続マシンカタログと非永続マシンカタログの両方を更新できます。

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

Trusted Launch を使用した永続マシンカタログの更新

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

Trusted Launch を使用した非永続マシンカタログの更新

Trusted Launch を使用したマシンカタログ作成時のエラー

Trusted Launch を使用してマシンカタログを作成する際に、以下のシナリオで適切なエラーが発生します。

シナリオ エラー
アンマネージドカタログの作成時にマシンプロファイルを選択した場合 MachineProfileNotSupportedForUnmanagedCatalog
セキュリティの種類が Trusted Launch のマスターイメージソースを使用してマネージドカタログを作成する際にマシンプロファイルを選択しなかった場合 MachineProfileNotFoundForTrustedLaunchMasterImage
マスターイメージのセキュリティの種類とは異なるセキュリティ種類のマシンプロファイルを選択した場合 SecurityTypeConflictBetweenMasterImageAndMachineProfile
カタログ作成時に Trusted Launch をサポートしない VM サイズを選択したが、Trusted Launch をサポートするマスターイメージを使用した場 MachineSizeNotSupportTrustedLaunch

マシンプロファイルプロパティ値の使用

マシンカタログは、カスタムプロパティで定義されている以下のプロパティを使用します。

  • 可用性ゾーン
  • 専用ホストグループ ID
  • ディスク暗号化セット ID
  • OS タイプ
  • ライセンスタイプ
  • ストレージタイプ

これらのカスタムプロパティが明示的に定義されていない場合、プロパティ値は、マシンプロファイルとして使用される ARM テンプレートスペックまたは VM から設定されます。さらに、ServiceOffering が指定されていない場合、それはマシンプロファイルから設定されます。

注:

マシンプロファイルから一部のプロパティが欠落しており、カスタムプロパティで定義されていない場合、該当する箇所ではプロパティのデフォルト値が適用されます。

以下のセクションでは、CustomProperties にすべてのプロパティが定義されているか、値が MachineProfile から派生している場合の New-ProvScheme および Set-ProvScheme のいくつかのシナリオについて説明します。

  • New-ProvScheme シナリオ

    • MachineProfile にすべてのプロパティがあり、CustomProperties が定義されていない場合。例:

      New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpA.vm"

      以下の値がカタログのカスタムプロパティとして設定されます。

       Get-ProvScheme | select CustomProperties
       <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="StorageAccountType" Value="<mpA-value>"/>
       <Property xsi:type="StringProperty" Name="OSType" Value="<mpA-value>"/>
       <Property xsi:type="StringProperty" Name="LicenseType" Value="<mpA-value>"/>
       <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="<mpA-value>"/>
       <Property xsi:type="StringProperty" Name="DedicatedHostGroupId" Value="<mpA-value>"/>
       <Property xsi:type="StringProperty" Name="Zones" Value="<mpA-value>"/>
       </CustomProperties>
       <!--NeedCopy-->
      
    • MachineProfile に一部のプロパティがあり、CustomProperties が定義されていない場合。例: MachineProfile に LicenseType と OsType のみがある場合。

      New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpA.vm"

      以下の値がカタログのカスタムプロパティとして設定されます。

       Get-ProvScheme | select CustomProperties
       <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="OSType" Value="<mpA-value>"/>
       <Property xsi:type="StringProperty" Name="LicenseType" Value="<mpA-value>"/>
       </CustomProperties>
       <!--NeedCopy-->
      
    • MachineProfile と CustomProperties の両方ですべてのプロパティを定義します。例:

      New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpA.vm" -CustomProperties $CustomPropertiesA

      カスタムプロパティが優先されます。カタログには次の値がカスタムプロパティとして設定されます。

       Get-ProvScheme | select CustomProperties
       <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="StorageAccountType" Value="<CustomPropertiesA-value>"/>
       <Property xsi:type="StringProperty" Name="OSType" Value="<CustomPropertiesA-value>"/>
       <Property xsi:type="StringProperty" Name="LicenseType" Value="<CustomPropertiesA-value>"/>
       <Property xsi:type="StringProperty" Name="DiskEncryptionSetId" Value="<CustomPropertiesA-value>"/>
       <Property xsi:type="StringProperty" Name="DedicatedHostGroupId" Value="<CustomPropertiesA-value>"/>
       <Property xsi:type="StringProperty" Name="Zones" Value="<CustomPropertiesA-value>"/>
       </CustomProperties>
       <!--NeedCopy-->
      
    • 一部のプロパティは MachineProfile で定義され、一部のプロパティは CustomProperties で定義されます。例:
      • CustomProperties は LicenseType と StorageAccountType を定義します
      • MachineProfile は LicenseType、OsType、およびゾーンを定義します

      New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpA.vm" -CustomProperties $CustomPropertiesA

      カタログには次の値がカスタムプロパティとして設定されます。

       Get-ProvScheme | select CustomProperties
       <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="StorageAccountType" Value="<CustomPropertiesA-value>"/>
       <Property xsi:type="StringProperty" Name="OSType" Value="<mpA-value>"/>
       <Property xsi:type="StringProperty" Name="LicenseType" Value="<CustomPropertiesA-value>"/>
       <Property xsi:type="StringProperty" Name="Zones" Value="<mpA-value>"/>
       </CustomProperties>
       <!--NeedCopy-->
      
    • 一部のプロパティは MachineProfile で定義され、一部のプロパティは CustomProperties で定義されます。さらに、ServiceOffering は定義されていません。例:

      • CustomProperties は StorageType を定義します
      • MachineProfile は LicenseType を定義します
       New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mp.vm"
       -ServiceOffering "XDHyp:\HostingUnits\azureunit\serviceoffering.folder\<explicit-machine-size>.serviceoffering"
       <!--NeedCopy-->
      

      カタログには次の値がカスタムプロパティとして設定されます。

       Get-ProvScheme | select ServiceOffering
       serviceoffering.folder\<explicit-machine-size>.serviceoffering
      
       Get-ProvScheme | select CustomProperties
       <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="StorageAccountType" Value="explicit-storage-type"/>
       <Property xsi:type="StringProperty" Name="LicenseType" Value="value-from-machineprofile"/>
       </CustomProperties>
       <!--NeedCopy-->
      
    • OsType が CustomProperties または MachineProfile のどちらにもない場合:
      • 値はマスターイメージから読み取られます
      • マスターイメージがアンマネージドディスクの場合、OsType は Windows に設定されます。例:

      New-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpA.vm" -MasterImageVM "XDHyp:\HostingUnits\azureunit\image.folder\linux-master-image.manageddisk"

      マスターイメージからの値は、この場合 Linux としてカスタムプロパティに書き込まれます。

       Get-ProvScheme | select CustomProperties
       <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="OSType" Value="Linux"/>
       </CustomProperties>
       <!--NeedCopy-->
      
  • Set-ProvScheme のシナリオ

    • 既存のカタログ:

      • StorageAccountType と OsType の CustomProperties
      • ゾーンを定義する MachineProfile mpA.vm
    • 更新:

      • StorageAccountType を定義する MachineProfile mpB.vm
      • LicenseType と OsType を定義する新しいカスタムプロパティセット $CustomPropertiesB

      Set-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpB.vm" -CustomProperties $CustomPropertiesB

      カタログには次の値がカスタムプロパティとして設定されます。

       Get-ProvScheme | select CustomProperties
       <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="StorageAccountType" Value="<mpB-value>"/>
       <Property xsi:type="StringProperty" Name="OSType" Value="<CustomPropertiesB-value>"/>
       <Property xsi:type="StringProperty" Name="LicenseType" Value="<CustomPropertiesB-value>"/>
           </CustomProperties>
       <!--NeedCopy-->
      
    • 既存のカタログ:
      • StorageAccountType と OsType の CustomProperties
      • StorageAccountType と LicenseType を定義する MachineProfile mpA.vm
    • 更新:
      • StorageAccountType と OsType を定義する新しいカスタムプロパティセット $CustomPropertiesB

      Set-ProvScheme -CustomProperties $CustomPropertiesB

      カタログには次の値がカスタムプロパティとして設定されます。

       Get-ProvScheme | select CustomProperties
       <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
       <Property xsi:type="StringProperty" Name="StorageAccountType" Value="<CustomPropertiesB-value>"/>
       <Property xsi:type="StringProperty" Name="OSType" Value="<CustomPropertiesB-value>"/>
       <Property xsi:type="StringProperty" Name="LicenseType" Value="<mp-A-value>"/>
       </CustomProperties>
       <!--NeedCopy-->
      
    • 既存のカタログ:
      • StorageAccountType と OsType の CustomProperties
      • ゾーンを定義する MachineProfile mpA.vm
    • 更新:
      • StorageAccountType と LicenseType を定義する MachineProfile mpB.vm
      • ServiceOffering は指定されていません

      Set-ProvScheme -MachineProfile "XDHyp:\HostingUnits\azureunit\machineprofile.folder\azure.resourcegroup\mpB.vm"

カタログのカスタムプロパティとして、以下の値が設定されます。

    ```
    Get-ProvScheme | select ServiceOffering
    serviceoffering.folder\<value-from-machineprofile>.serviceoffering

    Get-ProvScheme | select CustomProperties
    <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <Property xsi:type="StringProperty" Name="StorageAccountType" Value="<mpB-value>"/>
    <Property xsi:type="StringProperty" Name="OSType" Value="<prior-CustomProperties-value>"/>
    <Property xsi:type="StringProperty" Name="LicenseType" Value="<mpB-value>"/>
    </CustomProperties>
    <!--NeedCopy--> ```

仮想マシンごとの複数NICを持つカタログの作成または更新

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

仮想マシンごとの複数NICを持つように、マシンプロファイルに基づかないマシンカタログとマシンプロファイルに基づくマシンカタログを作成または更新できます。現在、マシンプロファイルに基づくマシンカタログの場合、マシンプロファイルソースで指定されたNICの数と同じ数しか持つことができません。

アクセラレーテッドネットワーキングなどのプロパティは、マシンプロファイルソースから派生します。

注記:

仮想マシンのサイズは、同じ数のNICと対応するアクセラレーテッドネットワーキングをサポートしている必要があります。そうでない場合、エラーが発生します。

選択した仮想マシンサイズに関連付けられているNICの最大数を取得できます。MaxNetworkInterfacesというPowerShellプロパティは、AdditionalDataパラメーターを指定してPowerShellのget-itemコマンドを実行したときに、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"を実行して、利用可能なすべての仮想マシンサイズを一覧表示します。
  4. get-item -Path "XDHyp:\Connections\abc-connection\East US.region\serviceoffering.folder\Standard_M416ms_v2.serviceoffering").AdditionalDataを実行します。
  5. MaxNetworkInterfacesを確認して、NICの最大数を把握します。

仮想マシンごとの複数NICを持つカタログの作成

仮想マシンごとの複数NICを持つカタログを作成するには、次の手順を実行します。

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

       New-Provscheme -NetworkMappings @{"0"="subnetpath1";"1"="subnetpath1"}
       <!--NeedCopy-->
      
    • マシンプロファイルに基づくマシンカタログを作成する場合:

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

      注記:

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

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

仮想マシンごとの複数NICを持つカタログの更新

仮想マシンごとの複数NICを持つカタログを更新するには、次の手順を実行します。

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

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

       Set-Provscheme -NetworkMappings @{"0"="subnetpath1";"1"="subnetpath1"}
       <!--NeedCopy-->
      
    • マシンプロファイルに基づいてマシンカタログを作成する場合:

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

既存の仮想マシンを複数NICを持つように更新

Set-ProvVMUpdateTimeWindowを使用して既存の仮想マシンを更新し、更新時間枠中に既存の仮想マシンでパワーサイクルを実行することもできます。

Azure Monitor Agentがインストールされたカタログ仮想マシンのプロビジョニング

Azure Monitorは、Azureおよびオンプレミス環境からのテレメトリデータを収集、分析し、それに基づいてアクションを実行できるサービスです。

Azure Monitor Agent (AMA) は、仮想マシンなどのコンピューティングリソースから監視データを収集し、そのデータをAzure Monitorに配信します。現在、イベントログ、Syslog、パフォーマンスメトリックの収集をサポートしており、Azure Monitor MetricsおよびAzure Monitor Logsのデータソースに送信します。

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

要件

  • 権限: 必要なAzure権限に指定されている最小限のAzure権限と、Azure Monitorを使用するための以下の権限があることを確認してください。

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

AMAが有効なカタログVMをプロビジョニングする手順:

  1. マシンプロファイルテンプレートの設定。

    • VMをマシンプロファイルテンプレートとして使用する場合:

      1. Azureポータルで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-->
        
  2. 既存のMCSマシンカタログの作成または更新。

    • 新しいMCSカタログを作成する場合:

      1. Web Studioで、そのVMまたはテンプレート仕様をマシンプロファイルとして選択します。
      2. カタログを作成するための次の手順に進みます。
    • 既存のMCSカタログを更新するには、以下のPoSHコマンドを使用します。

      • 新しいVMに更新されたマシンプロファイルテンプレートを取得させるには、次のコマンドを実行します。

         Set-ProvScheme -ProvisioningSchemeName "name"
         -MachineProfile "XDHyp:\HostingUnits\Unit1\machineprofile.folder\abc.resourcegroup\ab-machine-profile.vm"
         <!--NeedCopy-->
        
      • 既存のVMを更新されたマシンプロファイルテンプレートで更新するには:

         Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -StartsNow -DurationInMinutes -1
         <!--NeedCopy-->
        
  3. カタログVMの電源オン。
  4. Azureポータルに移動し、監視拡張機能がVMにインストールされていること、およびVMがDCRのリソースの下に表示されていることを確認します。数分後、監視データがAzure Monitorに表示されます。

トラブルシューティング

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

顧客管理の暗号化キーを使用したマシンカタログの作成

顧客管理の暗号化キーを使用してマシンカタログを作成する詳細な手順は次のとおりです。

  1. PowerShellウィンドウを開きます。
  2. asnp citrix*を実行して、Citrix固有のPowerShellモジュールをロードします。
  3. cd xdhyp:/と入力します。
  4. cd .\HostingUnits\(your hosting unit)と入力します。
  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=`"StorageAccountType`" Value=`"Standard_LRS`" />
    <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. マシンカタログの作成を完了します。

二重暗号化によるマシンカタログの作成

Web StudioおよびPowerShellコマンドを使用して、二重暗号化されたマシンカタログを作成および更新できます。

二重暗号化されたマシンカタログを作成する詳細な手順は次のとおりです。

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

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

  3. マシンプロファイルワークフローを使用する場合は、VMまたはテンプレート仕様をマシンプロファイル入力として作成します。
    • VMをマシンプロファイル入力として使用する場合:
      1. Azure PortalでVMを作成します。
      2. ディスク > キー管理 に移動し、任意の DiskEncryptionSetID でVMを直接暗号化します。
    • テンプレート仕様をマシンプロファイル入力として使用する場合:
      1. テンプレートの properties>storageProfile>osDisk>managedDisk の下に、diskEncryptionSet パラメーターを追加し、二重暗号化DESのIDを追加します。
  4. マシンカタログを作成します。
    • Web 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-->
        
  5. リモートPowerShell SDKを使用してカタログの作成を完了します。リモートPowerShell SDKを使用したカタログの作成方法については、https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/ を参照してください。カタログで作成されたすべてのマシンは、選択した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-->
    

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

カタログの二重暗号化の確認

  • Web 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の暗号化タイプがプラットフォーム管理キーと顧客管理キーであることを確認します。

Azureエフェメラルディスクを使用したカタログの作成

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

注:

カスタムプロパティ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に設定します。

注:

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

例:

Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
<Property xsi:type="StringProperty" Name="UseEphemeralOsDisk" Value="true" />
</CustomProperties>'
<!--NeedCopy-->

エフェメラルディスクに関する重要な考慮事項

New-ProvSchemeを使用してエフェメラルOSディスクをプロビジョニングするには、次の制約を考慮してください。

  • カタログに使用されるVMサイズは、エフェメラルOSディスクをサポートしている必要があります
  • VMサイズに関連付けられているキャッシュディスクまたは一時ディスクのサイズは、OSディスクのサイズ以上である必要があります
  • 一時ディスクのサイズは、キャッシュディスクのサイズよりも大きい必要があります

次の場合にもこれらの問題を考慮してください。

  • プロビジョニングスキームの作成時
  • プロビジョニングスキームの変更時
  • イメージの更新時

Azure専用ホスト

MCSを使用して、Azure専用ホストにVMをプロビジョニングできます。Azure専用ホストにVMをプロビジョニングする前に:

  • ホストグループを作成します
  • そのホストグループ内にホストを作成します
  • カタログと仮想マシンを作成するために十分なホスト容量が予約されていることを確認します

次のPowerShellスクリプトを使用して、ホストテナンシーが定義されたマシンカタログを作成できます。

New-ProvScheme <otherParameters> -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
 <Property xsi:type="StringProperty" Name="HostGroupId" Value="myResourceGroup/myHostGroup" />
 ...other Custom Properties...
 </CustomProperties>
<!--NeedCopy-->

MCSを使用してAzure専用ホストに仮想マシンをプロビジョニングする場合、次の点を考慮してください。

  • 専用ホストはカタログプロパティであり、カタログ作成後に変更することはできません。専用テナンシーは現在Azureではサポートされていません
  • HostGroupIdパラメーターを使用する場合、ホスティングユニットのリージョンに事前に構成されたAzureホストグループが必要です
  • Azureの自動配置が必要です。この機能は、ホストグループに関連付けられたサブスクリプションをオンボードする要求を行います。詳細については、VM Scale Set on Azure Dedicated Hosts - Public Previewを参照してください。自動配置が有効になっていない場合、MCSはカタログ作成中にエラーをスローします

Azure Compute Galleryイメージを使用したマシンカタログの作成または更新

マシンカタログを作成するために使用するイメージを選択する際、Azure Compute Galleryで作成したイメージを選択できます。

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

  1. Citrix Virtual Apps and Desktopsサイトを構成します
  2. Azure Resource Managerに接続します
  3. Azure portalで、リソースグループを作成します。詳細については、ポータルを使用したAzure Compute Galleryの作成を参照してください
  4. リソースグループで、Azure Compute Galleryを作成します
  5. Azure Compute Galleryで、イメージ定義を作成します
  6. イメージ定義で、イメージバージョンを作成します

Azure Compute Galleryのイメージを使用してマシンカタログを作成または更新するには、次のPowerShellコマンドを使用します。

  1. PowerShellウィンドウを開きます
  2. asnp citrix*を実行して、Citrix固有のPowerShellモジュールをロードします
  3. リソースグループを選択し、そのリソースグループのすべてのギャラリーを一覧表示します

    Get-ChildItem -LiteralPath @("XDHyp:\HostingUnits\testresource\image.folder\sharedImageGalleryTest.resourcegroup")
    <!--NeedCopy-->
    
  4. ギャラリーを選択し、そのギャラリーのすべてのイメージ定義を一覧表示します。

    Get-ChildItem -LiteralPath @("XDHyp:\HostingUnits\testresource\image.folder\sharedImageGalleryTest.resourcegroup\sharedImageGallery.sharedimagegallery")
    <!--NeedCopy-->
    
  5. 1つのイメージ定義を選択し、そのイメージ定義のすべてのイメージバージョンを一覧表示します。

    Get-ChildItem -LiteralPath @("XDHyp:\HostingUnits\testresource\image.folder\sharedImageGalleryTest.resourcegroup\sharedImageGallery.sharedimagegallery\sigtestimage.imagedefinition")
    <!--NeedCopy-->
    
  6. 次の要素を使用してMCSカタログを作成および更新します。
    • リソースグループ
    • ギャラリー
    • ギャラリーイメージ定義
    • ギャラリーイメージバージョン

    Remote PowerShell SDKを使用してカタログを作成する方法については、https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/を参照してください。

共有イメージギャラリーの構成

New-ProvSchemeコマンドを使用して、共有イメージギャラリーをサポートするプロビジョニングスキームを作成します。Set-ProvSchemeコマンドを使用して、プロビジョニングスキームのこの機能を有効または無効にし、レプリカ比率とレプリカの最大値を変更します。

共有イメージギャラリー機能をサポートするために、3つのカスタムプロパティがプロビジョニングスキームに追加されました。

UseSharedImageGallery

  • 公開されたイメージを保存するために共有イメージギャラリーを使用するかどうかを定義します。Trueに設定されている場合、イメージは共有イメージギャラリーイメージとして保存され、それ以外の場合はスナップショットとして保存されます。
  • 有効な値はTrueFalseです。
  • プロパティが定義されていない場合、デフォルト値はFalseです。

SharedImageGalleryReplicaRatio

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

SharedImageGalleryReplicaMaximum

  • 各ギャラリーイメージバージョンに設定できるレプリカの最大数を定義します。
  • プロパティが定義されていない場合、デフォルト値は100です。
  • プロパティが定義されていない場合、デフォルト値は100です。

ヒント:

MCSプロビジョニングカタログの公開イメージを保存するために共有イメージギャラリーを使用する場合、MCSは、カタログ内のマシンの数、レプリカ比率、およびレプリカの最大値に基づいて、ギャラリーイメージバージョンのレプリカ数を設定します。レプリカ数は、カタログ内のマシンの数をレプリカ比率で除算し(最も近い整数値に切り上げ)、その値を最大レプリカ数で上限を設定することによって計算されます。たとえば、レプリカ比率が20で最大値が5の場合、0〜20台のマシンには1つのレプリカが作成され、21〜40台には2つのレプリカ、41〜60台には3つのレプリカ、61〜80台には4つのレプリカ、81台以上には5つのレプリカが作成されます。

ユースケース: 共有イメージギャラリーのレプリカ比率とレプリカ最大値の更新

既存のマシンカタログは共有イメージギャラリーを使用しています。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-->

ユースケース: スナップショットカタログから共有イメージギャラリーカタログへの変換

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

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

ヒント:

パラメーターSharedImageGalleryReplicaRatioSharedImageGalleryReplicaMaximumは必須ではありません。Set-ProvSchemeコマンドが完了しても、共有イメージギャラリーイメージはまだ作成されていません。カタログがギャラリーを使用するように構成されると、次のカタログ更新操作で公開されたイメージがギャラリーに保存されます。カタログ更新コマンドは、ギャラリー、ギャラリーイメージ、およびイメージバージョンを作成します。マシンをパワーサイクルすると更新され、必要に応じてレプリカ数が更新されます。その時点から、既存のすべての非永続マシンは共有イメージギャラリーイメージを使用してリセットされ、新しくプロビジョニングされたすべてのマシンはそのイメージを使用して作成されます。古いスナップショットは数時間以内に自動的にクリーンアップされます。

ユースケース: 共有イメージギャラリーカタログからスナップショットカタログへの変換

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

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

ヒント:

スナップショットから共有イメージギャラリーカタログへの更新とは異なり、各マシンのカスタムデータは、新しいカスタムプロパティを反映するようにまだ更新されていません。元の共有イメージギャラリーカスタムプロパティを表示するには、次のコマンドを実行します: Get-ProvVm -ProvisioningSchemeName catalog-nameSet-ProvScheme コマンドが完了しても、イメージスナップショットはまだ作成されていません。カタログがギャラリーを使用しないように構成されると、次回のカタログ更新操作で公開されたイメージがスナップショットとして保存されます。その時点から、既存のすべての非永続マシンはスナップショットを使用してリセットされ、新しくプロビジョニングされるすべてのマシンはスナップショットから作成されます。マシンをパワーサイクルすると更新され、その時点でカスタムマシンデータが更新され、UseSharedImageGalleryFalse に設定されていることが反映されます。古い共有イメージギャラリーアセット(ギャラリー、イメージ、バージョン)は、数時間以内に自動的にクリーンアップされます。

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

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

注:

  • ゾーンが指定されていない場合、MCSはAzureにリージョン内にマシンを配置させます。複数のゾーンが指定されている場合、MCSはそれらのゾーンにマシンをランダムに分散します。
  • ストレージとライセンスの種類ページでストレージ冗長性としてZRSを選択した場合、ゾーン選択をクリアしてAzureにVMアベイラビリティゾーンを管理させることを推奨する警告が表示されます。この警告は、アベイラビリティゾーンを持つマシンプロファイルまたはホストグループを選択した場合にのみ表示されます。

PowerShellによるアベイラビリティゾーンの構成

PowerShellを使用して、Get-Item で提供されているインベントリアイテムを表示できます。たとえば、米国東部リージョンStandard_B1ls サービス提供を表示するには:

$serviceOffering = Get-Item -path "XDHyp:\Connections\my-connection-name\East US.region\serviceoffering.folder\Standard_B1ls.serviceoffering"
<!--NeedCopy-->

ゾーンを表示するには、アイテムの AdditionalData パラメーターを使用します:

$serviceOffering.AdditionalData

アベイラビリティゾーンが指定されていない場合、マシンのプロビジョニング方法に変更はありません。

PowerShellを通じてアベイラビリティゾーンを構成するには、New-ProvScheme 操作で利用可能な Zones カスタムプロパティを使用します。Zones プロパティは、マシンをプロビジョニングするアベイラビリティゾーンのリストを定義します。これらのゾーンには、1つまたは複数のアベイラビリティゾーンを含めることができます。たとえば、ゾーン1と3の場合は <Property xsi:type="StringProperty" Name="Zones" Value="1, 3"/> のようになります。

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

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

ヒント:

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

ストレージの種類

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

  • OSディスク: Premium SSD、SSD、またはHDD
  • ライトバックキャッシュディスク: Premium SSD、SSD、またはHDD

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

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

ヒント:

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

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

ストレージの種類を構成

VMのストレージの種類を構成するには、New-ProvSchemeStorageType パラメーターを使用します。StorageType パラメーターの値をサポートされているストレージの種類の一つに設定します。

以下は、プロビジョニングスキームにおける 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マネージドディスクが複数のアベイラビリティゾーン間で同期的にレプリケートされ、あるゾーンでの障害から他のゾーンの冗長性を利用して回復できます。

ストレージタイプのカスタムプロパティで Premium_ZRS および StandardSSD_ZRS を指定できます。ZRSストレージは、既存のカスタムプロパティまたは MachineProfile テンプレートを通じて設定できます。ZRSストレージは、-StartsNow および -DurationInMinutes -1 パラメーターを持つ Set-ProvVMUpdateTimeWindow コマンドでもサポートされており、既存のマシンをLRSからZRSストレージに変更できます。

制限事項:

  • マネージドディスクのみをサポート
  • PremiumおよびStandardソリッドステートドライブ(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ワークスペース
    • Standardティアの価格設定を持つイベントハブ名前空間
  2. マシンプロファイルのソースを作成します
  3. 新しいマシンカタログを作成するか、既存のカタログを更新するか、既存のVMを更新します

Azureで必要なIDを設定

Azureで以下のいずれかを設定します。

  • ストレージアカウント
  • Log Analyticsワークスペース
  • Standardティアの価格設定を持つイベントハブ名前空間

ストレージアカウントの設定

Azureで標準ストレージアカウントを作成します。テンプレートスペックでは、ストレージアカウントの完全なresourceIdstorageAccountIdとして指定します。

VMがストレージアカウントにデータをログするように設定されると、データはinsights-metrics-pt1mコンテナの下で見つけることができます。

Log Analyticsワークスペースの設定

Log Analyticsワークスペースを作成します。テンプレートスペックでは、Log Analyticsワークスペースの完全なresourceIdworkspaceIdとして指定します。

VMがワークスペースにデータをログするように設定されると、Azureの[ログ]の下でデータをクエリできます。Azureの[ログ]で以下のコマンドを実行すると、リソースによってログに記録されたすべてのメトリックの数を表示できます。

`AzureMetrics

summarize Count=count() by ResourceId`

イベントハブの設定

Azureポータルでイベントハブを設定するには、以下を実行します。

  1. Standardティアの価格設定を持つイベントハブ名前空間を作成します
  2. 名前空間の下にイベントハブを作成します
  3. イベントハブの下にあるキャプチャに移動します。Avro出力タイプでキャプチャするためにトグルをONに切り替えます
  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を更新できます。

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

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

注:

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

シナリオ 場所
カスタムプロパティでページファイル設定が指定されている場合 カスタムプロパティで指定されたとおり
エフェメラルOSディスクまたはハイバネーションが有効になっている場合 OSディスク
VMに一時ディスクがある場合 一時ディスク
MCS I/Oが有効になっている場合 WBCディスク

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

次の表は、イメージ準備中およびプロビジョニングスキーム更新中のページファイル設定の考えられるシナリオの一部を示しています。

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

ページファイル設定の指定

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

重要な考慮事項

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

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

注:

既存のカタログに新しく追加されたVMのページファイル設定は、マスターイメージを更新せずに変更できます。ページファイル設定を変更するには、VDAバージョン2311以降が必要です。PowerShellコマンドを使用してページファイル設定を変更できます。詳細については、ページファイル設定の変更を参照してください。

New-ProvScheme -CleanOnBoot `
-HostingUnitName "zijinnet" `
-IdentityPoolName "PageFileSettingExample" `
-ProvisioningSchemeName "PageFileSettingExample" `
-InitialBatchSizeHint 1 `
-MasterImageVM "XDHyp:\HostingUnits\zijinnet\image.folder\neal-zijincloud-resources.resourcegroup\CustomWin10VDA_OsDisk_1_9473d7c8a6174b2c8284c7d3efeea88f.manageddisk" `
-NetworkMapping @{"0"="XDHyp:\\HostingUnits\\zijinnet\\virtualprivatecloud.folder\\East US.region\\virtualprivatecloud.folder\\neal-zijincloud-resources.resourcegroup\\neal-zijincloud-resources-vnet.virtualprivatecloud\\default.network"} `
-ServiceOffering "XDHyp:\\HostingUnits\\zijinnet\\serviceoffering.folder\\Standard_B2ms.serviceoffering" `
-CustomProperties '<CustomProperties xmlns=" http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi=" http://www.w3.org/2001/XMLSchema-instance"> `
<Property xsi:type="StringProperty" Name="PersistOsDisk" Value="false"/> `
<Property xsi:type="StringProperty" Name="PersistVm" Value="false"/> `
<Property xsi:type="StringProperty" Name="PageFileDiskDriveLetterOverride" Value="d"/> `
<Property xsi:type="StringProperty" Name="InitialPageFileSizeInMB" Value="2048"/> `
<Property xsi:type="StringProperty" Name="MaxPageFileSizeInMB" Value="8196"/> `
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS"/> `
<Property xsi:type="StringProperty" Name="LicenseType" Value="Windows_Client"/> `
</CustomProperties>'
<!--NeedCopy-->

ページファイル設定の変更

既存のカタログに新しく追加されたVMのページファイル設定は、マスターイメージを更新せずに変更できます。現在、この機能はAzure環境のみに適用されます。

ページファイル設定を変更するには、VDAバージョン2311以降が必要です。PowerShellコマンドを使用してページファイル設定を変更できます。

Azure環境で変更できるさまざまなページファイル設定は次のとおりです。

  • 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 IOドライバーはページファイルを自動的に正しいディスクドライブにリダイレクトし、C:にはリダイレクトしません。

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

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

制限事項

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

    VMサイズがSpot VMをサポートしているかどうかを確認するには、次のPowerShellコマンドを実行します。VMサイズがSpot VMをサポートしている場合、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ポータルを使用してVMを作成するには、Azureポータルを使用した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、またはゼロより大きい小数のみにすることができます。詳細については、価格を参照してください。
  2. マシンプロファイルがAzure Spot VM対応であるかどうかを確認するには、次のPowerShellコマンドを実行します。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コマンドを使用してカタログを更新できます。また、Set-ProvVmUpdateTimeWindow PowerShellコマンドを使用して既存のVMを更新することもできます。マシンプロファイルは次回の電源投入時に更新されます。

実行中のAzure Spot VMでの強制排除

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

トラブルシューティング

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

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

      • Spot が使用されていない場合、このフィールドは空です。
      • Spot が使用されている場合、Azure Spot および Azure Spot 削除ポリシーフィールドが設定されています。
  1. 構成ページで、VM の課金プロファイルまたは時間あたりの最大価格を確認できます。

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

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

MCS が VM に特定のバックアップ VM サイズを使用する場合、次回のシャットダウンまたは休止状態要求までその構成を継続して使用します。次回の電源オン時に、MCS はプライマリ VM サイズを起動しようとします。失敗した場合、MCS はリストに従って再度バックアップ VM サイズを起動しようとします。

この機能は以下をサポートしています。

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

制限事項

以下の構成はサポートされていません。

  • Azure 仮想マシンの休止状態で説明されているように、Azure は休止状態の VM のサイズ変更を許可していません。VM は 停止済み 状態である必要があります。したがって、サイズを変更する前に、MCS は休止状態をクリアするために割り当て解除要求を発行します。これにより、VM の休止状態が失われます。その後、MCS はさまざまなバックアップサイズを繰り返し処理し、VM サイズを更新して電源をオンにします。
  • 永続的な VM の場合、以下のシナリオはサポートされていません。

    • VM はリソースディスクの一時ストレージをサポートしていますが、バックアップ VM サイズはサポートしていません。
    • VM はリソースディスクの一時ストレージを欠いていますが、バックアップ VM サイズはそれをサポートしています。
    • VM は DiskControllerType SCSI を使用していますが、バックアップ VM サイズは DiskControllerType NVMe のみをサポートしています。
    • VM は DiskControllerType NVMe を使用していますが、バックアップ VM サイズは DiskControllerType SCSI のみをサポートしています。
  • MCSIO が有効な非永続的な VM の場合、ライトバックキャッシュディスクがリソースディスクの一時ストレージを使用している場合、一時ストレージのないサイズへの切り替えはサポートされていません。
  • 既存の VM またはプライマリ VM サイズで休止状態が有効になっているが、バックアップ VM サイズが休止状態をサポートしていない。

重要な考慮事項

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

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

注:

Studio UI のフリーズの問題に対処するには、PowerShell コマンドの実行中にすべてのシングルクォートを &quot; に置き換えてください。

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

既存のカタログの更新

Set-ProvScheme コマンドを使用してプロビジョニングスキームを更新できます。バックアップ構成の構成方法を参照してください。

既存の VM の更新

Set-ProvVMUpdateTimeWindow PowerShell コマンドを使用して、カタログ内の既存の 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のVM、ディスク、およびNICにタグを付けるために、マシンプロファイルソース (VMまたはARMテンプレート仕様) を作成します。

  • 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. VMの電源をオンにします。
  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ディスクの削除

AzureでMCSプロビジョニングされたCitrix Provisioningカタログを作成する際、WBCディスクを非永続 (PersistWBCをFalseとして) プロビジョニングできます。この構成により、AzureでMCSプロビジョニングされたCitrix ProvisioningカタログのVMをシャットダウンした後、ライトバックキャッシュ (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によって作成された永続的または非永続的なVMに、永続データディスクを作成して割り当てることができます。

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

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

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

  • カスタムプロパティから継承されるプロパティ
    • DiskEncryptionSetId
    • Zones
    • StorageType
  • カスタムプロパティで指定されていない場合、OSディスクテンプレートから継承されるプロパティ
    • DiskEncryptionSetId
    • Zones
    • StorageType

注記:

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

制限事項

現在、以下の操作はサポートされていません。

  • 複数のデータディスクのプロビジョニング
  • 非永続データディスクのプロビジョニング
  • テンプレートを使用したデータディスクの作成
  • データディスクを使用するための既存のカタログおよびVMの変更
  • データディスクのリセット
  • データディスクのイメージ更新
  • マネージドディスク以外のソースの使用
  • Azure Compute Gallery (ACG) へのデータディスクの保存
  • データディスクに対する StorageTypeAtShutdown の使用

データディスクを含むカタログの作成

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

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

例:

New-ProvScheme  -CleanOnBoot -HostingUnitName "<HostingUnitName >" -IdentityPoolName "<IdentityPoolName >" -InitialBatchSizeHint 1 -MasterImageVM disk.manageddisk -NetworkMapping <NetworkMapping > -ProvisioningSchemeName "<ProvisioningSchemeName >" -DataDisk "XDHyp:\HostingUnits\Azure-Resources-1\image.folder\<resourcegroupname>\xxxx-datadisk.manageddisk"  -DataDiskPersistence "Persistent"  -Scope @() -VMCpuCount 4  -VMMemoryMB 6144  -TenancyType Shared  -FunctionalLevel "L7_20"
<!--NeedCopy-->

データディスクの使用状況の確認

データディスクがVMに割り当てられているかどうかを確認するには、以下を実行します。

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

データディスクの削除

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

アンマネージドディスクからマネージドディスクへの移行

2025年9月30日をもって、Azureはアンマネージドディスク(VHD)のサポートを正式に終了します。既存のアンマネージドディスクを使用しているVMは、期限後に停止され、割り当てが解除されます。

ただし、MCSでプロビジョニングされたVMをアンマネージドディスクからマネージドディスクに移行することで、Azureのアンマネージドディスク廃止計画によるサービス停止を回避できます。

VMに接続されているすべてのアンマネージドディスクが変換されます。これには、IDディスク、OSディスク、およびWBCディスク(使用されている場合)が含まれます。

Azureのアンマネージドディスク廃止計画の詳細については、「2025年9月30日までにAzureアンマネージドディスクを移行する」を参照してください。

ユースケース

この機能は、永続的および非永続的なMCSプロビジョニングカタログに適用されます。

また、オンデマンドVMと非オンデマンド(レガシー)VMの両方の移行をサポートしています。

  • オンデマンドVM: 既存のディスクをアンマネージドディスクからマネージドディスクに移行し、Azureの更新されたサポートに合わせます
  • 非オンデマンド (レガシー) VM: レガシーまたは非オンデマンドVMはアンマネージドディスクのみをサポートします。この機能を使用して、レガシーVMをオンデマンドに変換し、同時にマネージドディスクに移行します

オンデマンドプロビジョニングの詳細については、Azureオンデマンドプロビジョニングを参照してください。

制限事項

  • マシンカタログまたはVMがマネージドディスクに変換されると、アンマネージドディスクに戻すことはできません
  • 非オンデマンド (レガシー) VMの場合、移行プロセスにはオンデマンドプロビジョニングへの変換が含まれます。ディスクのみを変換して非オンデマンドVMを使い続けることはできません

重要な考慮事項

  • 変換は自動的に行われません。電源投入操作の一部として実行されます
  • VMに対して複数の更新が要求された場合、ディスク変換が優先されます。追加の更新は、次回の電源投入時まで延期されます
  • VMが正常に変換され、電源が投入されると、コストを節約するためにVMのVHDがクリーンアップされます。ストレージアカウント自体はクリーンアップされません
    • ストレージアカウントにベースディスクが残っている場合があります。カタログ更新を実行すると、新しいスナップショット (またはACG) ベースディスクが作成されます
    • カタログ内のすべてのVMが変換され、新しいベースディスクが作成されると、空のストレージアカウントを削除できます

必要な権限

アンマネージドディスクからマネージドディスクへの変換を許可するには、Azureサービスプリンシパルで次の権限が必要です。

Microsoft.Compute/virtualMachines/convertToManagedDisks/write
<!--NeedCopy-->

構成手順

オンデマンドカタログの場合:

  1. Set-ProvScheme (または永続VMの場合はSet-ProvVM) を実行して、UseManagedDisksTrueに更新します。例:

    Set-ProvScheme -ProvisioningSchemeName "<provscheme-name>" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /></CustomProperties>"
    <!--NeedCopy-->
    
    Set-ProvVM -ProvisioningSchemeName "<provscheme-name>" -VMName "<vm-name>" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /></CustomProperties>"
    <!--NeedCopy-->
    
  2. Set-ProvVMUpdateTimeWindowを実行して更新を適用します。この例では、更新はVMの次回の電源投入時に適用されます。

    Set-ProvVmUpdateTimeWindow -ProvisioningSchemeName "<provscheme-name>" -VMName "<vm-name>"
    <!--NeedCopy-->
    
  3. VMの電源を投入します。

非オンデマンド (レガシー) カタログの場合:

  1. Set-ProvScheme (または永続VMの場合はSet-ProvVM) を実行して、DeploymentSchema1.1に構成します。例:

    Set-ProvScheme -ProvisioningSchemeName "<provscheme-name>" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"DeploymentSchema`" Value=`"1.1`" /></CustomProperties>"
    <!--NeedCopy-->
    
    Set-ProvVM -ProvisioningSchemeName "<provscheme-name>" -VMName "<vm-name>" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"DeploymentSchema`" Value=`"1.1`" /></CustomProperties>
    <!--NeedCopy-->
    
  2. Set-ProvVMUpdateTimeWindowを実行して更新を適用します。この例では、更新はVMの次回の電源投入時に適用されます。

    Set-ProvVmUpdateTimeWindow -ProvisioningSchemeName "<provscheme-name>" -VMName "<vm-name>"
    <!--NeedCopy-->
    
  3. VMの電源を投入します。

トラブルシューティング

VMがアンマネージドディスクからマネージドディスクへの変換に失敗した場合:

  • UseManagedDisksまたはDeploymentSchemaカスタムプロパティが正しく設定されていることを確認します:

    • Set-ProvSchemeを使用している場合は、Get-ProvSchemeを実行してProvSchemeカスタムプロパティを確認します。詳細については、Get-ProvSchemeを参照してください
    • Set-ProvVMを使用している場合は、Get-ProvVMConfigurationを実行して、VMが更新されたカスタムプロパティを持つ新しい構成になっていることを確認します。詳細については、Set-ProvVMを参照してください
  • Azureサービスプリンシパルに次の権限があることを確認します:

    • Microsoft.Compute/virtualMachines/convertToManagedDisks/write
  • Get-ProvOperationEventを実行して、プロビジョニングスキームの警告を表示します。詳細については、Get-ProvOperationEventを参照してください。例:

     Get-ProvOperationEvent -LinkedObjectType ProvisioningScheme -LinkedObjectUid <your-provscheme-id>
     <!--NeedCopy-->
    

次のステップ

詳細情報

Microsoft Azureカタログの作成

この記事の概要