Citrix Virtual Apps and Desktops 7 2402 LTSR

マイクロソフト Azure カタログを作成する

注:

2023年7月以降、マイクロソフトはAzure Active Directory (Azure AD) をマイクロソフト Entra IDに名称変更しました。このドキュメントでは、Azure Active Directory、Azure AD、またはAADへの言及はすべてマイクロソフト Entra IDを指します。

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

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

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

    イメージを選択すると、Use a machine profile (mandatory for Azure Active Directory) チェックボックスが自動的に選択されます。Select a machine profile をクリックして、リソースグループのリストからVMまたはARMテンプレート仕様を参照します。カタログ内のVMは、選択したマシンプロファイルから構成を継承できます。

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

    • リソースグループリストからARMテンプレート仕様を選択した後、Next をクリックします。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イメージを使用している場合にのみ表示されます。

    ストレージとライセンスの種類ページ

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

    • 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を使用して作成されます。

    ストレージの種類によって、ウィザードの仮想マシンページで提供されるマシンサイズが決まります。MCSは、プレミアムディスクと標準ディスクをローカル冗長ストレージ (LRS) を使用するように構成します。LRSは、単一のデータセンター内でディスクデータの複数の同期コピーを作成します。Azureの一時OSディスクは、VMのローカルディスクを使用してオペレーティングシステムを保存します。Azureストレージの種類とストレージレプリケーションの詳細については、以下を参照してください。

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

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

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

      • Windowsクライアントライセンス。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) 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 でライセンスタイプを 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 でライセンスタイプを SLES_BYOS に設定する例:

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

      注記:

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

      LicenseType を空に設定する例:

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

    ライセンスの種類とその利点については、次のドキュメントを参照してください。

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

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

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

    注:

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

  • 仮想マシンページで、作成するVMの数を指定します。少なくとも1つを指定し、マシンサイズを選択する必要があります。カタログ作成後、カタログを編集してマシンサイズを変更できます。

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

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

    マシンカタログのセットアップ - ディスク設定

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

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

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

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

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

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

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

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

      注:

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

    • カタログでプロビジョニングされたマシン上のデータを暗号化するかどうかを選択します。顧客管理の暗号化キーを使用したサーバー側暗号化により、マネージドディスクレベルで暗号化を管理し、カタログ内のマシン上のデータを保護できます。詳細については、「Azureサーバー側暗号化」を参照してください。

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

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

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

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

    1. IDタイプフィールドから、Azure Active Directory参加済みを選択します。Azure ADセキュリティグループ(オプション)オプションが表示されます。
    2. Azure ADセキュリティグループ: 新規作成をクリックします。
    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一時ディスクをライトバックキャッシュディスクとして使用できるのは、以下のすべての条件が満たされている場合のみです。

  • 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. 後でテンプレート仕様を変更するには、Add to library をクリックします。
  4. テンプレートのインポート」ページで、名前サブスクリプションリソースグループ場所バージョン などの必要な情報を入力します。「次へ: テンプレートの編集」をクリックします。
  5. カタログをプロビジョニングする場合は、独立したリソースとしてネットワークインターフェイスも必要です。そのため、テンプレート仕様で指定されている dependsOn を削除する必要があります。例:

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

