Azure で準備済みイメージのマシンカタログを作成する
準備済みイメージを作成し、その準備済みイメージを使用して MCS マシンカタログを作成します。
準備済みイメージを使用して MCS マシンカタログを作成するための主要な手順は次のとおりです。
- イメージ定義と初期イメージバージョンを作成します。
- イメージバージョンを準備済みイメージとして使用してカタログを作成します。
ウェブスタジオを使用する
イメージ定義と初期イメージバージョンを作成する
イメージ定義と初期イメージバージョンを作成するには、次の手順を実行します。
- Web Studio から、イメージノードに移動し、イメージ定義の作成をクリックします。はじめにページで次へをクリックします。
- イメージ定義ページで、イメージ定義のOS タイプとセッションタイプを指定します。
- 既存のリソースグループを選択するか、イメージリソースを保持するための新しいリソースグループを作成します。イメージ共有を有効にするには、Azure Compute Gallery でイメージバージョンを配置を選択し、新しいギャラリーを作成するか、既存のギャラリーを使用してイメージバージョンを保持するかを選択します。
-
イメージページで、リソース(設定された接続に適用可能なリソースのみが一覧表示されます)と、イメージバージョンを作成するためのテンプレートとして使用するマスターイメージを選択します。マシンプロファイルを使用チェックボックスを選択し、マシンプロファイルを選択できます。
注:
画像を選択する前に、マスターイメージにVDA 2311以降がインストールされており、MCSIOドライバーがVDAにインストールされていることを確認してください。
-
ストレージとライセンスの種類ページで、イメージ準備プロセスの一部として使用するストレージとライセンスの種類を選択します。
注:
イメージページでマシンプロファイルを選択した場合、マシンプロファイルのライセンスタイプはプロファイル設定に基づいて事前に選択されます。
- マシン仕様ページで、マシンサイズを選択します。イメージページでマシンプロファイルを選択した場合、マシンプロファイルのマシンサイズがデフォルトで選択されます。
- NICページで、準備イメージ用のNICを選択または追加します。各NICについて、関連する仮想ネットワークを選択します。
- ディスク設定ページで、顧客管理の暗号化キー (CMEK) を選択します。マシンプロファイルにCMEKがないが、マスターイメージにCMEKがある場合、マスターイメージからCMEKが事前に選択されます。
- バージョン説明ページで、作成された初期イメージバージョンの説明を入力します。
- 概要ページで、イメージ定義と作成された初期イメージバージョンの詳細を確認します。イメージ定義の名前と説明を入力します。完了をクリックします。
イメージバージョンを作成する
イメージバージョンを使用すると、特定のイメージに対するさまざまなイテレーションや更新を管理できます。この機能により、さまざまな目的のためにイメージの複数のバージョンを維持できます。
初期イメージバージョンからイメージバージョンを作成するには、次の手順を実行します。
注:
すべてのイメージバージョンのホスティングユニットは同じである必要があります。
- イメージノードに移動し、イメージバージョンまたはイメージ定義を選択して、イメージバージョンを作成をクリックします。
- 「イメージ定義」ページで、ホスティングユニットを変更し、そのイメージバージョン用のマスターイメージとマシンプロファイルを再選択できます。
- イメージバージョンの構成を最初に構成したイメージバージョンと異なるものにしたい場合は、「イメージバージョンの作成」ダイアログの「ストレージとライセンスの種類」、「マシン仕様」、「NIC」、「ディスク設定」ページで設定を構成します。
- イメージバージョンの説明を追加します。「完了」をクリックします。

