AWSカタログを作成する

最終公開日 : Nov 13, 2026
マシンカタログの作成では、マシンカタログを作成するウィザードについて説明します。以下の情報は、AWS仮想化環境に固有の詳細を扱っています。
注:
AWSカタログを作成する前に、AWSへの接続の作成を完了する必要があります。AWSへの接続を参照してください。

制限事項

Citrix Virtual Apps and Desktops™ 2203 LTSR以降では、MCS AWSプラグインがDescribeInstanceTypes AWS APIコールを実行し、それが成功すると、MCSはAPI応答から作成されたインベントリ名を使用します。
したがって、CVAD 1912から2203以降にアップグレードする場合は、AWS上のDefineInstanceType権限を無効にし、Set-ProvSchemeコマンドを使用して既存のカタログを更新してAWSの命名スキームに合わせます。その後、カタログの更新が完了し、サービス提供がAWSの命名スキームに一致したら、DescribeInstanceType権限を再度追加します。

イメージ準備中のネットワーク設定

イメージ準備中に、元のVMに基づいて準備用仮想マシン(VM)が作成されます。この準備用VMはネットワークから切断されます。準備用VMからネットワークを切断するために、すべてのインバウンドおよびアウトバウンドトラフィックを拒否するネットワークセキュリティグループが作成されます。このネットワークセキュリティグループは永続化され、再利用されます。ネットワークセキュリティグループの名前はCitrix.XenDesktop.IsolationGroup-GUIDで、GUIDはランダムに生成されます。

AWSテナンシーを構成する

AWSは以下のテナンシーオプションを提供します。
  • 共有テナンシー(デフォルトタイプ):異なる顧客の複数のAmazon EC2インスタンスが、同じ物理ハードウェア上に存在する可能性があります。
  • 専用テナンシー:EC2インスタンスは、デプロイした他のインスタンスと同じハードウェア上でのみ実行されます。他の顧客は同じハードウェアを使用しません。
PowerShellを使用して、MCSでAWS専用ホストをプロビジョニングできます。

PowerShellを使用してAWS専用ホストテナンシーを構成する

PowerShellを通じてホストテナンシーが定義されたマシンカタログを作成できます。
Amazon 専用ホストは、インスタンス容量を持つ物理サーバーであり、完全に専用であるため、既存のソケットごとまたはVMごとのソフトウェアライセンスを使用できます。
専用ホストには、インスタンスタイプに基づいて事前に設定された利用率があります。たとえば、C4 Largeインスタンスタイプの単一の割り当てられた専用ホストは、16インスタンスの実行に制限されています。詳細については、AWSサイトを参照してください。
AWSホストへのプロビジョニングの要件は次のとおりです。
  • インポートされたBYOL(bring your own license)イメージ(AMI)。専用ホストでは、既存のライセンスを使用および管理します。
  • プロビジョニング要求を満たすのに十分な利用率を持つ専用ホストの割り当て。
  • 自動配置を有効にします。
PowerShell を使用して AWS の専用ホストにプロビジョニングするには、New-ProvScheme コマンドレットでパラメーター TenancyType を Host に設定して使用します。
詳細については、Citrix Developer Documentation を参照してください。

AMI からマシンプロパティをキャプチャする

AWS で Machine Creation Services (MCS) を使用してマシンをプロビジョニングするカタログを作成する場合、そのカタログのマスター/ゴールデンイメージを表す AMI を選択します。その AMI から、MCS はディスクのスナップショットを使用します。以前のリリースでは、マシンにロールやタグを設定したい場合、AWS コンソールを使用して個別に設定していました。この機能はデフォルトで有効になっています。
ヒント:
AWS インスタンスプロパティのキャプチャを使用するには、AMI に関連付けられた VM が必要です。
このプロセスを改善するために、MCS は AMI が取得されたインスタンスからプロパティを読み取り、そのマシンの Identity Access Management (IAM) ロールとタグを、特定のカタログ用にプロビジョニングされたマシンに適用します。このオプション機能を使用すると、カタログ作成プロセスは選択された AMI ソースインスタンスを見つけ、限られたプロパティセットを読み取ります。これらのプロパティは AWS Launch Template に保存され、そのカタログのマシンをプロビジョニングするために使用されます。カタログ内のすべてのマシンは、キャプチャされたインスタンスプロパティを継承します。
キャプチャされるプロパティには以下が含まれます。
  • IAM ロール – プロビジョニングされたインスタンスに適用されます。
  • タグ - プロビジョニングされたインスタンス、そのディスク、および NIC に適用されます。これらのタグは、S3 バケットとオブジェクト、AMI、スナップショット、起動テンプレートなど、一時的な Citrix® リソースに適用されます。
