Microsoft Azureカタログを作成する
マシンカタログの作成では、マシンカタログを作成するウィザードについて説明します。以下の情報では、Microsoft Azure Resource Managerクラウド環境に固有の詳細について説明します。
注:
Microsoft Azureカタログを作成する前に、Microsoft Azureへの接続の作成を完了する必要があります。Microsoft Azureへの接続を参照してください。
マシンカタログを作成する
マシンカタログは、次の2つの方法で作成できます。
- スタジオ。
- PowerShell。Remote PowerShell SDKを使用してCitrix DaaSを管理するを参照してください。PowerShellを使用して特定の機能を実装する方法については、PowerShellの使用を参照してください。
StudioでAzure Resource Managerイメージを使用してマシンカタログを作成する
この情報は、マシンカタログの作成のガイダンスを補足するものです。
イメージとは、ディスク、スナップショット、またはAzure Compute Gallery内のイメージ定義のイメージバージョンであり、マシンカタログ内のVMを作成するために使用されます。
マシンカタログを作成する前に、Azure Resource Managerでイメージを作成します。
注:
- VMをプロビジョニングするためのアンマネージドディスクの使用は非推奨です。
- ホスト接続で構成されているリージョンとは異なるリージョンからのマスターイメージの使用は非推奨です。Azure Compute Galleryを使用して、マスターイメージを目的のリージョンにレプリケートしてください。
MCSマシンカタログを作成する際、DHCPの有効化やライセンスの再武装などの準備タスクを実行するために、元のVMに基づいて一時的なVMが作成されます。この一時的なVMは準備VMと呼ばれます。この準備VMの名前はPreparati-84x9nという形式に従い、最後の5文字は重複を避けるためにランダムに生成されます。この準備VMの命名規則は固定されており、カスタマイズできません。準備タスクが完了すると、準備VMは破棄されます。
準備VMからネットワークを切断するために、すべてのインバウンドおよびアウトバウンドトラフィックを拒否するネットワークセキュリティグループが作成されます。このネットワークセキュリティグループは、カタログごとに1回自動的に作成されます。ネットワークセキュリティグループの名前はCitrix-Deny-All-a3pgu-GUIDで、GUIDはランダムに生成されます。例: Citrix-Deny-All-a3pgu-3f161981-28e2-4223-b797-88b04d336dd1。
マシンカタログ作成ウィザードで:
-
「マシンタイプ」ページと「マシン管理」ページには、Azure固有の情報は含まれていません。マシンカタログの作成の記事のガイダンスに従ってください。
-
「イメージ」ページで、カタログ内のすべてのマシンのマスターイメージとして使用するイメージを選択します。「イメージの選択」ウィザードが表示されます。イメージを選択するには、次の手順に従います。
- (テナント内またはテナント間で共有イメージが構成されている接続にのみ適用) イメージが存在するサブスクリプションを選択します。
- リソースグループを選択します。
- Azureマネージドディスク、Azure Compute Gallery、またはAzureイメージバージョンに移動します。
イメージを選択する際は、次の点を考慮してください。
- イメージにCitrix VDAがインストールされていることを確認します。
- VMに接続されているディスクを選択した場合、次の手順に進む前にVMをシャットダウンする必要があります。
注:
- カタログ内のマシンを作成した接続 (ホスト) に対応するサブスクリプションは、緑色の点で示されます。その他のサブスクリプションは、Azure Compute Galleryがそのサブスクリプションと共有されているものです。これらのサブスクリプションでは、共有ギャラリーのみが表示されます。共有サブスクリプションの構成方法については、テナント内でイメージを共有する (サブスクリプション間)およびテナント間でイメージを共有するを参照してください。
- Trusted Launchを有効にしたWindows上のエフェメラルOSディスクを使用してプロビジョニングスキームを作成できます。Trusted Launchが有効なイメージを選択する場合、vTPMが有効なTrusted Launch付きのマシンプロファイルを選択する必要があります。エフェメラルOSディスクを使用してマシンカタログを作成する方法については、エフェメラルOSディスクを使用してマシンを作成する方法を参照してください。
- イメージのレプリケーションが進行中でも、イメージをマスターイメージとして選択し、セットアップを完了できます。ただし、イメージのレプリケーション中はカタログ作成に時間がかかる場合があります。MCSでは、カタログ作成開始から1時間以内にレプリケーションが完了する必要があります。レプリケーションがタイムアウトすると、カタログ作成は失敗します。Azureでレプリケーションステータスを確認できます。レプリケーションがまだ保留中の場合、またはレプリケーションが完了した後に再度試してください。
- Gen2イメージを使用してGen2 VMカタログをプロビジョニングすることで、起動時間のパフォーマンスを向上させることができます。ただし、Gen1イメージを使用してGen2マシンカタログを作成することはサポートされていません。同様に、Gen2イメージを使用してGen1マシンカタログを作成することもサポートされていません。また、世代情報を持たない古いイメージはすべてGen1イメージです。
カタログ内のVMがマシンプロファイルから構成を継承するかどうかを選択します。デフォルトでは、Use a machine profile (mandatory for Microsoft Entra ID) チェックボックスが選択されています。Select a machine profile をクリックして、リソースグループのリストからVMまたはARMテンプレート仕様を参照します。
VMがマシンプロファイルから継承できる構成の例を次に示します。
- 高速ネットワーク
- ブート診断
- ホストディスクキャッシュ(OSおよびMCSIOディスク関連)
- マシンサイズ(特に指定がない限り)
- VMに配置されたタグ
注:
- Azureでマシンカタログのマスターイメージを選択すると、選択したマスターイメージに基づいてマシンプロファイルがフィルタリングされます。たとえば、マスターイメージのWindows OS、セキュリティの種類、休止状態のサポート、ディスク暗号化セットIDに基づいてマシンプロファイルがフィルタリングされます。
- Trusted Launchが有効になっているイメージまたはスナップショットを選択する場合は、Security Type としてTrusted Launchを持つマシンプロファイルを使用することが必須です。その後、マシンプロファイルでSecureBootとvTPMの値を指定することで、それらを有効または無効にできます。Azure Trusted Launchの詳細については、https://docs.microsoft.com/ja-jp/azure/virtual-machines/trusted-launchを参照してください。
ARMテンプレート仕様を検証して、マシンカタログの作成にマシンプロファイルとして使用できることを確認します。Azureテンプレート仕様の作成については、Create an Azure template specを参照してください。
ARMテンプレート仕様を検証する方法は2つあります。
- リソースグループリストからARMテンプレート仕様を選択した後、Next をクリックします。ARMテンプレート仕様にエラーがある場合、エラーメッセージが表示されます。
- 次のPowerShellコマンドのいずれかを実行します。
Test-ProvInventoryItem -HostingUnitName <string> -InventoryPath <string>Test-ProvInventoryItem -HostingUnitUid <Guid> -InventoryPath <string>
例:
Test-ProvInventoryItem -HostingUnitName "we-vdi0101-d-vnet" -InventoryPath machineprofile.folder/vdi01-d-rg.resourcegroup/VDD-templ-spec.templatespec/1.5.templatespecversion <!--NeedCopy-->
カタログを作成した後、イメージがマシンプロファイルから継承する構成を表示できます。マシンカタログノードでカタログを選択し、下部のペインで詳細を表示します。次に、テンプレートプロパティタブをクリックして、マシンプロパティを表示します。タグセクションには、最大3つのタグが表示されます。VMに配置されているすべてのタグを表示するには、すべて表示をクリックします。
MCSでAzure専用ホストにVMをプロビジョニングする場合は、ホストグループを使用チェックボックスを有効にしてから、リストからホストグループを選択します。ホストグループは、専用ホストのコレクションを表すリソースです。専用ホストは、1つ以上の仮想マシンをホストする物理サーバーを提供するサービスです。サーバーはAzureサブスクリプション専用であり、他のサブスクライバーと共有されません。専用ホストを使用すると、AzureはVMがそのホストで実行されている唯一のマシンであることを保証します。この機能は、規制または内部セキュリティ要件を満たす必要があるシナリオに適しています。ホストグループとその使用に関する考慮事項の詳細については、「Azure専用ホストでのVMのプロビジョニング」を参照してください。
重要:
- Azureの自動配置が有効になっているホストグループのみが表示されます。
- ホストグループを使用すると、ウィザードの後半で表示される仮想マシンページが変更されます。選択したホストグループに含まれるマシンサイズのみがそのページに表示されます。また、可用性ゾーンは自動的に選択され、選択できません。
-
ストレージとライセンスの種類ページは、Azure Resource Managerイメージを使用している場合にのみ表示されます。
-
ストレージ冗長タイプを選択します。
- ローカル冗長ストレージ(LRS):LRSを使用すると、利用可能なすべてのストレージタイプから選択できます。LRSを使用する場合、Azureは指定された可用性ゾーン内にのみ仮想マシン(VM)を展開します。
- ゾーン冗長ストレージ(ZRS):ZRSはVM配置の柔軟性を高め、Azureは利用可能な任意のゾーンでVMを起動できます。これはローカル冗長ストレージ(LRS)に対する主要な利点であり、ディスクの元のゾーンにアクセスできなくなった場合でもVMの可用性を保証します。ただし、ZRSはPremium SSDおよびStandard SSDストレージタイプとのみ互換性があります。
-
マシンカタログに使用するストレージの種類を選択します。ストレージの種類によって、ウィザードの仮想マシンページで提供されるマシンサイズが決まります。
- プレミアム SSD。I/O集中型ワークロードを持つVMに適した、高性能で低遅延のディスクストレージオプションを提供します。
- Standard SSD。低いIOPSレベルで一貫したパフォーマンスを必要とするワークロードに適した、費用対効果の高いストレージオプションを提供します。
- Standard HDD。遅延に影響されにくいワークロードを実行するVMに適した、信頼性の高い低コストのディスクストレージオプションを提供します。
- 「AzureエフェメラルOSディスクを使用」を選択します。AzureエフェメラルOSディスクは、VMのローカルディスクを再利用してオペレーティングシステムディスクをホストする、費用対効果の高いストレージオプションを提供します。または、PowerShellを使用してエフェメラルOSディスクを使用するマシンを作成することもできます。詳細については、「Azureエフェメラルディスク」を参照してください。エフェメラルOSディスクを使用する際は、次の点を考慮してください。
- AzureエフェメラルOSディスクとMCS I/Oは同時に有効にできません。
- エフェメラルOSディスクを使用するマシンを更新するには、VMのキャッシュディスクまたは一時ディスクのサイズを超えないイメージを選択する必要があります。
- ウィザードの後半で提供される「電源サイクル中にVMとシステムディスクを保持」オプションは使用できません。
-
ストレージ冗長タイプを選択します。
> 注:
>
> - IDディスクは、選択したストレージの種類に関係なく、常にStandard SSDを使用して作成されます。
> - ストレージ冗長性として「ZRS」を選択した場合、「Premium SSD」と「Standard SSD」のみを選択するオプションが表示されます。
For details about Azure storage types and storage replication, see the following:
- [Introduction to Azure Storage](https://docs.microsoft.com/en-us/azure/storage/common/storage-introduction/)
- [Azure premium storage: Design for high performance](https://docs.microsoft.com/en-us/azure/virtual-machines/premium-storage-performance/)
- [Azure Storage redundancy](https://docs.microsoft.com/en-us/azure/storage/common/storage-redundancy/)
Select whether to use existing Windows licenses or Linux licenses:
- Windows licenses: Using Windows licenses along with Windows images (Azure platform support images or custom images) lets you run Windows VMs in Azure at a reduced cost. There are two types of licenses:
- **Windows Server license**. Lets you use your Windows Server or Azure Windows Server licenses, allowing you to use Azure Hybrid Benefits. For details, see <https://azure.microsoft.com/en-us/pricing/hybrid-benefit/>. Azure Hybrid Benefit reduces the cost of running VMs in Azure to the base compute rate, waiving the cost of extra Windows Server licenses from the Azure gallery.
- **Windows Client license**. Lets you bring your Windows 10 and Windows 11 licenses to Azure, allowing you to run Windows 10 and Windows 11 VMs in Azure without the need for extra licenses. For details, see [Client Access Licenses and Management Licenses](https://www.microsoft.com/en-us/licensing/product-licensing/client-access-license).
- Linux licenses: With bring-your-own-subscription (BYOS) Linux licenses, you do not have to pay for the software. The BYOS charge only includes the compute hardware fee. There are two types of licenses:
- **RHEL_BYOS**: To use RHEL_BYOS type successfully, enable Red Hat Cloud Access on your Azure subscription.
- **SLES_BYOS**: The BYOS versions of SLES include support from SUSE.
See the following:
- [Verify the Windows license](#windowsライセンスの確認)
- [Configure the Linux license](#linuxライセンスの構成)
See the following documents to understand License types and their benefits:
- <https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.management.compute.models.virtualmachine.licensetype?view=azure-dotnet>
- <https://docs.microsoft.com/en-us/azure/virtual-machines/linux/azure-hybrid-benefit-linux>
Azure Compute Gallery is a repository for managing and sharing images. It lets you make your images available throughout your organization. We recommend that you store an image in Azure Compute Gallery when creating large non-persistent machine catalogs because doing that enables faster resets of VDA OS disks. After you select **Place prepared image in Azure Compute Gallery**, the **Azure Compute Gallery settings** section appears, letting you specify more Azure Computer Gallery settings:
- **Ratio of virtual machines to image replicas**. Lets you specify the ratio of virtual machines to image replicas that you want Azure to keep. By default, Azure keeps a single image replica for every 40 non-persistent machines. For persistent machines, that number defaults to 1,000.
- **Maximum replica count**. Lets you specify the maximum number of image replicas that you want Azure to keep. The default is 100.
For information on Azure Compute Gallery, see [Azure Compute Gallery](#azure-コンピュート-ギャラリー).
> **Note:**
>
> A gallery is created in ACG to store the image. This gallery is accessible only to MCS for VM creation and doesn't appear on the **Select an image** page.
-
「仮想マシン」ページで、作成するVMの数とマシンサイズを指定します。カタログ作成後、カタログを編集してマシンサイズを変更できます。
プライマリマシンサイズが最大容量に達した場合、セカンダリVMを構成できるようになりました。セカンダリVMサイズを構成するには、「セカンダリサイズ(オプション)」をクリックします。
- 「セカンダリマシンサイズ」ウィンドウには、スポットVMと通常VMの両方のタイプのVMが一覧表示されます。最大10個のセカンダリマシンサイズを選択できます。10個のVMが選択されると、それ以降、リストされている他のVMは選択できなくなります。
- 「次へ」をクリックします。「セカンダリマシンサイズ」ブレードで、複数のマシンサイズを選択し、ドラッグアンドドロップで優先順位を変更できます。「完了」をクリックします。 選択したマシンサイズは「セカンダリサイズ(オプション)」に表示されます。必要に応じて編集するには、編集アイコンをクリックします。
注:
- プライマリVMに一時ディスクサイズプロパティが設定されている場合、一時ディスクサイズプロパティが設定されているセカンダリVMのみが一覧表示されます。
- プライマリVMに一時ディスクサイズプロパティが設定されていない場合、一時ディスクサイズプロパティが設定されていないセカンダリVMが一覧表示されます。
- プライマリVMを変更する場合、セカンダリVMを再構成する必要があります。
- セカンダリマシンサイズにはマシンプロファイルが必須です。
- スポットをサポートしないセカンダリVMサイズは、次のいずれかの条件が一致する場合にのみ表示されます。それ以外の場合は、すべてのセカンダリVMサイズが表示されます。
- プライマリVMサイズがスポットをサポートしない
- プライマリVMサイズはスポットをサポートするが、MPはスポットをサポートしない
- マシンプロファイルが休止状態をサポートする
- NICsページには、Azure固有の情報は含まれていません。マシンカタログの作成の記事のガイダンスに従ってください。
-
ディスク設定ページで、ライトバックキャッシュを有効にするかどうかを選択します。MCSストレージ最適化機能が有効になっている場合、カタログの作成時に次の設定を構成できます。
ライトバックキャッシュを有効にすると、次のことができます。
-
一時データのキャッシュに使用されるディスクとRAMのサイズを構成します。詳しくは、「一時データのキャッシュを構成する」を参照してください。
-
ライトバックキャッシュディスクのストレージタイプを選択します。ライトバックキャッシュディスクには、次のストレージオプションを使用できます。
- プレミアム SSD
- スタンダード SSD
- スタンダード HDD
注:
ストレージとライセンスの種類ページでストレージ冗長性としてZRSを選択した場合、ライトバックキャッシュディスクのストレージ冗長性はデフォルトでZRSに設定されます。
-
プロビジョニングされたVMに対してライトバックキャッシュディスクを永続化するかどうかを選択します。オプションを有効にするには、ライトバックキャッシュを有効にするを選択します。デフォルトでは、非永続ライトバックキャッシュディスクを使用するが選択されています。
-
ライトバックキャッシュディスクのタイプを選択します。
- 非永続ライトバックキャッシュディスクを使用する。選択した場合、ライトバックキャッシュディスクは電源サイクル中に削除されます。そこにリダイレクトされたデータはすべて失われます。VMの一時ディスクに十分な空き容量がある場合、コストを削減するためにライトバックキャッシュディスクをホストするために使用されます。カタログ作成後、プロビジョニングされたマシンが一時ディスクを使用しているかどうかを確認できます。これを行うには、カタログをクリックし、テンプレートプロパティタブの情報を確認します。一時ディスクが使用されている場合、非永続ライトバックキャッシュディスクが表示され、その値ははい(VMの一時ディスクを使用)となります。そうでない場合、非永続ライトバックキャッシュディスクが表示され、その値はいいえ(VMの一時ディスクを使用しない)となります。
- 永続ライトバックキャッシュディスクを使用する。選択した場合、ライトバックキャッシュディスクはプロビジョニングされたVMに対して永続的になります。このオプションを有効にすると、ストレージコストが増加します。
注:
以下のすべての条件が満たされている場合、カタログはWBCディスクにAzure一時ディスクを自動的に使用します。
- MCSIOが有効になっている。
- WBCディスクが非永続である。
- VMサイズに、WBCディスクに十分な大きさの一時ディスクが含まれている。
- WBCディスクにドライブ文字が指定されていない。
この機能は、カタログの作成と編集の両方に適用され、ストレージコストの削減に役立ちます。
-
電源サイクル中にVDAのVMとシステムディスクを保持するかどうかを選択します。
電源サイクル中にVMとシステムディスクを保持する。 ライトバックキャッシュを有効にするを選択した場合に利用可能です。デフォルトでは、VMとシステムディスクはシャットダウン時に削除され、起動時に再作成されます。VMの再起動時間を短縮したい場合は、このオプションを選択します。このオプションを有効にすると、ストレージコストも増加することに注意してください。
-
ストレージコストの節約を有効にするかどうかを選択します。有効にすると、VMがシャットダウンしたときにストレージディスクをStandard HDDにダウングレードすることでストレージコストを節約できます。VMは再起動時に元の設定に戻ります。このオプションは、ストレージディスクとライトバックキャッシュディスクの両方に適用されます。または、PowerShellを使用することもできます。詳細については、「VMシャットダウン時にストレージタイプを下位層に変更する」を参照してください。
注:
Microsoftは、VMシャットダウン中のストレージタイプの変更に制限を課しています。また、将来的にMicrosoftがストレージタイプの変更をブロックする可能性もあります。詳細については、このMicrosoft記事を参照してください。
-
このカタログ内のマシンのデータを暗号化するかどうか、および使用する暗号化キーを選択します。顧客管理キー (CMK) を使用したサーバー側暗号化により、マネージドディスクレベルで暗号化を管理し、カタログ内のマシンのデータを保護できます。デフォルト設定は、マシンプロファイルまたはマスターイメージのいずれかから継承され、プロファイルが優先されます。
- マシンプロファイルでCMKを使用している場合、「各マシンのデータを暗号化するために次のキーを使用する」オプションが自動選択され、マシンプロファイルのキーがデフォルトになります。
- マシンプロファイルでプラットフォーム管理キー (PMK) を使用しており、マスターイメージがCMKで暗号化されている場合、「各マシンのデータを暗号化するために次のキーを使用する」オプションが自動選択され、マスターイメージのキーがデフォルトになります。
- マシンプロファイルを使用していない場合、およびマスターイメージがCMKで暗号化されている場合、各マシンのデータを暗号化するために次のキーを使用するオプションが自動選択され、マスターイメージのキーがデフォルトになります。
詳細については、「Azure サーバー側暗号化」を参照してください。
-
-
リソースグループページで、リソースグループを作成するか、既存のグループを使用するかを選択します。
- リソースグループを作成することを選択した場合は、次へを選択します。
- 既存のリソースグループを使用することを選択した場合は、利用可能なプロビジョニングリソースグループリストからグループを選択します。
注:
カタログで作成するマシンを収容するのに十分なグループを選択します。少なすぎると、メッセージが表示されます。後でカタログにVMを追加する予定がある場合は、最小要件よりも多く選択することをお勧めします。カタログの作成後に、カタログにリソースグループを追加することはできません。
詳細については、「Azure リソースグループ」を参照してください。
-
マシンIDページで、IDタイプを選択し、このカタログ内のマシンのIDを構成します。VMをMicrosoft Entra参加済みとして選択した場合、それらをMicrosoft Entraセキュリティグループに追加できます。詳細な手順は次のとおりです。
- IDタイプフィールドから、Microsoft Entra参加済みを選択します。
- サービスアカウントの選択をクリックし、Microsoft Entraセキュリティグループ管理機能を持つサービスアカウントを選択します。
-
Microsoft Entraセキュリティグループ: 新規作成をクリックします。
注記:
選択したサービスアカウントにMicrosoft Entra security group management機能がない場合、Create newはグレー表示されます。
-
グループ名を入力し、Createをクリックします。
- セキュリティグループを割り当てられたセキュリティグループに追加するには、Join an assigned security group as a memberを選択し、Select a groupをクリックして参加する割り当てられたグループを選択します。
-
VMのコンピューターアカウント命名規則を入力します。
カタログ作成後、Citrix DaaS™は選択したサービスアカウントを使用してAzureにアクセスし、セキュリティグループとグループの動的メンバーシップルールを作成します。このルールに基づき、このカタログで指定された命名規則を持つVMは自動的にセキュリティグループに追加されます。
注記:
カタログ作成後にMicrosoft Entraセキュリティグループの名前を変更するには、カタログを編集し、左側のナビゲーションからMicrosoft Entra Security Groupに移動します。Microsoft Entraセキュリティグループ名には、次の文字を含めることはできません:
@ " \ / ; : # . * ? = < > | [ ] ( ) '。
-
Domain Credentialsページで、Create Machine Catalogsの記事のガイダンスに従って設定を完了します。
-
Summaryページで、指定した設定を確認し、Finishをクリックします。
ヒント:
このマシンカタログ内の仮想マシンの推定月額コストを、Azureの公開価格に基づいて表示できます。カタログをホストする接続がAzureで
Microsoft.Consumption/pricesheets/read権限を持っている場合、推定値は組織の契約価格を使用して計算されます。コスト見積もりを選択すると、詳細情報が表示されます。より正確な見積もりを得るには、日々の電源オン時間、週あたりの稼働日数、使用状況に基づいた節約オプションなどの設定を調整してください。
Azureテンプレート仕様を作成する
Azure portalでAzureテンプレート仕様を作成し、StudioおよびPowerShellコマンドで使用して、MCSマシンカタログを作成または更新できます。
既存のVMのAzureテンプレート仕様を作成するには、次の手順を実行します。
- Azure portalに移動します。リソースグループを選択し、VMとネットワークインターフェイスを選択します。上部にある … メニューから、Export template をクリックします。
-
カタログプロビジョニング用のテンプレート仕様を作成する場合は、Include parameters チェックボックスをオフにします。JSONファイルで、
parametersおよびvariablesセクションが次のようになっていることを確認します。"parameters": {}, "variables": {} <!--NeedCopy--> - Download をクリックして、テンプレートをJSONファイルとして保存します。
- Azure portalで、Template specs を選択し、Import Template をクリックします。
- コンピューターに保存されているマシンプロファイル(JSON形式)を参照してインポートします。
- Name、Subscription、Resource Group、Location、Version を指定します。Next: Edit Template をクリックします。
- Review+Create を作成し、テンプレート仕様を作成します。
- Template Specs ページで、作成したテンプレート仕様を確認します。テンプレート仕様をクリックします。左側のパネルで、Versions をクリックします。
- 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マシンカタログを作成または更新できます。これを行うには、次の手順を実行します。
- Studio を使用します。Studio で Azure Resource Manager イメージを使用してマシンカタログを作成するを参照してください。
- PowerShell を使用します。PowerShell を使用してカタログを作成または更新する際にテンプレート仕様を使用するを参照してください。
マシンプロファイルを JSON ファイルにエクスポートする
カタログで使用されているマシンプロファイルを JSON ファイルにエクスポートできます。この機能を使用すると、プロファイルをカスタマイズし、将来のプロビジョニングのために ARM テンプレート仕様として Azure にインポートできます。
- マシンカタログページで、マシンカタログを選択して下部ペインに詳細を表示します。
- テンプレートプロパティタブをクリックしてマシンプロファイルのプロパティを表示し、エクスポートをクリックします。
- ローカルコンピューター上のパスを指定して、マシンプロファイルを JSON ファイルとして保存します。
マシンプロファイルを ARM テンプレート仕様として Azure にインポートする
- Azure portal で、テンプレート仕様を選択し、テンプレートのインポートをクリックします。
- コンピューターに保存されているマシンプロファイル(JSON形式)を参照してインポートします。
- インポートするテンプレートの名前、サブスクリプション、リソースグループ、場所、およびバージョンを指定し、確認 + 作成をクリックします。 テンプレートが検証され、正常にインポートされます。インポートされたテンプレートは、テンプレート仕様に表示されます。
マシンプロファイルを使用してマシンカタログを作成するときに、プロファイルを選択する際にこのテンプレートが表示されます。詳しくは、カタログの作成または更新でテンプレート仕様を使用するを参照してください。
指定された可用性ゾーンにマシンをプロビジョニングする
Azure 環境の特定の可用性ゾーンにマシンをプロビジョニングできます。これは Studio または PowerShell を使用して実現できます。
注:
- ゾーンが指定されていない場合、MCS は Azure にリージョン内にマシンを配置させます。複数のゾーンが指定されている場合、MCS はそれらのゾーンにマシンをランダムに分散させます。
- ストレージとライセンスの種類ページでストレージ冗長性として ZRS を選択した場合、ゾーン選択をクリアして Azure に VM の可用性ゾーンを管理させることを示唆する警告が表示されます。この警告は、可用性ゾーンを持つマシンプロファイルまたはホストグループを選択した場合にのみ表示されます。
Studio で可用性ゾーンを構成する
マシンカタログを作成する際、マシンをプロビジョニングする可用性ゾーンを指定できます。仮想マシンページで、マシンを作成する1つ以上の可用性ゾーンを選択します。
可用性ゾーンが利用できない理由は2つあります。リージョンに可用性ゾーンがないか、選択されたマシンサイズが利用できないかのいずれかです。
PowerShell コマンドを使用した構成については、「PowerShell を使用して可用性ゾーンを構成する」を参照してください。
Azure エフェメラルディスク
Azure エフェメラルディスク を使用すると、キャッシュディスク、一時ディスク、または NVMe ディスクを再利用して、Azure 対応仮想マシンの OS ディスクを保存できます。この機能は、標準の HDD ディスクよりも高性能な SSD ディスクを必要とする Azure 環境で役立ちます。Azure エフェメラルディスクを使用してカタログを作成する方法については、「Azure エフェメラルディスクを使用してカタログを作成する」を参照してください。
注:
永続カタログはエフェメラル OS ディスクをサポートしていません。
エフェメラル OS ディスクには、プロビジョニングスキームでマネージドディスクと Azure Compute Gallery を使用する必要があります。詳細については、「Azure Shared Image Gallery」を参照してください。
エフェメラル OS 一時ディスクを保存する
エフェメラル OS ディスクを VM の一時ディスク、リソースディスク、または NVMe ディスクに保存するオプションがあります。この機能により、キャッシュがない、またはキャッシュが不十分な VM でエフェメラル OS ディスクを使用できます。このような VM には、Ddv4 のようなエフェメラル OS ディスクを保存するための一時ディスク、リソースディスク、または NVMe ディスクがあります。
以下を考慮してください。
- エフェメラルディスクは、VM のキャッシュディスク、VM の一時(リソース)ディスク、または NVMe ディスクのいずれかに保存されます。キャッシュディスクが OS ディスクの内容を保持するのに十分な大きさでない限り、一時ディスクよりもキャッシュディスクが優先されます。
- 更新の場合、キャッシュディスクより大きく、一時ディスクより小さい新しいイメージは、エフェメラルOSディスクをVMの一時ディスクに置き換える結果となります。
AzureエフェメラルディスクとMachine Creation Services (MCS) ストレージ最適化 (MCS I/O)
AzureエフェメラルOSディスクとMCS I/Oは同時に有効にできません。
重要な考慮事項は次のとおりです。
- エフェメラルOSディスクとMCS I/Oの両方を同時に有効にしたマシンカタログを作成することはできません。
-
「マシンカタログのセットアップ」ウィザードで、「ストレージとライセンスの種類」ページで「AzureエフェメラルOSディスク」を選択した場合、「ディスク設定」ページでライトバックキャッシュディスク設定のオプションは表示されません。


-
New-ProvSchemeまたはSet-ProvSchemeでtrueに設定されたPowerShellパラメーター (UseWriteBackCacheおよびUseEphemeralOsDisk) は、適切なエラーメッセージとともに失敗します。 - 両方の機能が有効な状態で作成された既存のマシンカタログについては、引き続き次のことができます。
- マシンカタログを更新する。
- VMを追加または削除する。
- マシンカタログを削除する。
Azure コンピュート ギャラリー
Azure Compute Gallery (旧Shared Image Gallery) を、AzureでMCSプロビジョニングされたマシンの公開イメージリポジトリとして使用します。公開イメージをギャラリーに保存することで、OSディスクの作成とハイドレーションを高速化し、非永続VMの起動時間とアプリケーション起動時間を改善できます。Azure Compute Galleryには、次の3つの要素が含まれています。
- ギャラリー: ここにイメージが保存されます。MCS は、マシンカタログごとに 1 つのギャラリーを作成します。
- ギャラリーイメージ定義: この定義には、公開されたイメージに関する情報 (オペレーティングシステムの種類と状態、Azure リージョン) が含まれます。MCS は、カタログ用に作成されたイメージごとに 1 つのイメージ定義を作成します。
- ギャラリーイメージバージョン: Azure Compute Gallery の各イメージは複数のバージョンを持つことができ、各バージョンは異なるリージョンに複数のレプリカを持つことができます。各レプリカは、公開されたイメージの完全なコピーです。Citrix DaaS は、カタログ内のマシンの数、構成されたレプリカ比率、および構成されたレプリカの最大数に基づいて、カタログのリージョンに適切な数のレプリカを持つ Standard_LRS イメージバージョン (バージョン 1.0.0) を各イメージに対して 1 つ作成します。
注:
Azure Compute Gallery の機能は、マネージドディスクとのみ互換性があります。レガシーマシンカタログでは使用できません。
詳細については、Azure Shared Image Gallery の概要を参照してください。
Azure Compute Gallery からイメージにアクセスする
マシンカタログの作成に使用するイメージを選択する際、Azure Compute Gallery で作成したイメージを選択できます。これらのイメージは、マシンカタログセットアップウィザードの [イメージ] ページにあるイメージのリストに表示されます。
これらのイメージを表示するには、次の操作を行う必要があります。
- Citrix DaaS をセットアップします。
- Azure Resource Managerに接続します。
- Azure portal で、リソースグループを作成します。詳細については、ポータルを使用して Azure Shared Image Gallery を作成するを参照してください。
- リソースグループで、Azure Compute Gallery を作成します。
- Azure Compute Gallery で、イメージ定義を作成します。
- イメージ定義で、イメージバージョンを作成します。
Azure Compute Gallery の構成については、Azure Compute Gallery の構成を参照してください。
Azure 一時ディスクがライトバックキャッシュディスクの対象となる条件
Azure 一時ディスクをライトバックキャッシュディスクとして使用できるのは、以下のすべての条件が満たされている場合のみです。
- Azure 一時ディスクは永続的なデータには適していないため、ライトバックキャッシュディスクは非永続的である必要があります。
- 選択した Azure VM サイズには、一時ディスクが含まれている必要があります。
- エフェメラルOSディスクを有効にする必要はありません。
- ライトバックキャッシュファイルをAzure一時ディスクに配置することに同意します。
- Azure 一時ディスクのサイズは、(ライトバックキャッシュディスクサイズ + ページングファイル用の予約領域 + 1 GBのバッファ領域)の合計サイズよりも大きい必要があります。
非永続的なライトバックキャッシュディスクのシナリオ
次の表は、マシンカタログの作成時に一時ディスクがライトバックキャッシュに使用される3つの異なるシナリオについて説明しています。
| シナリオ | 結果 |
|---|---|
| ライトバックキャッシュに一時ディスクを使用するためのすべての条件が満たされています。 | WBCファイル mcsdif.vhdx は一時ディスクに配置されます。 |
| 一時ディスクには、ライトバックキャッシュの使用に十分な空き容量がありません。 | VHDディスク ‘MCSWCDisk’ が作成され、WBCファイル mcsdif.vhdx がこのディスクに配置されます。 |
一時ディスクにはライトバックキャッシュの使用に十分なスペースがありますが、UseTempDiskForWBC はfalseに設定されています。 |
VHDディスク ‘MCSWCDisk’ が作成され、WBCファイル mcsdif.vhdx がこのディスクに配置されます。 |
以下のPowerShellトピックを参照してください。
Azureサーバー側暗号化
Citrix DaaSは、Azure Key Vaultを介したAzureマネージドディスクの顧客管理暗号化キーをサポートしています。このサポートにより、独自の暗号化キーを使用してマシンカタログのマネージドディスクを暗号化することで、組織およびコンプライアンス要件を管理できます。詳細については、「Azure Disk Storageのサーバー側暗号化」を参照してください。
マネージドディスクでこの機能を使用する場合:
-
ディスクの暗号化に使用するキーを変更するには、
DiskEncryptionSetで現在のキーを変更します。そのDiskEncryptionSetに関連付けられているすべてのリソースは、新しいキーで暗号化されるように変更されます。 -
キーを無効にするか削除すると、そのキーを使用しているディスクを持つVMは自動的にシャットダウンします。シャットダウン後、キーが再度有効になるか、新しいキーを割り当てない限り、VMは使用できません。そのキーを使用しているカタログは起動できず、VMを追加することもできません。
顧客管理暗号化キーを使用する際の重要な考慮事項
この機能を使用する際は、以下を考慮してください。
- 顧客管理キーに関連するすべてのリソース(Azure Key Vault、ディスク暗号化セット、VM、ディスク、スナップショット)は、同じサブスクリプションとリージョンに存在する必要があります。
- 顧客管理キーで暗号化されたディスク、スナップショット、およびイメージは、別のリソースグループやサブスクリプションに移動できません。
- ディスク暗号化セットのリージョンごとの制限については、Microsoft サイトを参照してください。
注:
Azure サーバー側暗号化の構成については、クイックスタート: Azure portal を使用して Key Vault を作成するを参照してください。
Azure カスタマーマネージド暗号化キー
マシンカタログを作成する際、カタログにプロビジョニングされたマシン上のデータを暗号化するかどうかを選択できます。カスタマーマネージド暗号化キーによるサーバー側暗号化を使用すると、マネージドディスクレベルで暗号化を管理し、カタログ内のマシン上のデータを保護できます。ディスク暗号化セット (DES) は、カスタマーマネージドキーを表します。この機能を使用するには、まず Azure で DES を作成する必要があります。DES は次の形式です。
/subscriptions/12345678-1234-1234-1234-123456789012/resourceGroups/Sample-RG/providers/Microsoft.Compute/diskEncryptionSets/SampleEncryptionSet
リストから DES を選択します。選択する DES は、リソースと同じサブスクリプションおよびリージョンにある必要があります。
暗号化キーを使用してカタログを作成し、後で Azure で対応する DES を無効にした場合、カタログ内のマシンの電源をオンにしたり、マシンを追加したりすることはできなくなります。
カスタマーマネージドキーを使用してマシンカタログを作成するを参照してください。
ホストでの Azure ディスク暗号化
ホストでの暗号化機能を備えた MCS マシンカタログを作成できます。現在、MCS はこの機能の機械プロファイルワークフローのみをサポートしています。VM またはテンプレート仕様を機械プロファイルの入力として使用できます。
この暗号化方法は、Azure ストレージを介してデータを暗号化しません。VM をホストするサーバーがデータを暗号化し、その後、暗号化されたデータが Azure ストレージサーバーを介して流れます。したがって、この暗号化方法はデータをエンドツーエンドで暗号化します。
制限事項:
ホストでの Azure ディスク暗号化は次のとおりです。
- すべての Azure マシンサイズでサポートされているわけではありません
- Azure ディスク暗号化と互換性がありません
詳細については、以下を参照してください。
マネージドディスクの二重暗号化
二重暗号化を使用してマシンカタログを作成できます。この機能で作成されたカタログはすべて、プラットフォームキーと顧客管理キーの両方でサーバー側が暗号化されたディスクを持ちます。Azure Key Vault、暗号化キー、およびディスク暗号化セット (DES) はお客様が所有および管理します。
二重暗号化は、プラットフォーム側暗号化(デフォルト)と顧客管理暗号化(CMEK)です。したがって、暗号化アルゴリズム、実装、または侵害されたキーに関連するリスクを懸念するセキュリティ意識の高いお客様は、この二重暗号化を選択できます。永続的なOSディスクとデータディスク、スナップショット、およびイメージはすべて、二重暗号化によって保存時に暗号化されます。
注:
- Studio と PowerShell コマンド を使用して、二重暗号化でマシンカタログを作成および更新できます。
- 二重暗号化でマシンカタログを作成または更新するには、マシンプロファイルに基づかないワークフローまたはマシンプロファイルに基づくワークフローを使用できます。
- マシンプロファイルに基づかないワークフローを使用してマシンカタログを作成する場合、保存されている
DiskEncryptionSetIdを再利用できます。- マシンプロファイルを使用する場合、VM またはテンプレート仕様をマシンプロファイルの入力として使用できます。
制限事項
- 二重暗号化は、Ultra Disks または Premium SSD v2 ディスクではサポートされていません。
- 二重暗号化は、アンマネージドディスクではサポートされていません。
- カタログに関連付けられているディスク暗号化セットキーを無効にすると、そのカタログのVMは無効になります。
- お客様が管理するキーに関連するすべてのリソース(Azure Key Vault、ディスク暗号化セット、VM、ディスク、スナップショット)は、同じサブスクリプションとリージョンにある必要があります。
- サブスクリプションごとに、リージョンあたり最大50個のディスク暗号化セットしか作成できません。
以下のPowerShellトピックを参照してください。
Azureリソースグループ
Azureプロビジョニングリソースグループは、ユーザーにアプリケーションとデスクトップを提供するVMをプロビジョニングする方法を提供します。リソースグループを作成するか、既存のリソースグループを使用して、MCSマシンカタログにVMをプロビジョニングできます。複数のマシンカタログで同じリソースグループを使用できます。Azureリソースグループの詳細については、Microsoftドキュメントを参照してください。
Azureリソースグループの使用法
Azureリソースグループあたりの仮想マシン、マネージドディスク、スナップショット、イメージの数に制限はありません。(Azureリソースグループあたり800個のマネージドディスクあたり240個のVMという制限は削除されました。)
- フルスコープのサービスプリンシパルを使用してマシンカタログを作成する場合、MCSは1つのAzureリソースグループのみを作成し、そのグループをカタログに使用します。
- ナロースコープのサービスプリンシパルを使用してマシンカタログを作成する場合、カタログ用に空の事前作成されたAzureリソースグループを提供する必要があります。
アジュール マーケットプレイス
Citrix DaaSは、プラン情報を含むAzure上のマスターイメージを使用してマシンカタログを作成することをサポートしています。詳細については、Microsoft Azure Marketplaceを参照してください。
ヒント:
Azure Marketplaceで見つかる一部のイメージ(標準のWindows Serverイメージなど)には、プラン情報が付加されていません。Citrix DaaSの機能は、有料イメージ向けです。
Azure Compute Galleryで作成されたイメージにAzureプラン情報が含まれていることを確認する
このセクションの手順を使用して、StudioでAzure Compute Galleryイメージを表示します。これらのイメージは、オプションでマスターイメージとして使用できます。イメージをAzure Compute Galleryに配置するには、ギャラリーでイメージ定義を作成します。
Azure Marketplace共有イメージギャラリー(/en-us/citrix-daas/media/azure-marketplace-sig.png)
公開オプションページで、購入プラン情報を確認します。
購入プラン情報フィールドは、最初は空です。これらのフィールドには、イメージに使用された購入プラン情報を入力します。購入プラン情報を入力しないと、マシンカタログのプロセスが失敗する可能性があります。
Azure MarketplaceがVDA公開オプションを検証する(/en-us/citrix-daas/media/azure-marketplace-sig-publishing-options.png)
購入プラン情報を確認したら、定義内にイメージバージョンを作成します。これはマスターイメージとして使用されます。バージョンを追加をクリックします。
Azure MarketplaceがVDAバージョンを追加する(/en-us/citrix-daas/media/azure-marketplace-add-vda-version.png)
バージョン詳細セクションで、イメージスナップショットまたはマネージドディスクをソースとして選択します。
Azure MarketplaceがVDAオプションを選択する(/en-us/citrix-daas/media/azure-marketplace-add-vda-version-info.png)
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/readMicrosoft.Compute/virtualMachines/extensions/writeMicrosoft.Insights/DataCollectionRuleAssociations/ReadMicrosoft.Insights/dataCollectionRuleAssociations/writeMicrosoft.Insights/DataCollectionRules/Read
- データ収集ルール: Azureポータルでデータ収集ルールを設定します。DCRの設定については、データ収集ルールの作成を参照してください。DCRはプラットフォーム固有(WindowsまたはLinux)です。必要なプラットフォームに応じてDCRを作成してください。 AMAは、VMなどのリソースと、Azure Monitor MetricsやAzure Monitor Logsなどのデータソース間のマッピングを管理するために、データ収集ルール(DCR)を使用します。
- 既定のワークスペース: Azureポータルでワークスペースを作成します。ワークスペースの作成については、Log Analyticsワークスペースの作成を参照してください。ログとデータを収集すると、その情報はワークスペースに保存されます。ワークスペースには一意のワークスペースIDとリソースIDがあります。ワークスペース名は、特定のリソースグループ内で一意である必要があります。ワークスペースを作成したら、データソースとソリューションを設定して、そのデータをワークスペースに保存します。
- 監視拡張機能をホワイトリストに登録: 拡張機能
AzureMonitorWindowsAgentとAzureMonitorLinuxAgentは、Citrixが定義したホワイトリスト登録済み拡張機能です。ホワイトリスト登録済み拡張機能のリストを表示するには、PowerShellコマンドGet-ProvMetadataConfigurationを使用します。 - マスターイメージ: Microsoftは、既存のマシンから新しいマシンを作成する前に、既存のマシンから拡張機能を削除することを推奨しています。拡張機能が削除されていない場合、残存ファイルや予期せぬ動作につながる可能性があります。詳細については、既存のVMからVMが再作成された場合を参照してください。
PowerShellを使用してAMAが有効なカタログを作成する方法については、AMAが有効なカタログVMのプロビジョニングを参照してください。
Azure機密VM
Azure機密コンピューティングVMは、仮想デスクトップがメモリ内で暗号化され、使用中に保護されることを保証します。
MCSを使用して、Azure機密VMを含むカタログを作成できます。このようなカタログを作成するには、マシンプロファイルワークフローを使用する必要があります。VMとARMテンプレート仕様の両方をマシンプロファイル入力として使用できます。
機密VMタイプのAzureマスターイメージと機密VMタイプのAzureマシンプロファイルを使用して準備済みイメージを作成し、その準備済みイメージを使用してMCSカタログを作成することもできます。
機密VMに関する重要な考慮事項
サポートされているVMサイズと機密VMを使用したマシンカタログの作成に関する重要な考慮事項は次のとおりです。
-
機密VMでサポートされているVMサイズを確認するには、サイズを参照してください。
-
機密VMを使用してマシンカタログを作成します。
- StudioおよびPowerShellコマンドを使用して、Azure機密VMを含むマシンカタログを作成できます。
- Azure機密VMを含むマシンカタログを作成するには、マシンプロファイルベースのワークフローを使用する必要があります。VMまたはテンプレート仕様をマシンプロファイル入力として使用できます。
-
マスターイメージとマシンプロファイル入力は、両方とも同じ機密セキュリティタイプで有効にする必要があります。異なるAzureリソースは、機密VMタイプを示すために異なるラベルを使用します。
Azureスナップショット、マネージドディスク、または仮想マシンの場合、セキュリティタイプは次のとおりです。
- ConfidentialVM_DiskEncryptedWithCustomerKey.
- ConfidentialVM_DiskEncryptedWithPlatformKey.
- ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey
Azure ARMテンプレート仕様バージョンの場合、セキュリティタイプは次のとおりです。
- VMGuestStateOnly: VMゲスト状態のみが暗号化された機密VM
- DiskWithVMGuestState: OSディスクとVMゲスト状態の両方がプラットフォーム管理キーまたは顧客管理キーで暗号化された機密VM。通常OSディスクとエフェメラルOSディスクの両方を暗号化できます。
-
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のセットを作成する前に、以下の手順に従ってマスターイメージとマシンプロファイルを準備します。
- Azureポータルで、次のような特定の構成で機密VMを作成します。
- セキュリティの種類: 機密仮想マシン
- 機密OSディスク暗号化: 有効。
- キー管理: プラットフォーム管理キーによる機密ディスク暗号化 機密VMの作成に関する詳細については、このMicrosoft記事を参照してください。
-
作成したVMでマスターイメージを準備します。作成したVMに必要なアプリケーションとVDAをインストールします。
注:
VHDを使用した機密VMの作成はサポートされていません。代わりに、この目的のためにAzure Compute Gallery、マネージドディスク、またはスナップショットを使用してください。
-
以下のいずれかの方法でマシンプロファイルを作成します。
- ステップ1で作成した既存のVMが、必要なマシンプロパティを備えている場合はそれを使用します。
-
マシンプロファイルとしてARMテンプレート仕様を選択する場合は、必要に応じてテンプレート仕様を作成します。具体的には、SecurityEncryptionTypeやdiskEncryptionSet(顧客管理キーの場合)など、機密VMの要件を満たすパラメーターを構成します。詳細については、Azureテンプレート仕様の作成を参照してください。
注:
- マスターイメージとマシンプロファイルが同じセキュリティキータイプであることを確認してください。
- 顧客管理キーによる機密OSディスク暗号化を必要とする機密VMを作成するには、マスターイメージとマシンプロファイルの両方でディスク暗号化セットIDが同一であることを確認してください。
機密VMタイプの準備済みイメージを使用してMCSカタログを作成する場合は、機密VMタイプのマスターイメージと機密VMタイプのマシンプロファイルを使用して準備済みイメージを作成します。準備済みイメージの作成については、イメージ定義と初期イメージバージョンの作成を参照してください。
StudioまたはPowerShellコマンドを使用した機密VMの作成
機密VMのセットを作成するには、マスターイメージと、目的の機密VMから派生したマシンプロファイルを使用してマシンカタログを作成します。
Studioを使用してカタログを作成するには、マシンカタログの作成に記載されている手順に従ってください。以下の点を考慮してください。
- イメージページで、機密VM作成のために準備したマスターイメージとマシンプロファイルを選択します。マシンプロファイルの選択は必須であり、選択したマスターイメージと同じセキュリティ暗号化タイプに一致するプロファイルのみが選択可能です。
- 「仮想マシン」ページでは、機密 VM をサポートするマシンサイズのみが選択肢として表示されます。
- 「ディスク設定」ページでは、選択したマシンプロファイルから継承されるため、ディスク暗号化セットを指定できません。
ブート整合性監視
VM でセキュアブートと仮想トラステッドプラットフォームモジュール (vTPM) が有効になっており、GuestAttestation 拡張機能がインストールされている場合、Microsoft Defender for Cloud は VM が正常に起動することをリモートで検証できます。この監視はブート整合性監視と呼ばれます。ブート整合性監視の詳細については、「ブート整合性監視の概要」を参照してください。
マシンプロファイル (VM またはテンプレート仕様) を使用して、MCS マシンカタログ VM (永続 VM および非永続 VM) のブート整合性監視を有効にできます。ブート整合性監視は、信頼された起動および機密 VM でのみサポートされます。
既存のカタログを更新してブート整合性を使用するには、`Set-ProvScheme to point to a boot integrity enabled machine profile. カタログに追加された新しいVMは、整合性監視が有効になります。
Set-ProvVmUpdateTimeWindow、Set-ProvVm、またはメンテナンスサイクルを使用して、カタログ内の既存の VM を更新することもできます。
次のものを変換できます。
- 整合性監視なしの VM を整合性監視ありに変換する。
- 整合性監視ありの VM を整合性監視なしに変換する。
整合性監視が有効なマシンカタログを作成する
次の権限があることを確認してください。
Microsoft.Compute/virtualMachines/extensions/readMicrosoft.Compute/virtualMachines/extensions/write
整合性監視が有効な MCS マシンカタログを作成するには、次の手順を実行します。
-
GuestAttestation拡張機能を持つマシンプロファイル(VMまたはテンプレート仕様)を作成します。 -
完全構成インターフェイスまたはPowerShellコマンドを使用して、マシンプロファイル入力を利用してMCSマシンカタログを作成します。
注:
Get-ItemPowerShellコマンドとAdditionalData parameterを使用して、VMまたはテンプレート仕様のGuestAttestationExtensionEnabledステータスを確認できます。 - カタログにVMを追加します。
GuestAttestation拡張機能が有効なマシンプロファイルを作成する
整合性監視が有効なマシンプロファイル入力としてVMまたはテンプレート仕様を作成します。これは、GuestAttestation拡張機能がインストールされていることを意味します。
整合性監視が有効なVMを作成するには、次の手順を実行します。
- Azureポータルにサインインします。
-
新しいVMを作成する場合:
- セキュリティの種類として信頼された起動仮想マシンまたは機密仮想マシンを選択します。
-
セキュリティ機能の構成をクリックし、整合性監視チェックボックスを選択します。
注:
整合性監視には、セキュアブートとvTPMを有効にする必要があります。
- 概要ページで、セキュリティの種類セクションに移動し、セキュリティの種類が信頼された起動または機密仮想マシンであり、整合性監視が有効になっていることを確認します。
- 「拡張機能 + アプリケーション」ページに移動して、
GuestAttestationがインストールされていることを確認します。
既存のVMの整合性監視を有効にするには、「整合性監視を有効にする - Azure portal」を参照してください。
GuestAttestation 拡張機能がインストールされたテンプレート仕様を作成するには:
-
テンプレート仕様を使用してGuestAttestationをインストールできます。「整合性監視を有効にする - テンプレート仕様」を参照してください。
注:
このテンプレート仕様の設定で、アテステーションに使用するエンドポイントを構成できます。構成しない場合、Azureが構成するエンドポイントを決定します。
オンデマンド容量予約VMのカタログを作成する
オンデマンド容量予約を使用すると、Azureリージョンまたは可用性ゾーンで、任意の期間にわたってコンピューティング容量を予約できます。Azureオンデマンド容量予約の詳細については、Microsoftドキュメント「オンデマンド容量予約」を参照してください。
マシンプロファイル(VMまたはテンプレート仕様)を使用して、オンデマンド容量予約付きのAzure VMのMCSマシンカタログを作成できます。既存のマシンカタログと既存のVMを更新して、オンデマンド容量予約を追加または削除することもできます。
この機能は、永続的および非永続的なマシンカタログに適用されます。
制限事項
この機能は以下には適用されません:
- スポットVM
- ホストグループ
- 休止状態が有効なVM
制限事項の詳細については、Microsoft ドキュメントの「制限事項と制約」を参照してください。
必要な権限
オンデマンド容量予約VMのカタログを作成するには、次の権限が必要です。
Microsoft.Compute/capacityReservationGroups/deploy/action
オンデマンド容量予約VMのカタログを作成する手順
- マシンプロファイルソース(VMまたはARMテンプレート仕様)を作成します。VMまたはARMテンプレート仕様の作成については、「VMを容量予約グループに関連付ける」を参照してください。
-
マシンプロファイルでオンデマンド容量予約が有効になっているかどうかを確認するには、次の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--> - StudioまたはPowerShellコマンドを使用して、マシンプロファイルでマシンカタログを作成します。
Set-ProvSchemeコマンドを使用してカタログを更新できます。PowerShellコマンドSet-ProvVmUpdateTimeWindowを使用して既存のVMを更新することもできます。マシンプロファイルは次回の電源投入時に更新されます。
ネストされた仮想化
マスターVMをネストされた仮想化が有効になるように構成すると、そのマスターVMを使用して作成されたMCSマシンカタログ内のすべてのVMでネストされた仮想化が有効になります。この機能は、永続VMと非永続VMの両方に適用されます。既存のMCSマシンカタログと既存のVMを、イメージ更新によってネストされた仮想化を持つように更新できます。
現在、Dv3およびEv3 VMサイズのみがネストされた仮想化をサポートしています。
ネストされた仮想化の詳細については、Microsoft のブログ「Nested Virtualization in Azure」を参照してください。
NVMe専用SKU
通常、汎用、メモリ最適化、コンピューティング最適化VMの古い世代(D/Ev5またはFv2以前)はSCSIをサポートしています。新しい世代(Da/Ea/Fav6以降)は通常、NVMeストレージインターフェースのみをサポートしています。MCSは、Azure上の新しいVM SKUをサポートするために、NVMeストレージコントローラータイプをサポートしています。
NVMeの詳細については、Microsoft のドキュメント「General FAQ for NVMe」を参照してください。
次のサービスオファリングを使用してMCSカタログを作成できます。
- SCSIとNVMeの両方をサポートしている場合、「Create a catalog using a service offering that supports both SCSI and NVMe」を参照してください。
- NVMeのみをサポートしている場合、「Create a catalog using a service offering that supports only NVMe」を参照してください。
制限事項
- NVMeをサポートするすべてのサービスオファリングは、同時にTrusted Launchをサポートしていません。
- NVMeはGen 1 VMではサポートされていません。
- 一部のOSイメージはNVMeをサポートしていない場合があります。その場合、Azure UIでNVMeオプションはグレー表示されます。
SCSIとNVMeの両方をサポートするサービスオファリングを使用してカタログを作成する
-
マスターイメージとして使用するVMを作成します。
- NVMeをサポートするマーケットプレイスイメージを使用します。NVMeをサポートするAzure Marketplaceイメージのリストは、「Supported OS images for remote NVMe」で確認できます。
-
VMのOSディスクのスナップショットを取得して、
New-ProvSchemeコマンドのMasterImageVMパラメーターで使用するか、マネージドディスクを直接使用します。マスターイメージがNVMeをサポートしているかどうかを、以下のいずれかの方法で確認します。
-
Get-ItemのAdditionalDataフィールドにあるSupportedDiskControllerTypesを確認します。例:(get-item XDHyp:\HostingUnits\mynetwork\image.folder\abc.resourcegroup\deg-snapshot).AdditionalData <!--NeedCopy-->SupportedDiskControllerTypesはSCSI, NVMeである必要があります。 -
Azure CLIとPowerShellを使用する
-
- NVMeとSCSIの両方をサポートするサービスオファリングを使用します。
- NVMeが有効になっているマシンプロファイルとして、VMまたはテンプレート仕様を使用します。
DiskControllerTypeがNVMeに設定されている任意のVMを使用します。VMを直接マシンプロファイルとして使用するか、テンプレートをエクスポートしてテンプレート仕様をマシンプロファイルとして使用します。
NVMeのみをサポートするサービスオファリングを使用してカタログを作成する
- マスターイメージとして使用するVMを作成します。NVMeをサポートするマーケットプレイスイメージを使用します。NVMeをサポートするAzure Marketplaceイメージのリストは、リモートNVMeでサポートされるOSイメージで確認できます。
-
NVMeのみをサポートするサービスオファリングを使用します。
注:
サービスオファリングがNVMeをサポートしているため、カタログでNVMeを有効にするために
NVMeに設定されたDiskControllerTypeを持つマシンプロファイルは必要ありません。ただし、マシンプロファイルを使用する場合は、DiskControllerTypeがNVMeに設定されているか、空白であるか、指定されていない必要があります。
既存の永続VMを変更する
NVMe構成は、VMが作成された後に変更することはできません。永続VMのNVMe構成を変更する方法は、VMを再デプロイすることです。これを行うロジックは次のとおりです。
- VMの現在の状態を保存します。
-
既存のVMの電源をオンにした後、VMが再デプロイを必要とするかどうかを検出します。
- 構成の変更がNVMeからNVMe、またはSCSIからSCSIの場合、VMの再展開は不要です。
- 構成の変更がSCSIからNVMe、またはその逆の場合、VMを再展開して再作成します。
PowerShellを使用する
このセクションでは、PowerShellを使用して以下のタスクを実行する方法について詳しく説明します。
- PowerShellを使用してカタログを作成または更新する際にテンプレート仕様を使用する
- Azure VM拡張機能を有効にする
- トラステッド起動を使用したマシンカタログ
- マシンプロファイルのプロパティ値を使用する
- PowerShellを使用してアベイラビリティゾーンを構成する
- Azure専用ホストにVMをプロビジョニングする
- ストレージの種類を構成する
- ゾーン冗長ストレージを有効にする
- マシンプロファイルからVMおよびNICの診断設定をキャプチャする
- Windowsライセンスを確認する
- Linuxライセンスを構成する
- Azureエフェメラルディスクを使用してマシンカタログを作成する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#create-a-machine-catalog-with-an-azure-ephemeral-disk)
- Azure Compute Galleryを構成する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#configure-azure-compute-gallery)
- VMごとに複数のNICを持つカタログを作成または更新する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#create-or-update-a-catalog-with-multiple-nics-per-vm)
- 非永続的なライトバックキャッシュディスクを使用してマシンカタログを作成する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#create-a-machine-catalog-with-non-persistent-write-back-cache-disk)
- 永続的なライトバックキャッシュディスクを使用してマシンカタログを作成する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#create-a-machine-catalog-with-persistent-write-back-cache-disk)
- MCSIOで起動パフォーマンスを向上させる(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#improve-boot-performance-with-mcsio)
- 顧客管理の暗号化キーを使用してマシンカタログを作成する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#create-a-machine-catalog-with-customer-managed-encryption-key)
- ホスト機能での暗号化を使用してマシンカタログを作成する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#create-a-machine-catalog-with-encryption-at-host-capability)
- 二重暗号化を使用してマシンカタログを作成する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#create-a-machine-catalog-with-double-encryption)
- ページファイルの場所の決定(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#page-file-location-determination)
- ページファイル設定のシナリオ(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#page-file-setting-scenarios)
- ページファイル設定を指定する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#specify-page-file-setting)
- ページファイル設定を変更する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#modify-page-file-settings)
- AMAが有効なカタログVMをプロビジョニングする(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#provision-catalog-vms-with-ama-enabled)
- Azure Spot VMを使用してカタログを作成する(/ja-jp/citrix-daas/install-configure/machine-catalogs-create/create-machine-catalog-citrix-azure#create-a-catalog-using-azure-spot-vms)
- バックアップVMサイズを構成する
- すべてのリソースのタグをコピーする
PowerShell を使用してカタログを作成または更新する際にテンプレート仕様を使用する
マシンプロファイルの入力としてテンプレート仕様を使用して、MCS マシンカタログを作成または更新できます。これを行うには、Studio または PowerShell コマンドを使用します。
Studio インターフェイスについては、Studio インターフェイスで Azure Resource Manager イメージを使用してマシンカタログを作成するを参照してください。
PowerShell コマンドを使用する:
- PowerShell ウィンドウを開きます。
-
asnp citrix*を実行します。 - カタログを作成または更新します。
- カタログを作成するには:
-
マシンプロファイルの入力としてテンプレート仕様を指定して、
New-ProvSchemeコマンドを使用します。例:New-ProvScheme -MasterImageVM "XDHyp:/HostingUnits/azure/image.folder/fgthj.resourcegroup/nab-ws-vda_OsDisk_1_xxxxxxxxxxa.manageddisk" MachineProfile "XDHyp:/HostingUnits/azure/machineprofile.folder/fgthj.resourcegroup/test.templatespec/V1.templatespecversion" -ProvisioningSchemeName <String> -HostingUnitName <String> -IdentityPoolName <String> [-ServiceOffering <String>][-CustomProperties <String>] [<CommonParameters>] <!--NeedCopy--> -
カタログの作成を完了します。
-
-
カタログを更新するには、マシンプロファイルの入力としてテンプレート仕様を指定して、
Set-ProvSchemeコマンドを使用します。例:Set-ProvScheme -MasterImageVm 'XDHyp://Connections/Azure/East Us.region/vm.folder/MasterDisk.vm' MachineProfile 'XDHyp:/HostingUnits/azure/machineprofile.folder/fgthj.resourcegroup/testing.templatespec/V1.templatespecversion' [-ProvisioningSchemeName] <String> [-CustomProperties <String>][-ServiceOffering <String>] [-PassThru] [<CommonParameters>] <!--NeedCopy-->
- カタログを作成するには:
Azure VM 拡張機能を有効にする
ARM テンプレート仕様を選択したら、次の PowerShell コマンドを実行して Azure VM 拡張機能を操作します:
- サポートされているAzure VM拡張機能のリストを表示するには:
Get-ProvMetadataConfiguration -
VM拡張機能を追加するには:
Add-ProvMetadataConfiguration。例えば、Add-ProvMetadataConfiguration -PluginType "AzureRM" -ConfigurationName "Extension" -ConfigurationValue "CustomScriptExtension"次のいずれかを追加しようとすると、コマンドはエラーメッセージとともに失敗します。
- Citrixが定義した拡張機能。
- 既存のユーザー定義拡張機能。
- サポートされていない構成キー。現在、サポートされている構成キーは
Extensionです。
- リストから拡張機能を削除するには:
Remove-ProvMetadataConfiguration。追加した拡張機能を削除できます。
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 DaaSの提供インベントリアイテムを表示し、VMサイズがTrusted Launchをサポートしているかどうかを判断するには、次のコマンドを実行します。
- PowerShellウィンドウを開きます。
- Citrix固有のPowerShellモジュールをロードするには、asnp citrix*を実行します。
-
次のコマンドを実行します。
$s = (ls XDHyp:\HostingUnits\<name of hosting unit>\serviceoffering.folder\"<VM size>".serviceoffering) <!--NeedCopy--> -
$s | select -ExpandProperty Additionaldataを実行します。 -
SupportsTrustedLaunch属性の値を確認します。-
SupportsTrustedLaunchが True の場合、VM サイズは Trusted Launch をサポートしています。 -
SupportsTrustedLaunchが False の場合、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 ドキュメント「Trusted launch for Azure virtual machines」を参照してください。
Trusted Launch を使用してマシンカタログを作成する
- Trusted Launch が有効なマスターイメージを作成します。Microsoft ドキュメント「Trusted launch VM Images」を参照してください。
- セキュリティの種類を trusted launch virtual machines として VM またはテンプレート仕様を作成します。VM またはテンプレート仕様の作成の詳細については、Microsoft ドキュメント「Deploy a trusted launch VM」を参照してください。
-
Studio または PowerShell コマンドを使用してマシンカタログを作成します。
- Studioを使用する場合は、StudioでAzure Resource Managerイメージを使用してマシンカタログを作成するを参照してください。
-
PowerShellコマンドを使用する場合は、VMまたはテンプレート仕様をマシンプロファイルの入力として、
New-ProvSchemeコマンドを使用します。VMをマシンプロファイルの入力とする
New-ProvSchemeの例:New-ProvScheme -CleanOnBoot -HostingUnitName "name" -IdentityPoolName "name" -InitialBatchSizeHint 1 -MasterImageVM "XDHyp:/HostingUnits/azure/image.folder/fgthj.resourcegroup/nab-ws-vda_OsDisk_1_xxxxxxxxxxa.manageddisk" -MachineProfile "XDHyp:\HostingUnits\<adnet>\machineprofile.folder\<def.resourcegroup>\<machine profile vm.vm>" -ProvisioningSchemeName <String> -HostingUnitName <String> -IdentityPoolName <String> [-ServiceOffering <String>][-CustomProperties <String>] [<CommonParameters>] <!--NeedCopy-->テンプレート仕様をマシンプロファイルの入力とする
New-ProvSchemeの例:New-ProvScheme -CleanOnBoot -HostingUnitName "name" -IdentityPoolName "name" -InitialBatchSizeHint 1 -MasterImageVM "XDHyp:/HostingUnits/azure/image.folder/fgthj.resourcegroup/nab-ws-vda_OsDisk_1_xxxxxxxxxxa.manageddisk" MachineProfile "XDHyp:/HostingUnits/azure/machineprofile.folder/fgthj.resourcegroup/test.templatespec/V1.templatespecversion" -ProvisioningSchemeName <String> -HostingUnitName <String> -IdentityPoolName <String> [-ServiceOffering <String>][-CustomProperties <String>] [<CommonParameters>] <!--NeedCopy-->
トラステッド起動でマシンカタログを更新する
永続および非永続の両方のマシンカタログを更新できます。
永続マシンカタログの場合:

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

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