注:
何らかの理由でイメージバージョンの作成に失敗した場合、下部にある「トラブルシューティング」タブに「再試行」オプションが表示されます。
共有準備済みイメージ
Azure の異なるホストユニット間で準備済みイメージを共有するには、次の手順に従います。
- イメージバージョンを右クリックし、「イメージ共有の管理」を選択します。選択した接続下のすべてのホストユニットが一覧表示されます。イメージバージョンが作成されたリソースは、すべてのアクションに対して無効になっています。
- イメージを共有するホストユニットを選択し、「保存」をクリックします。「共有ステータス」列に「進行中」と表示されます。
- 共有ステータスの詳細については、「リソース」タブをクリックします。
注:
イメージバージョンの共有ステータスが進行中の場合、「イメージバージョンの削除」または「イメージ共有の管理」オプションは無効になります。
イメージノードからマシンカタログを作成する
「イメージ」ノードの「カタログの作成」オプションを使用して、イメージバージョンでカタログを作成します。
または、マシンカタログノードでカタログを作成する際にバージョンを選択し、カタログ作成ワークフローの準備済みイメージオプションにリンクすることもできます。詳細については、「マシンカタログノードからマシンカタログを作成する」を参照してください。
イメージノードからMCSマシンカタログを作成するには、次の手順を実行します。
- イメージバージョンを選択し、カタログの作成をクリックします。はじめにページで次へをクリックします。
- デスクトップエクスペリエンスページで、必要なデスクトップエクスペリエンスを選択します。
- イメージページからディスク設定ページまで、設定は選択したイメージバージョンに基づいて事前選択されています。
- リソースグループページでは、新しいリソースグループを作成するか、既存のリソースグループを使用してこのカタログのリソースを配置するかを選択できます。
- 次のページで設定を完了します。
- 概要ページで、マシンカタログの詳細を確認します。マシンカタログの名前と説明を入力します。完了をクリックします。
- マシンカタログノードに移動して、作成されたマシンカタログを確認します。
マシンカタログノードからマシンカタログを作成する
マシンカタログノードからMCSマシンカタログを作成するには、次の手順を実行します。
- 左側のナビゲーションペインでマシンカタログをクリックします。
- マシンカタログの作成をクリックします。マシンカタログのセットアップページが表示されます。はじめに、マシンの種類、マシン管理の各ページで次へをクリックします。
-
マシン管理ページで、次の設定を選択します。
- 電源管理されているマシン(仮想マシンやブレードPCなど)を選択します。
- Citrix プロビジョニング テクノロジー を選択します。次に、Citrix マシン クリエーション サービス™ を選択します。
- リソースフィールドには、異なるゾーンに属するリソースが一覧表示されます。任意のAzureネットワークリソースを選択し、次へをクリックします。
-
イメージページで: マスターイメージタイプの場合、次の手順に従います。
- マスターイメージを選択します。
- マスターイメージの下で、イメージを選択します。ブレードには、リソースと同じリージョンに属するすべてのイメージが一覧表示されます。
- 完了をクリックします。
- 準備済みイメージタイプの場合、準備済みイメージを選択します。
- 準備済みイメージの下で、イメージ定義のイメージバージョンを選択します。
- イメージバージョン名をクリックします。選択したイメージバージョンの詳細を表示するには、下線が引かれているバージョン番号をクリックします。
- 選択したイメージバージョンがマシンプロファイルで構成されている場合は、マシンプロファイルを選択します。選択したイメージバージョンがマシンプロファイルで構成されていない場合は、マシンプロファイルを使用することを選択できません。
- 次のページで設定を構成します。
- ディスク設定ページで、選択した準備済みイメージがディスク暗号化セットを使用している場合、暗号化セットを削除することはできませんが、キーを別の暗号化キーに変更できます。
- リソースグループページで、新しいリソースグループを作成するか、既存のリソースグループを使用してこのカタログのリソースを配置するかを選択できます。
- 次のページで設定を完了します。
- 概要ページで、マシンカタログの詳細を確認します。マシンカタログの名前と説明を入力します。完了をクリックします。
パワーシェルを使用する
準備されたイメージを作成する
準備されたイメージバージョン仕様を作成するための詳細なPowerShellコマンドは次のとおりです。
-
Test-ProvImageDefinitionNameAvailable commandを使用して、利用可能なイメージ定義名を確認します。例:Test-ProvImageDefinitionNameAvailable -ImageDefinitionName <string[]> <!--NeedCopy--> -
New-ProvImageDefinitionコマンドを使用してイメージ定義を作成します。例:New-ProvImageDefinition -ImageDefinitionName image1 -OsType Windows -VdaSessionSupport MultiSession <!--NeedCopy--> -
Add-ProvImageDefinitionConnectionコマンドを使用して、指定されたホスティング接続でイメージ定義の新しい構成を作成します。Add-ProvImageDefinitionConnectionのCustomPropertiesには、次のものが含まれます。パラメーターを使用しない場合、デフォルト値が使用されます。-
ResourceGroups:ベースディスクを持つリソースグループ。 -
UseSharedImageGallery:ベースディスクの種類のインジケーター。ACG(イメージ共有)にはtrueを、スナップショットにはfalseを使用します。 -
ImageGallery:ベースディスクがACGイメージバージョンの場合のギャラリー名。
例えば、
-
スナップショットと顧客が提供するリソースグループの場合:
$CustomerOwnRsourceGroupProperties = @" <CustomProperties xmlns="http:// schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="ResourceGroups" Value="yangj_image" /> </CustomProperties> "@ <!--NeedCopy--> -
ACGと顧客が提供するリソースグループおよびイメージギャラリーの場合:
$CustomerOwnAllProperties = @" <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" /> <Property xsi:type="StringProperty" Name="ResourceGroups" Value="rg" /> <Property xsi:type="StringProperty" Name="ImageGallery" Value="gallery" /> </CustomProperties> "@ <!--NeedCopy--> -
ACGと顧客が提供するリソースグループのみの場合:
$CustomerOwnResourceGroupProperties = @" <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" /> <Property xsi:type="StringProperty" Name="ResourceGroups" Value="rg" /> </CustomProperties> "@ <!--NeedCopy--> -
ACGとCitrixが管理するリソースグループおよびイメージギャラリーの場合:
$CustomerOwnResourceGroupNothingProperties = @" <CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" /> </CustomProperties> "@ <!--NeedCopy-->
Add-ProvImageDefinitionConnection -ImageDefinitionName image1 -HypervisorConnectionName Azure28 [-CustomProperties $CustomProperties] <!--NeedCopy--> -
-
New-ProvImageVersionコマンドを使用してイメージバージョンを作成します。例:New-ProvImageVersion -ImageDefinitionName image1 -Description "version 1" <!--NeedCopy--> -
Add-ProvImageVersionSpecコマンドを使用して、イメージバージョンにマスターイメージバージョン仕様を追加します。例:Add-ProvImageVersionSpec -ImageDefinitionName image1 -ImageVersionNumber 1 -HostingUnitName azure -MasterImagePath "XDHyp:\HostingUnits\azure\image.folder\azureresourcegroup.resourcegroup\win2022-snapshot.snapshot" <!--NeedCopy-->注:
ホスティングユニットごとに、1つのイメージバージョンにマスターイメージバージョン仕様を1つのみ追加できます。
-
New-ProvImageVersionSpecコマンドを使用して、マスターイメージバージョン仕様から準備済みイメージバージョン仕様を作成します。例:New-ProvImageVersionSpec -SourceImageVersionSpecUid c6e7384c-b2f8-46d6-9519-29a2c57ed3cb -NetworkMapping @{"0"="XDHyp:\HostingUnits\azure\virtualprivatecloud.folder\azureresourcegroup.resourcegroup\azure-vnet-eastus.virtualprivatecloud\dev.network"} -ServiceOffering"XDHyp:\HostingUnits\azure\serviceoffering.folder\Standard_B2ms.serviceoffering" -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"></CustomProperties>" -RunAsynchronously <!--NeedCopy--> -
Add-ProvImageVersionSpecHostingUnitコマンドを使用して、同じホスティング接続内の別のホスティングユニットと準備済みイメージバージョン仕様を共有することもできます。例:Add-ProvImageVersionSpecHostingUnit -ImageVersionSpecUid xxxxxxx -HostingUnitName AzureWest <!--NeedCopy-->注:
1つのホスティングユニットと準備タイプには、準備済みインスタンスを1つのみ持つことができます。
イメージ定義、イメージバージョン、および準備済みイメージバージョン仕様を作成するためのPowershellコマンドの完全なセットの例:
New-ProvImageDefinition -ImageDefinitionName image1 -OsType Windows -VdaSessionSupport MultiSession
$CustomProperties = @"
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="rg" />
<Property xsi:type="StringProperty" Name="ImageGallery" Value="gallery" />
</CustomProperties>
"@
Add-ProvImageDefinitionConnection -ImageDefinitionName image1 -HypervisorConnectionName Azure28 -CustomProperties $CustomProperties
$imageVersion = New-ProvImageVersion -ImageDefinitionName image1 -Description "version 1"
$SourceImageVersionSpec = Add-ProvImageVersionSpec -ImageVersionUid $imageVersion.ImageVersionUid `
-HostingUnitUid $hostingunit.HostingUnitUid `
-MasterImagePath "XDHyp:\HostingUnits\azure28\image.folder\abc.resourcegroup\def-snapshot.snapshot"
New-ProvImageVersionSpec -NetworkMapping @{"0" = "XDHyp:\HostingUnits\azure28\virtualprivatecloud.folder\East US.region\virtualprivatecloud.folder\studio-mcs-infrastructure.resourcegroup\studio-mcs-vnet-eastus.virtualprivatecloud\mcs-dev.network" } -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"LicenseType`" Value=`"Windows_Server`" /></CustomProperties>" -ServiceOffering "XDHyp:\HostingUnits\azure28\serviceoffering.folder\Standard_B2s.serviceoffering" -SourceImageVersionSpecUid $SourceImageVersionSpec.ImageVersionSpecUid
Add-ProvImageVersionSpecHostingUnit -ImageVersionSpecUid xxxxxxx -HostingUnitName AzureWest
$PreparedImageVersionSpec = Get-ProvImageVersionSpec -ImageVersionUid $imageVersion.ImageVersionUid | Where SourceImageVersionSpecUid-eq $SourceImageVersionSpec.ImageVersionSpecUid
<!--NeedCopy-->
注:
- イメージ定義内のすべてのイメージバージョン仕様は、同じホスティングユニットに属している必要があります。
- イメージバージョンは、マスターイメージバージョン仕様を1つ、準備済みイメージバージョン仕様を1つのみ持つことができます。
- すべてのイメージバージョン仕様はマシンプロファイルを持つか、またはどのイメージバージョン仕様もマシンプロファイルを持たないかのいずれかである必要があります。
準備済みイメージバージョン仕様を使用してカタログを作成する
New-ProvScheme コマンドを使用して、準備済みイメージバージョン仕様からMCSマシンカタログを作成します。例:
New-ProvScheme -ProvisioningSchemeName <string> -ImageVersionSpecUid <Guid> -HostingUnitUid <Guid> -IdentityPoolUid <Guid> [-VMCpuCount <int>] [-VMMemoryMB <int>] [-UseWriteBackCache] [-NetworkMapping <Hashtable>] [-CleanOnBoot] [-Scope <string[]>] [-Metadata <Hashtable>] [-ServiceOffering <string>] [-SecurityGroup <string[]>] [-TenancyType <string>] [-MachineProfile <string>] [-CustomProperties <string>] [-ResetAdministratorPasswords] [-UseFullDiskCloneProvisioning] [-RunAsynchronously] [-PurgeJobOnSuccess] [-ProvisioningSchemeType <ProvisioningSchemeType>]
<!--NeedCopy-->
または、
New-ProvScheme -ProvisioningSchemeName <string> -ImageVersionSpecUid <Guid> -HostingUnitName <string> -IdentityPoolName <string> [-VMCpuCount <int>] [-VMMemoryMB <int>] [-UseWriteBackCache] [-NetworkMapping <Hashtable>] [-CleanOnBoot] [-Scope <string[]>] [-Metadata <Hashtable>] [-ServiceOffering <string>] [-SecurityGroup <string[]>] [-TenancyType <string>] [-MachineProfile <string>] [-CustomProperties <string>] [-ResetAdministratorPasswords] [-UseFullDiskCloneProvisioning] [-RunAsynchronously] [-PurgeJobOnSuccess] [-ProvisioningSchemeType <ProvisioningSchemeType>]
<!--NeedCopy-->
ACGイメージバージョン仕様を使用する場合は、UseSharedImageGallery を true として設定します。例えば、
$provSchemeCustomProperties= @"
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" />
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="StandardSSD_LRS" />
</CustomProperties>
"@
New-ProvScheme -ProvisioningSchemeName assignimage -ImageVersionSpecUid $PreparedImageVersionSpec.ImageVersionSpecUid `
-HostingUnitUid $hostingunit.HostingUnitUid `
-IdentityPoolUid $IdentityPool.IdentityPoolUid `
-CleanOnBoot -Scope @() -SecurityGroup @() `
-ServiceOffering "XDHyp:\HostingUnits\azure28\serviceoffering.folder\Standard_B2s.serviceoffering" `
-NetworkMapping @{"0"="XDHyp:\HostingUnits\azure28\virtualprivatecloud.folder\East US.region\virtualprivatecloud.folder\studio-mcs-infrastructure.resourcegroup\studio-mcs-vnet-eastus.virtualprivatecloud\mcs-dev.network"} `
-CustomProperties $provSchemeCustomProperties
<!--NeedCopy-->
カタログを作成するためのPowerShellコマンドの完全なセットの例:
$Catalog = New-BrokerCatalog -AllocationType "Random" -IsRemotePC $False -MinimumFunctionalLevel "L7_20" -Name "azurecatalog" -PersistUserChanges "Discard" -ProvisioningType "MCS" -Scope @() -SessionSupport "MultiSession"
$IdentityPool = New-AcctIdentityPool -AllowUnicode -Domain "azure.local" -IdentityPoolName "azurecatalog" -IdentityType "ActiveDirectory" -NamingScheme "azure##" -NamingSchemeType "Numeric" -Scope @()
$PreparedImageVersionSpec = Get-ProvImageVersionSpec -ImageDefinitionName image1 -ImageVersionNumber 1 -Filter "PreparationType -eq 'Mcs'"
$Task = New-ProvScheme -ProvisioningSchemeName azurecatalog -ImageVersionSpecUid $PreparedImageVersionSpec.ImageVersionSpecUid -HostingUnitName azure -IdentityPoolName azurecatalog -CleanOnBoot -Scope @() -SecurityGroup @() -ServiceOffering "XDHyp:\HostingUnits\azure\serviceoffering.folder\Standard_B2s.serviceoffering" -NetworkMapping @{"0"="XDHyp:\HostingUnits\azure\virtualprivatecloud.folder\azureresourcegroup.resourcegroup\azure-vnet-eastus.virtualprivatecloud\dev.network"} -CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"> <Property xsi:type="StringProperty" Name="UseSharedImageGallery" Value="true" /><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"StandardSSD_LRS`" /></CustomProperties>" -RunAsynchronously
Get-ProvTask -TaskId $Task.TaskId
$ProvScheme = Get-ProvScheme -ProvisioningSchemeName azurecatalog
Set-BrokerCatalog -Name $Catalog.Name -ProvisioningSchemeId $ProvScheme.ProvisioningSchemeUid
<!--NeedCopy-->