ヒント:
一時的な Citrix リソースのタグ付けはオプションであり、カスタムプロパティ AwsOperationalResourcesTagging を使用して構成できます。

AWS インスタンスプロパティをキャプチャする

AWS ホスティング接続のプロビジョニングスキームを作成する際に、カスタムプロパティ AwsCaptureInstanceProperties を指定することで、この機能を使用できます。
New-ProvScheme -CustomProperties "AwsCaptureInstanceProperties,true" …<standard provscheme parameters
詳細については、Citrix Developer Documentation を参照してください。
注:
AwsCaptureInstanceProperties は非推奨です。代わりに、VM のマシンプロパティを指定するには、マシンプロファイルを使用することをお勧めします。

マシンプロファイルからマシンプロパティをキャプチャする

MCS を使用して AWS マシンをプロビジョニングするためのカタログを作成する際、マシンプロファイルを使用して特定のマシンプロパティ設定をプリセットできます。
そのためには、次の手順に従います。
  1. マシンプロファイルを、このカタログを作成するリソースと同じアベイラビリティゾーンに保存します。
  2. カタログ作成ウィザードのマシンテンプレートページで、マシンプロファイルを使用を選択します。選択したリソースと同じアベイラビリティゾーンにあるマシンプロファイルが表示されます。
  3. 必要に応じてマシンプロファイルを選択します。
注:
マシンプロファイルまたは AMI のいずれかを使用して、マシンプロパティをキャプチャできます。Web Studio でマシンプロファイルを使用を選択すると、仮想マシンにマシンテンプレートプロパティを適用オプションは自動的に非表示になります。

AWS オペレーションリソースにタグを付ける

MCS を使用して AWS でマシンをプロビジョニングするためのカタログを作成する際、IAM ロールとタグプロパティをそれらのマシンに適用するかどうかを制御できます。また、マシンタグをオペレーションリソースに適用するかどうかも制御できます。
Amazon マシンイメージ (AMI) は、Amazon Cloud 環境内で仮想マシンを作成するために使用される仮想アプライアンスの一種であり、一般にEC2と呼ばれます。AMIを使用して、EC2環境を使用するサービスを展開します。AWS向けMCSを使用してマシンをプロビジョニングするカタログを作成するときは、そのカタログのゴールデンイメージとして機能するAMIを選択します。
重要:
インスタンスプロパティと起動テンプレートをキャプチャしてカタログを作成することは、オペレーションリソースのタグ付けを使用するために必要です。
AWS カタログを作成するには、まずゴールデンイメージとするインスタンスの AMI を作成する必要があります。MCS はそのインスタンスからタグを読み取り、起動テンプレートに組み込みます。その後、起動テンプレートのタグは、AWS 環境で作成されたすべての Citrix リソースに適用されます。これには以下が含まれます。
  • 仮想マシン
  • VMディスク
  • VMネットワークインターフェイス
  • S3 バケット
  • S3 オブジェクト
  • 起動テンプレート
  • AMI

オペレーションリソースにタグを付ける

PowerShell を使用してリソースにタグを付けるには:
  1. DDC ホストから PowerShell ウィンドウを開きます。
  2. コマンド asnp citrix を実行して、Citrix固有のPowerShellモジュールをロードします。
プロビジョニングされた VM のリソースにタグを付けるには、新しいカスタムプロパティ AwsOperationalResourcesTagging を使用します。このプロパティの構文は次のとおりです。
New-ProvScheme -CustomProperties "AwsCaptureInstanceProperties,true; AwsOperationalResourcesTagging,true" …<standard provscheme parameters>

次のステップ

VM上のタグをコピーする

