AWS EC2 で準備済みイメージを使用してカタログを作成する

最終公開日 : Oct 24, 2026
準備済みイメージを作成し、その準備済みイメージを使用して、次の方法で MCS マシンカタログを作成します。
  • スタジオ
  • PowerShell コマンド
準備済みイメージを使用して MCS マシンカタログを作成する主な手順は次のとおりです。
  1. イメージ定義と初期イメージバージョンを作成します。
  2. イメージバージョンを準備済みイメージとして使用してカタログを作成します

イメージ定義と初期イメージバージョンを作成する

Studio を使用する

イメージ定義と初期イメージバージョンを作成するには、次の手順を実行します。
  1. Studio から、イメージノードに移動し、イメージ定義の作成をクリックします。はじめにページで次へをクリックします。
  2. イメージ定義ページで、イメージ定義のOS タイプとセッションタイプを指定します。
  3. イメージページで、リソース(設定された接続に適用可能なリソースのみが一覧表示されます)、イメージバージョンを作成するためのテンプレートとして使用するマスターイメージ、およびハードウェアプロパティをキャプチャするためのマシンプロファイルを選択します。VM インスタンスまたは起動テンプレートバージョンからハードウェアプロパティをキャプチャするマシンプロファイルを選択します。
    注:
    • イメージを選択する前に、マスターイメージに VDA 2311 以降がインストールされており、MCSIO ドライバーが VDA にインストールされていることを確認してください。
    • インスタンスメタデータサービス (IMDS) V1 と V2 は両方ともサポートされています。
  4. Machine Specification ページで、マシンサイズを選択します。マシンプロファイル(Image ページで選択)のマシンサイズがデフォルトで選択されています。
  5. NICs ページで、準備イメージの NIC を選択または追加します。各 NIC について、関連する VPC サブネットを選択します。
  6. Version Description ページで、作成された初期イメージバージョンの説明を入力します。
  7. Summary ページで、イメージ定義と作成された初期イメージバージョンの詳細を確認します。イメージ定義の名前と説明を入力します。Finish をクリックします。

イメージバージョンを作成する

イメージバージョンを使用すると、特定のイメージに対するさまざまなイテレーションや更新を管理できます。この機能により、さまざまな目的のためにイメージの複数のバージョンを維持できます。
初期イメージバージョンからイメージバージョンを作成するには、次の手順を実行します。
注:
すべてのイメージバージョンのホスティングユニットは同じである必要があります。
  1. Images ノードに移動し、イメージバージョンまたはイメージ定義を選択して、Create Image Version をクリックします。
  2. Image definition ページで、ホスティングユニットを変更し、そのイメージバージョンのマスターイメージとマシンプロファイルを再選択できます。
  3. イメージバージョンの構成を初期構成イメージバージョンと異なるものにする場合は、Create Image Version ダイアログの Machine Specification および NICs ページで設定を構成します。
  4. イメージバージョンの説明を追加します。Finish をクリックします。
注:
イメージバージョンの作成が何らかの理由で失敗した場合、下部にあるトラブルシューティングタブに再試行オプションが表示されます。

PowerShellを使用する

