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

「注:」
何らかの理由でイメージバージョンの作成に失敗した場合、下部にある「トラブルシューティング」タブに「再試行」オプションが表示されます。
共有準備済みイメージ
Azure の異なるホスティングユニット間で準備済みイメージを共有するには、次の手順に従います。
- イメージバージョンを右クリックし、「イメージ共有の管理」を選択します。Azure 環境内のすべてのホスティングユニットが表示されます。イメージバージョンが作成されたリソースは、すべてのアクションに対して無効になっています。
- イメージを共有するホスティングユニットを選択し、「保存」をクリックします。「共有ステータス」列に「進行中」と表示されます。
- 共有ステータスの詳細については、「リソース」タブをクリックしてください。
「注:」
イメージバージョンの共有ステータスが進行中の場合、「イメージバージョンの削除」または「イメージ共有の管理」オプションは無効になります。
イメージノードからマシンカタログを作成する
「イメージ」ノードの「カタログの作成」オプションを使用して、イメージバージョンを使用してカタログを作成します。
または、マシンカタログノードでカタログを作成する際にバージョンを選択し、カタログ作成ワークフローで準備されたイメージオプションにリンクすることもできます。詳細については、「マシンカタログノードからマシンカタログを作成する」(#create-a-machine-catalog-from-the-machine-catalogs-node)を参照してください。
イメージノードからMCSマシンカタログを作成するには、次の手順を実行します。
- イメージバージョンを選択し、カタログの作成をクリックします。はじめにページで次へをクリックします。
- デスクトップエクスペリエンスページで、必要なデスクトップエクスペリエンスを選択します。
- イメージページからディスク設定ページまで、設定は選択したイメージバージョンに基づいて事前選択されています。
- リソースグループページでは、新しいリソースグループを作成するか、既存のリソースグループを使用してこのカタログのリソースを配置するかを選択できます。
- 次のページで設定を完了します。
- 概要ページで、マシンカタログの詳細を確認します。マシンカタログの名前と説明を入力します。完了をクリックします。
- マシンカタログノードに移動して、作成されたマシンカタログを確認します。
マシンカタログノードからマシンカタログを作成する
マシンカタログノードからMCSマシンカタログを作成するには、次の手順を実行します。
- 左側のナビゲーションペインでマシンカタログをクリックします。
- マシンカタログの作成をクリックします。マシンカタログのセットアップページが表示されます。はじめに、マシンの種類、マシン管理の各ページで次へをクリックします。
-
マシン管理ページで、次の設定を選択します。
- 電源管理されているマシン(仮想マシンやブレードPCなど)を選択します。
- 「Citrixプロビジョニングテクノロジー」を選択します。次に、「Citrix Machine Creation Services™」を選択します。
- 「リソース」フィールドには、異なるゾーンに属するリソースが一覧表示されます。任意の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-->