マシンプロファイルで指定されたNICとディスク(IDディスク、ライトバックキャッシュディスク、OSディスク)のタグを、MCSマシンカタログで新しく作成されたVMにコピーできます。これらのタグは、マシンプロファイルソース(AWS VMインスタンスまたはAWS起動テンプレートバージョン)のいずれかで指定できます。この機能は、永続および非永続マシンカタログとVMに適用されます。
注:
  • AWS EC2 コンソールでは、起動テンプレートバージョンリソースタグの下にネットワークインターフェイスのタグ付けの値が表示されません。ただし、PowerShell コマンド aws ec2 describe-launch-template-versions --launch-template-id lt-0bb652503d45dcbcd --versions 12 を実行してタグの仕様を確認できます。
  • マシンプロファイルソース(VMまたは起動テンプレートバージョン)に2つのネットワークインターフェイス(eni-1とeni-2)があり、eni-1にタグt1、eni-2にタグt2がある場合、VMは両方のネットワークインターフェイスのタグを取得します。

マシンプロファイルを使用してカタログを作成する

AWSでMachine Creation Services™ (MCS)を使用してマシンをプロビジョニングするためのカタログを作成する際、EC2インスタンス (VM) または起動テンプレートバージョンからハードウェアプロパティをキャプチャし、プロビジョニングされたマシンに適用するためにマシンプロファイルを使用できるようになりました。キャプチャされるプロパティには、例えば、EBSボリュームプロパティ、インスタンスタイプ、EBS最適化、およびその他のサポートされているAWS構成が含まれます。カタログを編集する際、プロビジョニングされたマシンのマシンプロファイルは、別のVMまたは起動テンプレートを提供することで変更できます。
注:
EBSボリュームプロパティは、マシンプロファイルからのみ派生します。

重要な考慮事項

MCSマシンカタログを作成する際の重要な考慮事項:
  • New-ProvScheme および Set-ProvScheme コマンドでマシンハードウェアプロパティパラメーターを追加すると、パラメーターで指定された値がマシンプロファイルの値を上書きします。
  • AwsCaptureInstanceProperties を true に設定し、MachineProfile プロパティを設定しない場合、IAM ロールとタグのみがキャプチャされます。
  • AwsCaptureInstanceProperties と MachineProfile の両方を同時に設定することはできません。
    **注:
    AwsCaptureInstanceProperties は非推奨です。
  • 次のプロパティの値を明示的に指定する必要があります。
    • TenancyType
    • セキュリティグループ
    • NICまたは仮想ネットワーク
  • AwsOperationalResourcesTagging は、AwsCaptureInstanceProperties を有効にするか、マシンプロファイルを指定した場合にのみ有効にできます。
MCSマシンカタログ作成後の重要な考慮事項:
  • カタログに追加された新しいVMのみが変更の影響を受けます。
  • マシンプロファイルベースのカタログを非マシンプロファイルベースのカタログに変更することはできません。

マシンプロファイルを使用してマシンカタログを作成する

マシンプロファイルを使用してマシンカタログを作成するには:
  1. PowerShellウィンドウを開きます。
  2. Citrix固有のPowerShellモジュールをロードするためにasnp citrix*を実行します。
  3. まだ作成されていない場合は、IDプールを作成します。例:
    New-AcctIdentityPool -IdentityPoolName idPool -NamingScheme ms## -Domain abcdf -NamingSchemeType Numeric
  4. New-ProvSchemeコマンドを実行します。例:
    New-ProvScheme -ProvisioningSchemeName demet-test-1
    -HostingUnitUid aa633238-9xxd-4cf6-80e8-232a758a1xx1
    -IdentityPoolUid 34d5b088-e312-416f-907d-16573xxxxxc4
    -CleanOnBoot
    -MasterImageVM 'XDHyp:\HostingUnits\cvad-test-scalestress\citrix-demet-ami.0 (ami-0ca813xxxxxx061ef).template'
    -MachineProfile 'XdHyp:\HostingUnits\cvad-test-scalestress\us-east-1a.availabilityzone\machine-profile-instance i (i-0xxxxxxxx).vm'
  5. カタログの作成を完了します。詳細については、Citrix PowerShell SDKを参照してください。
マシンプロファイルで最初にプロビジョニングされたカタログのマシンプロファイルを更新するには:
  1. Set-ProvSchemeコマンドを実行します。例:
    Set-ProvScheme `
    -ProvisioningSchemeUid "<ID" `
    -MachineProfile "XDHyp:\HostingUnits\abc\us-east-1a.availabilityzone\citrix-cvad-machineprofile-instance (i-0xxxxxxxx).vm"

起動テンプレートバージョンでカタログを作成する