準備済みイメージバージョン仕様を作成するための詳細なPowerShellコマンドは次のとおりです。
  1. Test-ProvImageDefinitionNameAvailable commandを使用して、利用可能なイメージ定義名を確認します。例:
    Test-ProvImageDefinitionNameAvailable -ImageDefinitionName <string[]>
  2. New-ProvImageDefinitionコマンドを使用してイメージ定義を作成します。例:
    New-ProvImageDefinition -ImageDefinitionName image1 -OsType Windows -VdaSessionSupport MultiSession
  3. Add-ProvImageDefinitionConnectionコマンドを使用して、指定されたホスティング接続でイメージ定義の新しい構成を作成します。
    Add-ProvImageDefinitionConnection -ImageDefinitionName image1 -HypervisorConnectionName test-conn
  4. New-ProvImageVersionコマンドを使用してイメージバージョンを作成します。例:
    New-ProvImageVersion -ImageDefinitionName image1 -Description "version 1"
  5. Add-ProvImageVersionSpecコマンドを使用して、マスターイメージバージョン仕様をイメージバージョンに追加します。例:
    Add-ProvImageVersionSpec -ImageDefinitionName  image1  -ImageVersionNumber  1 -HostingUnitName aws -MasterImagePath "XDHyp:\HostingUnits\aws\win10-2411-ami (ami-00123456789abcdef).template”"
    注:
    ホスティングユニットの1つのイメージバージョンには、マスターイメージバージョン仕様を1つだけ追加できます。
  6. New-ProvImageVersionSpecコマンドを使用して、マスターイメージバージョン仕様から準備済みイメージバージョン仕様を作成します。SourceImageVersionSpecUidパラメーターは、Add-ProvImageVersionSpecコマンドから派生します。例:
    New-ProvImageVersionSpec
    -SourceImageVersionSpecUid  00000000-0000-0000-0000-00000000000
    -MachineProfile 'XDHyp:\HostingUnits\aws\w2022-2411 (lt-00123456789abcdef).launchtemplate\lt-00123456789abcdef (1).launchtemplateversion' -RunAsynchronously
イメージ定義、イメージバージョン、および準備済みイメージバージョン仕様を作成するためのPowerShellコマンドの完全なセットの例:
New-ProvImageDefinition -ImageDefinitionName image1 -OsType Windows -VdaSessionSupport MultiSession


Add-ProvImageDefinitionConnection -ImageDefinitionName image1 -HypervisorConnectionName aws-CustomProperties $CustomProperties

$imageVersion = New-ProvImageVersion -ImageDefinitionName image1 -Description "version 1"

$SourceImageVersionSpec = Add-ProvImageVersionSpec -ImageVersionUid $imageVersion.ImageVersionUid `
    -HostingUnitUid $hostingunit.HostingUnitUid `
    -MasterImagePath "XDHyp:\HostingUnits\aws\win10-2411-ami (ami-00123456789abcdef).template”

New-ProvImageVersionSpec -MachineProfile 'XDHyp:\HostingUnits\aws\w2022-2411 (lt-00123456789abcdef).launchtemplate\lt-00123456789abcdef (1).launchtemplateversion' -SourceImageVersionSpecUid $SourceImageVersionSpec.ImageVersionSpecUid
Add-ProvImageVersionSpecHostingUnit -ImageVersionSpecUid 00000000-0000-0000-0000-00000000000-HostingUnitName aws
$PreparedImageVersionSpec = Get-ProvImageVersionSpec -ImageVersionUid $imageVersion.ImageVersionUid | Where SourceImageVersionSpecUid-eq $SourceImageVersionSpec.ImageVersionSpecUid
注:
  • イメージ定義内のすべてのイメージバージョン仕様は、同じホスティングユニットに属している必要があります。
  • イメージバージョンには、マスターイメージバージョン仕様を1つと、準備済みイメージバージョン仕様を1つだけ含めることができます。
  • すべてのイメージバージョン仕様には、マシンプロファイルが必要です。

準備済みイメージをアベイラビリティゾーンとリージョン間で共有する

AWS EC2環境では、異なるホスティングユニットに紐付けられた単一の準備済みイメージを、同じAWSリージョン内または異なるリージョン内の複数のアベイラビリティゾーン間で共有できるようになりました。これにより、1つの準備済みイメージを使用して、さまざまなアベイラビリティゾーンとリージョンでMCSマシンカタログを作成および更新できます。異なるリージョン内の異なるAZ間で共有する場合、準備済みイメージのバージョンは元のリージョンから宛先リージョンにコピーされます。
異なるホスティングユニットに紐付けられた単一の準備済みイメージを維持し、それを使用して複数のアベイラビリティゾーンとリージョン間でマシンカタログを作成および更新できます。これにより、イメージ管理のオーバーヘッドが大幅に削減され、展開全体の一貫性が確保され、プロビジョニングプロセスが合理化されます。また、既存のマシンカタログを、元のカタログが展開されたアベイラビリティゾーンやリージョンとは異なる場所にある準備済みイメージでシームレスに更新することもできます。