以下のPowerShellコマンドを使用して、テンプレート仕様とテンプレートバージョンの情報を取得できます。

  • テンプレート仕様に関する情報を取得するには、以下を実行します。

     get-item XDHyp:\HostingUnits\East\machineprofile.folder\abc.resourcegroup\bggTemplateSpec.templatespec
     <!--NeedCopy-->
    
  • テンプレート仕様のバージョンに関する情報を取得するには、以下を実行します。

     get-item XDHyp:\HostingUnits\East\machineprofile.folder\abc.resourcegroup\bggTemplateSpec.templatespec\bgg1.0.templatespecversion
     <!--NeedCopy-->
    

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

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

  • Web Studioについては、「Web StudioでAzure Resource Managerイメージを使用してマシンカタログを作成する」(#create-a-machine-catalog-using-an-azure-resource-manager-image-in-web-studio) を参照してください。
  • PowerShellについては、「PowerShellを使用してカタログの作成または更新でテンプレート仕様を使用する」(#use-template-spec-in-creating-or-updating-a-catalog-using-powershell) を参照してください。

Azureサーバー側暗号化

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

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

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

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

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

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

  • 顧客管理キーに関連するすべてのリソース(Azure Key Vault、ディスク暗号化セット、VM、ディスク、スナップショット)は、同じサブスクリプションとリージョンに存在する必要があります。

  • 顧客管理の暗号化キーを一度有効にすると、後で無効にすることはできません。顧客管理の暗号化キーを無効にするか削除したい場合は、すべてのデータを、顧客管理の暗号化キーを使用していない別のマネージドディスクにコピーしてください。

  • サーバー側暗号化と顧客管理キーを使用して暗号化されたカスタムイメージから作成されたディスクは、同じ顧客管理キーを使用して暗号化する必要があります。これらのディスクは同じサブスクリプションにある必要があります。

  • サーバー側暗号化と顧客管理キーで暗号化されたディスクから作成されたスナップショットは、同じ顧客管理キーで暗号化する必要があります。

  • 顧客管理キーで暗号化されたディスク、スナップショット、およびイメージは、別のリソースグループやサブスクリプションに移動できません。

  • 現在または以前にAzure Disk Encryptionを使用して暗号化されたマネージドディスクは、顧客管理キーを使用して暗号化することはできません。

  • リージョンごとのディスク暗号化セットの制限については、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は、リソースと同じサブスクリプションおよびリージョンにある必要があります。イメージがDESで暗号化されている場合は、マシンカタログを作成する際に同じDESを使用してください。カタログ作成後にDESを変更することはできません。

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

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

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

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

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

制限事項:

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

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

ホストでの暗号化機能を備えたマシンカタログを作成するには:

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

    PS XDHyp:\Connections\<your connection>\east us.region\serviceoffering.folder>
    <!--NeedCopy-->
    
    PS XDHyp:\HostingUnits\<your hosting unit>\serviceoffering.folder>
    <!--NeedCopy-->
    
  3. ホストでの暗号化を有効にして、Azureポータルでマシンプロファイルの入力として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 個のディスク暗号化セットしか作成できません。
  • 異なる DiskEncryptionSetId を持つ DiskEncryptionSetId が既に存在するマシンカタログを更新することはできません。

Azure リソースグループ

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

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

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

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

Azureエフェメラルディスク

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

注:

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

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

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

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

以下を考慮してください。

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

Azure エフェメラルディスクとマシン作成サービス (MCS) ストレージ最適化 (MCS I/O)

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

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

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

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

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

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

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

注:

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

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

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

Azure 機密仮想マシン

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

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

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

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

  • サポートされているVMサイズ:機密VMは以下のVMサイズをサポートしています。

    • DCasv5-シリーズ仮想マシン
    • DCadsv5 のシリーズ
    • ECasv5 のシリーズ
    • イーキャドエスブイファイブ-シリーズ
  • 機密VMでマシンカタログを作成する。

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

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

      追加データフィールドは次のとおりです。

      • ディスクセキュリティタイプ
      • コンフィデンシャルVMディスク暗号化セットID
      • ディスクセキュリティプロファイル

      マシンサイズの機密コンピューティングプロパティを取得するには、次のコマンドを実行します: (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が同じであることを確認してください。

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

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

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

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

アジュール マーケットプレイス

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

ヒント:

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

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

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

アジュール マーケットプレイス 共有イメージギャラリー

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

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

アジュール マーケットプレイス が VDA 公開オプションを検証

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

アジュール マーケットプレイス VDA バージョンを追加

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

アジュール マーケットプレイスでVDAオプションを選択

PowerShellを使用してマシンカタログを作成する

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

  • 非永続的なライトバックキャッシュディスクを使用してカタログを作成する(#create-a-catalog-with-non-persistent-write-back-cache-disk)
  • 永続的なライトバックキャッシュディスクを使用してカタログを作成する(#create-a-catalog-with-persistent-write-back-cache-disk)
  • MCSIOで起動パフォーマンスを向上させる(#improve-boot-performance-with-mcsio)
  • PowerShellを使用してカタログを作成または更新する際にテンプレート仕様を使用する(#use-template-spec-in-creating-or-updating-a-catalog-using-powershell)
  • 信頼できる起動を備えたマシンカタログ(#machine-catalogs-with-trusted-launch)
  • マシンプロファイルのプロパティ値を使用する(#use-machine-profile-property-values)
  • 顧客管理の暗号化キーを使用してマシンカタログを作成する(#create-a-machine-catalog-with-customer-managed-encryption-key)
  • 二重暗号化を使用してマシンカタログを作成する(#create-a-machine-catalog-with-double-encryption)
  • Azureエフェメラルディスクを使用してカタログを作成する(#create-a-catalog-with-an-azure-ephemeral-disks)
  • Azure専用ホスト(#azure-dedicated-hosts)
  • Azure Compute Galleryイメージを使用してマシンカタログを作成または更新する(#create-or-update-a-machine-catalog-using-an-azure-compute-gallery-image)
  • 共有イメージギャラリーを構成する
  • 指定された可用性ゾーンにマシンをプロビジョニングする(#provision-machines-into-specified-availability-zones)
  • ストレージの種類(#storage-types)
  • ページファイルの場所(#page-file-location)
  • ページファイル設定の更新(#update-page-file-setting)
  • Azure Spot VMを使用してカタログを作成する(#create-a-catalog-using-azure-spot-vms)
  • バックアップVMサイズの構成(#configure-backup-vm-sizes)
  • すべてのリソースにタグをコピーする(#copy-tags-on-all-resources)
  • Azure Monitor AgentがインストールされたカタログVMをプロビジョニングする(#provision-catalog-vms-with-azure-monitor-agent-installed)

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

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

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

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

注:

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 イメージを使用してマシンカタログを作成する」(#create-a-machine-catalog-using-an-azure-resource-manager-image-in-web-studio)を参照してください。

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

信頼できる起動によるマシンカタログ

信頼できる起動でマシンカタログを正常に作成するには、以下を使用します。

  • 信頼できる起動を備えたマシンプロファイル
  • 信頼できる起動をサポートするVMサイズ
  • 信頼できる起動をサポートするWindows VMバージョン。現在、Windows 10、Windows 11、Windows Server 2016、2019、および2022が信頼できる起動をサポートしています。

重要:

MCSは、信頼できる起動が有効なVMで新しいカタログを作成することをサポートしています。ただし、既存の永続カタログと既存のVMを更新するには、Azureポータルを使用する必要があります。非永続カタログの信頼できる起動を更新することはできません。詳細については、Microsoftドキュメント「既存のAzure VMで信頼できる起動を有効にする」を参照してください。

Citrix Virtual Apps and Desktopsの提供インベントリ項目を表示し、VMサイズが信頼できる起動をサポートしているかどうかを判断するには、次のコマンドを実行します。

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

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

    • SupportsTrustedLaunchTrue の場合、VMサイズは信頼できる起動をサポートしています。
    • SupportsTrustedLaunchFalse の場合、VMサイズは信頼できる起動をサポートしていません。

AzureのPowerShellに従って、信頼できる起動をサポートするVMサイズを判断するために、次のコマンドを使用できます。

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

Azure PowerShellコマンドを実行した後、VMサイズが信頼できる起動をサポートしているかどうかを説明する例を次に示します。

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

Azure仮想マシンの信頼できる起動の詳細については、Microsoftドキュメント「Azure仮想マシンの信頼できる起動」を参照してください。

信頼できる起動でマシンカタログを作成する

  1. 信頼できる起動が有効なマスターイメージを作成します。Microsoft ドキュメント「Trusted launch VM Images」を参照してください。
  2. セキュリティの種類を 信頼できる起動仮想マシン として、VM またはテンプレート仕様を作成します。VM またはテンプレート仕様の作成の詳細については、Microsoft ドキュメント「Deploy a trusted launch VM」を参照してください。
  3. Web Studio または PowerShell コマンドを使用してマシンカタログを作成します。

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

      VM をマシンプロファイルの入力とする New-ProvScheme の例:

       New-ProvScheme -CleanOnBoot -HostingUnitName "name" -IdentityPoolName "name" -InitialBatchSizeHint 1
       -MasterImageVM "XDHyp:/HostingUnits/azure/image.folder/fgthj.resourcegroup/nab-ws-vda_OsDisk_1_xxxxxxxxxxa.manageddisk"
       -MachineProfile "XDHyp:\HostingUnits\<adnet>\machineprofile.folder\<def.resourcegroup>\<machine profile vm.vm>"
       -ProvisioningSchemeName <String>
       -HostingUnitName <String>
       -IdentityPoolName <String>
       [-ServiceOffering <String>][-CustomProperties <String>]
       [<CommonParameters>]
       <!--NeedCopy-->
      

      テンプレート仕様をマシンプロファイルの入力とする New-ProvScheme の例:

       New-ProvScheme -CleanOnBoot -HostingUnitName "name" -IdentityPoolName "name" -InitialBatchSizeHint 1
       -MasterImageVM "XDHyp:/HostingUnits/azure/image.folder/fgthj.resourcegroup/nab-ws-vda_OsDisk_1_xxxxxxxxxxa.manageddisk"
       MachineProfile "XDHyp:/HostingUnits/azure/machineprofile.folder/fgthj.resourcegroup/test.templatespec/V1.templatespecversion"
       -ProvisioningSchemeName <String>
       -HostingUnitName <String>
       -IdentityPoolName <String>
       [-ServiceOffering <String>][-CustomProperties <String>]
       [<CommonParameters>]
       <!--NeedCopy-->
      

信頼できる起動でマシンカタログを作成する際のエラー

信頼できる起動でマシンカタログを作成する際に、以下のシナリオで適切なエラーが発生します。

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

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

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

  • アベイラビリティゾーン
  • 専用ホストグループID
  • ディスク暗号化セットID
  • OSの種類
  • ライセンスの種類
  • ストレージの種類

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

注:

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

以下のセクションでは、CustomPropertiesがすべてのプロパティを定義しているか、値がMachineProfileから派生している場合の、New-ProvSchemeSet-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で一部のプロパティが定義されている場合。例:
      • カスタムプロパティはライセンスタイプとストレージアカウントタイプを定義します
      • マシンプロファイルはライセンスタイプ、OSタイプ、およびゾーンを定義します

      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 は定義されていません。例:

      • カスタムプロパティでストレージタイプを定義します。
      • マシンプロファイルはライセンスタイプを定義します
       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-->
      
    • OSタイプがカスタムプロパティにもマシンプロファイルにも含まれていない場合、次のようになります:
      • 値はマスターイメージから読み取られます。
      • マスターイメージがアンマネージドディスクの場合、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 のカスタムプロパティ
      • ゾーンを定義するマシンプロファイル mpA.vm
    • 更新点:

      • ストレージアカウントタイプを定義するマシンプロファイル 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 のためのカスタムプロパティ
      • 「ストレージアカウントタイプ」と「ライセンスタイプ」を定義する MachineProfile mpA.vm
    • 更新点:
      • 「ストレージアカウントタイプ」と「OSタイプ」を定義する新しいカスタムプロパティセット $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 のカスタムプロパティ
      • ゾーンを定義するマシンプロファイル mpA.vm
    • 更新:
      • ストレージアカウントタイプとライセンスタイプを定義する 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-->
      

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

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

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

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

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

      1. Azure ポータルで仮想マシンを作成します。
      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. ホスティング接続で利用可能な DiskEncryptionSets を参照するには:
    1. PowerShell ウィンドウを開きます。
    2. 次の PowerShell コマンドを実行します。
      1. asnp citrix*
      2. cd xdhyp:
      3. cd HostingUnits
      4. cd YourHostingUnitName (例: アジュールイースト)
      5. cd diskencryptionset.folder
      6. dir

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

  3. マシンプロファイルワークフローを使用する場合は、VM またはテンプレート仕様をマシンプロファイル入力として作成します。
    • VM をマシンプロファイル入力として使用する場合は:
      1. Azure ポータルで仮想マシンを作成します。
      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に関連付けられたキーによって二重暗号化されます。

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

  • ウェブスタジオで:

    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に設定します。

注:

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

例えば:

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

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

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で作成したイメージを選択できます。

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

  1. Citrix バーチャルアプリ&デスクトップサイトを構成します。
  2. アジュール リソース マネージャーに接続します。
  3. Azure portalでリソースグループを作成します。詳細については、「ポータルを使用してAzure Compute Galleryを作成する」を参照してください。
  4. リソースグループでAzure Compute Galleryを作成します。
  5. Azure コンピュート ギャラリー で、イメージ定義を作成します。
  6. イメージ定義でイメージバージョンを作成します。

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

  1. PowerShellウィンドウを開きます。
  2. Citrix固有のPowerShellモジュールをロードするには、asnp citrix*を実行します。
  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

  • 各ギャラリーイメージバージョンのレプリカの最大数を定義します。
  • 有効な値は、0より大きい整数です。
  • プロパティが定義されていない場合、デフォルト値は10です。
  • Azureは現在、ギャラリーイメージの単一バージョンに対して最大10個のレプリカをサポートしています。プロパティがAzureでサポートされている値よりも大きい値に設定されている場合、MCSは指定された値を使用しようとします。Azureはエラーを生成し、MCSはそれをログに記録し、現在のレプリカ数は変更されません。

ヒント:

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

ユースケース: Shared Image Galleryのレプリカ比率とレプリカ最大値の更新

既存のマシンカタログはShared Image Galleryを使用しています。カタログ内のすべての既存マシンおよび将来のマシンのカスタムプロパティを更新するには、Set-ProvSchemeコマンドを使用します。

Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="StorageType" Value="Standard_LRS"/> <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="True"/> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="True"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaRatio" Value="30"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaMaximum" Value="20"/></CustomProperties>'
<!--NeedCopy-->

ユースケース: スナップショットカタログをShared Image Galleryカタログに変換する

このユースケースでは:

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

例えば:

Set-ProvScheme -ProvisioningSchemeName catalog-name -CustomProperties '<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="StorageType" Value="Standard_LRS"/> <Property xsi:type="StringProperty" Name="UseManagedDisks" Value="True"/> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="True"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaRatio" Value="30"/> <Property xsi:type="IntProperty" Name="SharedImageGalleryReplicaMaximum" Value="20"/></CustomProperties>'
<!--NeedCopy-->

ヒント:

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

ユースケース: 共有イメージギャラリーカタログをスナップショットカタログに変換する

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

  1. Set-ProvSchemeを、UseSharedImageGalleryフラグをFalseに設定するか、未定義のままにして実行します。
  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はそれらのゾーンにマシンをランダムに分散します。

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 ディスク: プレミアム SSD、SSD、または HDD
  • ライトバックキャッシュディスク: プレミアム SSD、SSD、または HDD

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

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

ヒント:

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

If WBCDiskStorageType is not configured, then StorageType is used as the default for WBCDiskStorageType

ストレージタイプを構成する

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_ZRSStandardSSD_ZRS を指定できます。ZRSストレージは、既存のカスタムプロパティを使用するか、MachineProfile テンプレートを介して設定できます。ZRSストレージは、-StartsNow および -DurationInMinutes -1 パラメーターを持つ Set-ProvVMUpdateTimeWindow コマンドでもサポートされており、既存のマシンをLRSからZRSストレージに変更できます。

制限事項:

  • マネージドディスクのみをサポート
  • プレミアムおよび標準ソリッドステートドライブ(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: The StorageTypeAtShutdown custom property cannot be used with ZRS storage.
  • StorageAccountTypeNotSupportedInRegion: この例外は、ZRSをサポートしていないAzureリージョンでZRSストレージを使用しようとした場合に発生します。
  • ZrsRequiresManagedDisks: ゾーン冗長ストレージはマネージドディスクでのみ使用できます。

以下のカスタムプロパティを使用して、ディスクストレージタイプを設定できます。

  • StorageType
  • WBCDiskStorageType
  • IdentityDiskStorageType

注:

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

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

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

VMまたはテンプレート仕様をマシンプロファイルのソースとして作成できます。

主な手順

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

    • ストレージアカウント
    • ログアナリティクス ワークスペース
    • 標準ティアの価格設定のEvent Hub名前空間
  2. マシンプロファイルソースを作成します。
  3. 新しいマシンカタログを作成するか、既存のカタログを更新するか、既存のVMを更新します。

Azureで必要なIDを設定する

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

  • ストレージアカウント
  • ログアナリティクス ワークスペース
  • Standardティアの価格設定のイベントハブの名前空間

ストレージアカウントを設定する

Azureで標準ストレージアカウントを作成します。テンプレート仕様で、ストレージアカウントの完全なresourceIdをstorageAccountIdとして指定します。

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

ログ分析ワークスペースを設定する

ログ分析ワークスペースを作成します。テンプレート仕様で、ログ分析ワークスペースの完全なresourceIdをworkspaceIdとして指定します。

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

AzureMetrics | summarize Count=count() by ResourceId

イベントハブを設定する

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

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

VMがイベントハブにデータをログするように設定されると、そのデータは構成済みのストレージコンテナにキャプチャされます。

マシンプロファイルソースを作成する

VMまたはテンプレート仕様をマシンプロファイルソースとして作成できます。

診断設定を含むVMベースのマシンプロファイルを作成する

VMをマシンプロファイルとして作成する場合は、まずテンプレートVM自体に診断設定をセットアップします。MicrosoftドキュメントのAzure Monitorの診断設定に記載されている詳細な手順を参照してください。

VMまたはNICに関連付けられている診断設定が現在存在することを確認するには、次のコマンドを実行します。

az monitor diagnostic-settings list --resource-group matspo --resource matspo-tog-cc2659 --resource-type microsoft.network/networkInterfaces
<!--NeedCopy-->
az monitor diagnostic-settings list --resource-group matspo --resource matspo-tog-cc2 --resource-type microsoft.compute/virtualMachines
<!--NeedCopy-->

診断設定を含むテンプレート仕様ベースのマシンプロファイルを作成する

診断設定がすでに有効になっているVMを使用し、それをARMテンプレート仕様にエクスポートする場合、これらの設定はテンプレートに自動的に含まれません。ARMテンプレート内で診断設定を手動で追加または変更する必要があります。

ただし、VMをマシンプロファイルとして使用する場合、MCSは重要な診断設定が正確にキャプチャされ、MCSカタログ内のリソースに適用されることを保証します。

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

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

診断設定を含むカタログを作成または更新する

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

ページファイルの場所

Azure環境では、VMが最初に作成されるときに、ページファイルが適切な場所に設定されます。ページファイル設定は<page file location>[min size] [max size]の形式で構成されます(サイズはMB単位)。詳細については、Microsoftドキュメント「適切なページファイルを決定する方法」を参照してください。

イメージ準備中にProvSchemeを作成すると、MCSは特定のルールに基づいてページファイルの場所を決定します。ProvSchemeを作成した後:

  • 受信VMサイズによってページファイル設定が異なる場合、VMサイズの変更はブロックされます。
  • マシンプロファイルの更新によってサービス提供が変更され、ページファイル設定が異なる場合、マシンプロファイルの更新はブロックされます。
  • エフェメラルOSディスク (EOS) およびMCSIOプロパティは変更できません。

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

EOSやMCSIOなどの機能には、それぞれ独自の期待されるページファイルの場所があり、互いに排他的です。次の表は、各機能の期待されるページファイルの場所を示しています。

機能 期待されるページファイルの場所
EOS OSディスク
エムシーエスアイオー Azure一時ディスクが優先され、それ以外の場合はライトバックキャッシュディスク

注:

イメージの準備がプロビジョニングスキームの作成から切り離されていても、MCS はページファイルの場所を正しく決定します。デフォルトのページファイルの場所は OS ディスク上です。

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

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

期間 シナリオ 結果
イメージの準備 ソースイメージのページファイルが一時ディスクに設定されているが、プロビジョニングスキームで指定された VM サイズには一時ディスクがない場合 ページファイルは OS ディスクに配置されます
イメージの準備 ソースイメージのページファイルが OS ディスクに設定されているが、プロビジョニングスキームで指定された VM サイズには一時ディスクがある場合 ページファイルは一時ディスクに配置されます
イメージの準備 ソースイメージのページファイルが一時ディスクに設定されているが、プロビジョニングスキームでエフェメラル OS ディスクが有効になっている場合 ページファイルは OS ディスクに配置されます
プロビジョニングスキームの更新 プロビジョニングスキームを更新しようとすると、元のVMサイズには一時ディスクがあり、ターゲットVMには一時ディスクがありません。 エラーメッセージとともに変更を拒否します
プロビジョニングスキームの更新 プロビジョニングスキームを更新しようとすると、元のVMサイズには一時ディスクがなく、ターゲットVMには一時ディスクがあります エラーメッセージとともに変更を拒否します

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

ページファイルの設定(場所やサイズを含む)は、PowerShellコマンドを使用して明示的に指定することもできます。これにより、MCSによって決定された値が上書きされます。これを行うには、New-ProvScheme コマンドを実行し、次のカスタムプロパティを含めます。

  • PageFileDiskDriveLetterOverride: ページファイルの場所のディスクドライブ文字
  • InitialPageFileSizeInMB: 初期ページファイルサイズ(MB)
  • MaxPageFileSizeInMB: 最大ページファイルサイズ(MB)

カスタムプロパティの使用例:

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

制約:

  • ページファイル設定は、New-ProvScheme コマンドを実行してプロビジョニングスキームを作成するときにのみ更新でき、後で変更することはできません。
  • カスタムプロパティには、ページファイル設定に関連するすべてのプロパティ(PageFileDiskDriveLetterOverrideInitialPageFileSizeInMB、およびMaxPageFileSizeInMB)を指定するか、または何も指定しないでください。
  • 初期ページファイルサイズは16 MBから16777216 MBの間である必要があります。
  • 最大ページファイルサイズは、初期ページファイルサイズ以上で、16777216 MB未満である必要があります。
  • この機能はWeb Studioではサポートされていません。

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でサポートされているわけではありません。詳細については、制限事項を参照してください。

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

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

必要条件

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

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

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

    • Azure portal を使用して VM を作成する方法については、Azure portal を使用した Azure Spot Virtual Machines のデプロイ を参照してください。
    • テンプレート仕様を作成するには、テンプレート仕様のresources > type: Microsoft.Compute/virtualMachines > propertiesの下に次のプロパティを追加します。例:

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

    注記:

    • 強制排除ポリシーは、DeallocateまたはDeleteに設定できます。
      • 非永続VMの場合、MCSは常に強制排除ポリシーをDeleteに設定します。VMが強制排除されると、非永続ディスク(例:OSディスク)とともに削除されます。永続ディスク(例:IDディスク)は削除されません。ただし、カタログタイプが永続である場合、またはPersistOsDiskカスタムプロパティがTrueに設定されている場合、OSディスクは永続的です。同様に、PersistWbcカスタムプロパティがTrueに設定されている場合、WBCディスクは永続的です。
      • 永続VMの場合、MCSは常に強制排除ポリシーをDeallocateに設定します。VMが強制排除されると、割り当て解除されます。ディスクに変更は加えられません。
    • 最大価格は、1時間あたりに支払う意思のある価格です。Capacity Onlyを使用している場合、これは-1です。最大価格は、null、-1、または0より大きい小数のみに設定できます。詳細については、「価格」を参照してください。
  2. マシンプロファイルが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コマンドを使用してカタログを更新できます。また、PowerShellコマンドSet-ProvVmUpdateTimeWindowを使用して既存のVMを更新することもできます。マシンプロファイルは次回の電源投入時に更新されます。

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

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

トラブルシューティング

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

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

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

バックアップVMサイズを構成する

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

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

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

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

重要な考慮事項

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

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

注:

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

  1. PowerShellウィンドウを開きます。
  2. Citrix固有のPowerShellモジュールをロードするには、asnp citrix* を実行します。
  3. ブローカーカタログを作成します。このカタログには、これから作成されるマシンが設定されます。
  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
  • Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName azure-catalog -StartsNow -DurationInMinutes 60

注:

StartsNowはスケジュールされた開始時刻を示します。DurationInMinutesはスケジュールの時間枠です。

Set-ProvVMコマンドを使用して、選択した数の既存のMCS VMのバックアップVMサイズリストを構成できます。ただし、更新を適用するには、Set-ProvVMUpdateTimeWindowを使用してVMの更新時間枠を設定し、その時間枠内にVMを起動する必要があります。例:

  1. 選択した既存のMCS VMのバックアップVMサイズリストを構成するには、Set-ProvVMコマンドを実行します。例:

    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ポータルでVMとすべてのリソースにタグを適用します。「Azureポータルでタグを適用する」を参照してください。
  • 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の数に不一致がある場合、エラーが発生します。

次のステップ

詳細情報

マイクロソフト Azure カタログを作成する

この記事の概要