起動テンプレートバージョンをマシンプロファイルの入力として使用して、MCSマシンカタログを作成できます。また、マシンプロファイルカタログの入力をVMから起動テンプレートバージョンに、または起動テンプレートバージョンからVMに更新することもできます。
AWS EC2コンソールでは、起動テンプレートのインスタンス構成情報をバージョン番号とともに提供できます。マシンカタログの作成または更新時に、起動テンプレートバージョンをマシンプロファイルの入力として指定すると、そのバージョンの起動テンプレートのプロパティがプロビジョニングされたVDA VMにコピーされます。
以下のプロパティは、マシンプロファイルの入力として、またはNew-ProvSchemeまたはSet-ProvSchemeコマンドのパラメーターとして明示的に指定できます。New-ProvSchemeまたはSet-ProvSchemeコマンドで指定された場合、これらのプロパティのマシンプロファイル値よりも優先されます。
  • サービスオファリング
  • ネットワーク
  • セキュリティグループ
  • テナンシータイプ
注:
マシンプロファイルの起動テンプレートでサービスオファリングが提供されていない場合、またはNew-ProvSchemeコマンドのパラメーターとして提供されていない場合、適切なエラーが発生します。
マシンプロファイルの入力として起動テンプレートバージョンを使用してカタログを作成するには:
  1. PowerShellウィンドウを開きます。
  2. Citrix固有のPowerShellモジュールをロードするためにasnp citrix*を実行します。
  3. 起動テンプレートの起動テンプレートバージョンの一覧を取得します。例:
    XDHyp:\HostingUnits\test\test-mp-sard (lt-01xxxxx).launchtemplate> ls | Select FullPath
  4. 作成されていない場合は、IDプールを作成します。例:
    New-AcctIdentityPool `
    -IdentityPoolName "abc11" `
    -NamingScheme "abc1-##" `
    -NamingSchemeType Numeric `
    -Domain "citrix-xxxxxx.local" `
    -ZoneUid "xxxxxxxx" `
  5. マシンプロファイルの入力として起動テンプレートバージョンを使用してプロビジョニングスキームを作成します。例:
    New-ProvScheme `
    -ProvisioningSchemeName "MPLT1" `
    -HostingUnitUid "c7f71f6a-3f45-4xxx-xxxx-xxxxxxxxxx" `
    -IdentityPoolUid "bf3a6ba2-1f80-4xxx-xxxx-xxxxxxxxx" `
    -MasterImageVM "XDHyp:\HostingUnits\xxxd-ue1a\apollo-non-persistent-vda-win2022 (ami-0axxxxxxxxxxx).template" `
    -CleanOnBoot `
    -MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-01xxxxx).launchtemplate\lt-01xxxxx (1).launchtemplateversion"
    サービスオファリング、セキュリティグループ、テナンシー、ネットワークなどのパラメータを上書きすることもできます。例:
    New-ProvScheme `
    -ProvisioningSchemeName "MPLT1" `
    -HostingUnitUid " c7f71f6a-3f45-4xxx-xxxx-xxxxxxxxxx" `
    -IdentityPoolUid " bf3a6ba2-1f80-4xxx-xxxx-xxxxxxxxx" `
    -MasterImageVM "XDHyp:\HostingUnits\xxxd-ue1a\apollo-non-persistent-vda-win2022 (ami-0axxxxxxxxxxx).template" `
    -CleanOnBoot `
    -MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-01xxxx).launchtemplate\lt-01xxxx (1).launchtemplateversion" `
    -ServiceOffering "XDHyp:\HostingUnits\xxxd-ue1a\T3 Large Instance.serviceoffering"
  6. プロビジョニングスキームをブローカーカタログとして登録します。例:
    New-BrokerCatalog -Name "MPLT1" `
    -AllocationType Random `
    -Description "Machine profile catalog" `
    -ProvisioningSchemeId fe7df345-244e-4xxxx-xxxxxxxxx `
    -ProvisioningType Mcs `
    -SessionSupport MultiSession `
    -PersistUserChanges Discard
  7. カタログの作成を完了します。詳細については、Citrix PowerShell SDKを参照してください。
マシンプロファイルカタログの入力を、VMから起動テンプレートバージョンへ、または起動テンプレートバージョンからVMへ更新することもできます。例:
  • マシンプロファイルカタログの入力をVMから起動テンプレートバージョンに更新するには:
    Set-ProvScheme -ProvisioningSchemeName "CloudServiceOfferingTest" `
    -MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-0bxxxxxxxxxxxx).launchtemplate\lt-0bxxxxxxxxxxxx (1).launchtemplateversion"
  • マシンプロファイルカタログの入力を起動テンプレートバージョンからVMに更新するには:
    Set-ProvScheme -ProvisioningSchemeName "CloudServiceOfferingTest" `
    -MachineProfile "XDHyp:\HostingUnits\sard-ue1a\us-east-1a.availabilityzone\apollo-non-persistent-vda-win2022-2 (i-08xxxxxxxxx).vm"