ユースケース

  • 集中型イメージ管理: 1つのアベイラビリティゾーン(例: us-east-1a)で準備済みイメージを作成します。その後、このイメージを同じus-east-1 AWSリージョン内のus-east-1bのような他のアベイラビリティゾーン、または異なるus-west-1リージョン内のus-west-1aに共有できます。これにより、単一のイメージで複数のホスティングユニットに対応でき、メンテナンスが簡素化されます。
  • 効率的なカタログ作成と更新: AZ 1(例: us-east-1a)で作成された準備済みイメージを使用して、AZ 1に新しいカタログを作成できます。このイメージをAZ 2(例: us-east-1b)に共有した後、AZ 2で共有されたイメージを使用して、AZ 2にカタログを作成および更新できます。
  • ホスティングユニット間およびホスティング接続の展開: 環境に同じまたは異なるAWSリージョンに複数のホスティングユニットがある場合、これらのホスティングユニット間で準備済みイメージを効率的に共有できます。

制限事項

同じAWSアカウント内での共有: 現在の実装では、同じAWSアカウント内でのみ共有できます。

重要な考慮事項

  • 削除順序: 元の準備済みイメージバージョン仕様を削除するには、まずその共有イメージバージョン仕様をすべて削除する必要があります。または、元の仕様と共有仕様を同時に削除する必要があります。
  • イメージバージョンの依存関係: イメージバージョンを削除する場合、まずその特定のイメージバージョンに依存する共有構成をすべて削除する必要があります。元の(共有されていない)イメージから作成したカタログは、そのまま残すことができます。
  • カタログのバックポート可能性: この機能が導入される前に展開した既存のマシンカタログを更新できます。カタログを最初に展開した場所とは異なるアベイラビリティゾーンまたはリージョンで作成した準備済みイメージを使用します。
  • 完全削除: 準備済みイメージを削除すると、共有または最初に作成したどのアベイラビリティゾーンでも使用できなくなります。さらに、準備済みイメージバージョンに紐付けられているすべてのカタログが最初に削除されるまで、準備済みイメージバージョンを削除することはできません。

前提条件

この機能を構成または使用する前に、次の条件を満たしていることを確認してください。
  • 環境はAWS EC2環境である必要があります。
  • 同じAWSアカウントで、複数のホスティングユニット(それぞれ異なるアベイラビリティーゾーンに紐付け可能)とホスト接続(それぞれ異なるリージョンに紐付け可能)を構成する必要があります。

PowerShellを使用した構成

現在、PowerShellコマンドのみを使用して、異なるホスティングユニットに紐付けられたアベイラビリティーゾーン間で準備済みイメージを共有できます。

準備済みイメージを共有するには

  1. 共有する準備済みイメージのImageVersionSpecUidがあることを確認してください。これは、PowerShellでGet-ProvImageVersionSpecまたは類似のGet-コマンドを使用して取得できます。
  2. 準備済みイメージを利用可能にするアベイラビリティーゾーン(同じリージョンまたは異なるリージョンでも可)のHostingUnitNameを決定します。これは、その特定のアベイラビリティーゾーン用に構成したホスティングユニットの名前です。
  3. **Add-ProvImageVersionSpecHostingUnitコマンドを実行します。**次のPowerShellコマンドを使用します。<ImageVersionSpecUid>をイメージのUidに、<targetHostingUnitName>をイメージバージョン仕様を共有するターゲットアベイラビリティーゾーンのホスティングユニットの名前に置き換えます。
    Add-ProvImageVersionSpecHostingUnit -ImageVersionSpecUid <ImageVersionSpecUid> -HostingUnitName <targetHostingUnitName>
  4. 正常に実行されると、Studio UIでイメージのステータスが表示され、指定されたホスティングユニットと共有されたことが示されます。