VMインスタンスをフィルタリングする

マシンプロファイルVMとして使用するAWS EC2インスタンスは、マシンカタログが正しく作成され機能するために互換性がある必要があります。マシンプロファイルの入力VMとして使用できるAWS EC2インスタンスを一覧表示するには、Get-HypInventoryItemコマンドを使用できます。このコマンドは、ホスティングユニットで利用可能なVMのインベントリをページングおよびフィルタリングできます。
ページネーション:
Get-HypInventoryItem は、2つのページネーションモードをサポートしています。
  • ページングモードでは、-MaxRecords と -Skip パラメーターを使用してアイテムのセットを返します。
    • -MaxRecords: デフォルトは 1 です。これは、返すアイテムの数を制御します。
    • -Skip: デフォルトは 0 です。これは、ハイパーバイザー内のリストの絶対的な先頭(または絶対的な末尾)からスキップするアイテムの数を制御します。
  • スクロールモードでは、-MaxRecords、-ForwardDirection、および -ContinuationToken パラメーターを使用してレコードのスクロールを可能にします。
    • -ForwardDirection: デフォルトは True です。これは -MaxRecords とともに使用され、一致するレコードの次のセットまたは前のセットのいずれかを返します。
    • -ContinuationToken: これは、直後(または ForwardDirection が false の場合は直前)のアイテムを返しますが、ContinuationToken で指定されたアイテムは含まれません。
ページネーションの例:
  • 最も名前の小さいマシンテンプレートの単一レコードを返します。AdditionalData フィールドには TotalItemsCount と TotalFilteredItemsCount があります。
    Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template
  • 最も名前の小さいマシンテンプレートのレコードを10件返します。
    Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 10 | select Name
  • 最も名前の大きいレコードで終わるレコードの配列を返します。
    Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -ForwardDirection $False -MaxRecords 10 | select Name
  • 指定された ContinuationToken に関連付けられたマシンテンプレートから始まるレコードの配列を返します。
    Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -ContinuationToken "ami-07xxxxxxxxxx" -MaxRecords 10
フィルタリング:
フィルタリングには、以下の追加のオプションパラメータがサポートされています。これらのパラメータは、ページネーションオプションと組み合わせることができます。
  • -ContainsName "my_name": 指定された文字列がAMI名の一部と一致する場合、そのAMIはGet結果に含まれます。例:
    Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 100 -ContainName ‘apollo’ | select Name
  • -Tags '{ "Key0": "Value0", "Key1": "Value1", "Key2": "Value2" }': AMIがこれらのタグの少なくとも1つを持っている場合、そのAMIはGet結果に含まれます。例:
    Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 100 -Tags '{"opex owner": "Not tagged"}' | select Name
    注:
    2つのタグ値がサポートされています。タグなしタグ値は、タグのリストに指定されたタグがない項目と一致します。すべての値タグ値は、タグの値に関係なくタグを持つ項目と一致します。それ以外の場合、一致は、項目がタグを持ち、その値がフィルターで指定されたものと等しい場合にのみ発生します。
  • -Id "ami-0a2d913927e0352f3": AMIが指定されたIDと一致する場合、そのAMIはGet結果に含まれます。例:
    Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -Id ami-xxxxxxxxxxxxx
AdditionalData パラメータでのフィルタリング:
AdditionalDataフィルターパラメータは、テンプレートまたはVMを、その機能、サービス提供、またはAdditionalDataにある任意のプロパティに基づいてリストします。例:
(Get-HypInventoryItem -ResourceType "launchtemplateversion" -LiteralPath "XDHyp:\HostingUnits\aws" -MaxRecords 200).AdditionalData
互換性のないVMを示す-Warnパラメータを追加することもできます。VMには、Warningという名前のAdditionalDataフィールドが含まれます。例:
(Get-HypInventoryItem -ResourceType "launchtemplateversion" -LiteralPath "XDHyp:\HostingUnits\aws" -MaxRecords 200 -Template "ami-015xxxxxxxxx" -Warn $true).AdditionalData

詳細情報