準備済みイメージの共有を削除するには

  1. 共有を削除する準備済みイメージのImageVersionSpecUidがあることを確認してください。
  2. 共有イメージを削除するアベイラビリティーゾーンのHostingUnitNameを決定します。
  3. **Remove-ProvImageVersionSpecHostingUnitコマンドを実行します。**次のPowerShellコマンドを使用します。<ImageVersionSpecUid>をイメージのUidに、<targetHostingUnitName>をイメージバージョン仕様の共有を削除するターゲットアベイラビリティーゾーンのホスティングユニットの名前に置き換えます。
    Remove-ProvImageVersionSpecHostingUnit -ImageVersionSpecUid <ImageVersionSpecUid> -HostingUnitName <targetHostingUnitName>

マシンカタログを作成する

Studio を使用する

イメージノードからマシンカタログを作成する

イメージノードのカタログの作成オプションを使用して、イメージバージョンでカタログを作成します。
または、マシンカタログノードでカタログを作成する際にバージョンを選択し、カタログ作成ワークフローで準備済みイメージオプションにリンクすることもできます。詳細については、「マシンカタログノードからマシンカタログを作成する」を参照してください。
イメージノードから MCS マシンカタログを作成するには、次の手順を実行します。
  1. イメージバージョンを選択し、カタログの作成をクリックします。はじめにページで次へをクリックします。
  2. 「マシン管理」ページと「イメージ」ページでは、選択したイメージバージョンに基づいて設定が事前に選択されています。「イメージ」ページで、選択した準備済みイメージのメモを入力します。
  3. 次のページで設定を完了します。
  4. 概要ページで、マシンカタログの詳細を確認します。マシンカタログの名前と説明を入力します。完了をクリックします。
  5. マシンカタログノードに移動して、作成されたマシンカタログを確認します。

マシンカタログノードからマシンカタログを作成する

マシンカタログノードから MCS マシンカタログを作成するには、次の手順を実行します。
  1. 左側のナビゲーションペインでマシンカタログをクリックします。
  2. マシンカタログの作成をクリックします。マシンカタログのセットアップページが表示されます。
  3. マシンタイプページで、カタログのマシンタイプ(例: マルチセッションOS)を選択します。
  4. マシン管理ページで、次の設定を選択します。
    1. **電源管理されているマシン(仮想マシンやブレードPCなど)**を選択します。
    2. Citrixプロビジョニングテクノロジーを選択します。次に、Citrix Machine Creation Services™を選択します。
    3. リソースフィールドで、ホスト接続の作成時に構成したリソース(アベイラビリティゾーン)を選択し、次へをクリックします。
  5. デスクトップエクスペリエンスページで、ユーザーがログインしたときに使用するランダムまたは静的デスクトップのいずれかを選択します。静的デスクトップを選択した場合は、ユーザーがローカルディスクで行った変更を保存するかどうか(永続的または非永続的)をさらに指定します。
  6. イメージページで、イメージの選択をクリックして、マシンカタログ用の準備済みイメージを選択します。作成した準備済みバージョンを選択します。イメージのバージョン名をクリックします。選択したイメージバージョンの詳細を表示するには、下線が引かれているバージョン番号をクリックします。完了をクリックします。
    準備済みイメージに関連付けられたマシンプロファイルが表示され、そのハードウェアプロパティ(インスタンスタイプ、テナンシータイプ、ネットワークマッピング、セキュリティグループ、ボリュームプロパティなど)がカタログ内のマシンを作成するために使用されます。マシンプロファイルのソースを別のVMまたは起動テンプレートバージョンに変更するには、編集ボタンをクリックします。
  7. 仮想マシンページで、次の操作を行います。
    1. カタログのVM数を入力します。
    2. デフォルトのマシン仕様が表示されます。これはマシンプロファイルに基づいています。変更するには、編集アイコンを選択し、マシン仕様を選択します。
  8. NICページで、VMのNIC(またはENI)を選択します。
  9. マシンIDページで、カタログ内のマシンに対してオンプレミスのActive DirectoryまたはMicrosoft Entraハイブリッド参加を構成します。これを行うには、ドメインを選択し、このマシンカタログで作成されるVM用の新しいADアカウントを作成します。プロビジョニングされたVMは、選択したドメインに参加します。VM用に作成される新しいADアカウントのアカウント命名スキームを指定します。次へをクリックします。
  10. ドメイン資格情報ページで、資格情報の入力をクリックして、選択したドメインの資格情報を入力します。プロンプトが表示されたら、管理者レベルのユーザー名とパスワードを入力します。当社の製品ドキュメントに従ってドメイン資格情報を以前に保存している場合は、サービスアカウントを使用することもできます。
  11. 概要ページが表示されるまで残りのページをクリックします。マシンカタログの名前を入力し、完了を選択してマシンカタログを作成します。

PowerShell を使用する

準備済みイメージバージョン仕様とマシンプロファイルを使用してカタログを作成する

  • 準備済みイメージバージョン仕様からMCS非永続マシンカタログをNew-ProvSchemeコマンドを使用して作成します。例:
    New-ProvScheme -ProvisioningSchemeName <string> -ImageVersionSpecUid <Guid> -HostingUnitUid <Guid> -IdentityPoolUid <Guid> [-CleanOnBoot $true] [-MachineProfile <string>] [-ProvisioningSchemeType “MCS”]
  • 準備済みイメージバージョン仕様からMCS永続マシンカタログをNew-ProvSchemeコマンドを使用して作成します。例:
    New-ProvScheme -ProvisioningSchemeName <string> -ImageVersionSpecUid <Guid> -HostingUnitUid <Guid> -IdentityPoolUid <Guid> [-CleanOnBoot $false] [-MachineProfile <string>] [-ProvisioningSchemeType “MCS”]
カタログを作成するためのPowerShellコマンドの完全なセットの例:
$Catalog = New-BrokerCatalog  -AllocationType "Random"  -IsRemotePC $False  -MinimumFunctionalLevel "L7_20" -Name "awscatalog" -PersistUserChanges "Discard" -ProvisioningType "MCS" -Scope @() -SessionSupport "MultiSession"

$IdentityPool = New-AcctIdentityPool  -AllowUnicode  -Domain "domainname" -IdentityPoolName "awscatalog" -IdentityType "ActiveDirectory"  -NamingScheme "aws##" -NamingSchemeType "Numeric" -Scope @()

$PreparedImageVersionSpec = Get-ProvImageVersionSpec -ImageDefinitionName image1 -ImageVersionNumber 1 -Filter "PreparationType -eq 'Mcs'"

$Task = New-ProvScheme -ProvisioningSchemeName awscatalog -ImageVersionSpecUid $PreparedImageVersionSpec.ImageVersionSpecUid -HostingUnitName aws -IdentityPoolName awscatalog -CleanOnBoot -Scope @() -SecurityGroup @() -MachineProfile 'XdHyp:\HostingUnits\cvad-test-scalestress\us-east-1a.availabilityzone\machine-profile-instance i (i-0xxxxxxxx).vm' -RunAsynchronously

Get-ProvTask -TaskId $Task.TaskId
$ProvScheme = Get-ProvScheme -ProvisioningSchemeName awscatalog

Set-BrokerCatalog -Name $Catalog.Name -ProvisioningSchemeId $ProvScheme.ProvisioningSchemeUid

次のステップ

詳細情報

  • イメージ管理