AWSカタログを作成する

マシンカタログの作成では、マシンカタログを作成するウィザードについて説明します。以下の情報は、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 [EC2] 専用ホストは、[EC2] インスタンス容量を持つ物理サーバーであり、完全に専用であるため、既存のソケットごとまたはVMごとのソフトウェアライセンスを使用できます。

専用ホストには、インスタンスタイプに基づいて事前に設定された利用率があります。たとえば、C4 Large インスタンスタイプの単一の割り当て済み専用ホストは、16個のインスタンスの実行に制限されます。詳細については、AWS サイト を参照してください。

AWS ホストへのプロビジョニングの要件は次のとおりです。

  • インポートされた BYOL (bring your own license) イメージ (AMI)。専用ホストでは、既存のライセンスを使用および管理します。
  • プロビジョニング要求を満たすのに十分な利用率を持つ専用ホストの割り当て。
  • 自動配置を有効にする。

PowerShell を使用して AWS の専用ホストにプロビジョニングするには、New-ProvScheme コマンドレットをパラメータ TenancyTypeHost に設定して使用します。

詳細については、Citrix開発者向けドキュメント を参照してください。

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開発者向けドキュメント を参照してください。

注:

AwsCaptureInstanceProperties は非推奨です。代わりに、VMのプロパティを指定するにはマシンプロファイルを使用することをお勧めします。

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

MCSを使用してAWSマシンをプロビジョニングするためのカタログを作成する際、マシンプロファイルを使用して特定のマシンプロパティ設定をプリセットできます。

これを行うには、次の手順に従います。

  1. このカタログを作成するリソースと同じアベイラビリティゾーンにマシンプロファイルを保存します。
  2. カタログ作成ウィザードのマシンテンプレートページで、マシンプロファイルを使用を選択します。選択したリソースと同じ利用可能なゾーンにあるマシンプロファイルが表示されます。
  3. 必要に応じてマシンプロファイルを選択します。

注:

マシンプロファイルまたはAMIのいずれかを使用して、マシンプロパティをキャプチャできます。Web Studioで、マシンプロファイルを使用を選択すると、仮想マシンにマシンテンプレートプロパティを適用オプションは自動的に非表示になります。

AWS運用リソースのタグ付け

MCSを使用してAWSでマシンをプロビジョニングするためのカタログを作成する際、IAMロールとタグプロパティをそれらのマシンに適用するかどうかを制御できます。また、マシンタグを運用リソースに適用するかどうかも制御できます。

Amazon Machine Image (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は両方のネットワークインターフェースのタグを取得します。

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

マシンプロファイルを使用して、EC2インスタンス(VM)または起動テンプレートバージョンからハードウェアプロパティをキャプチャし、プロビジョニングされたマシンに適用できます。キャプチャされるプロパティには、たとえば、EBSボリュームプロパティ、インスタンスタイプ、EBS最適化、CPUオプション、テナンシータイプ、ハイバネーション機能、その他のサポートされているAWS構成が含まれます。

AWS EC2インスタンス(VM)またはAWS起動テンプレートバージョンをマシンプロファイルの入力として使用できます。

注記:

  • EBSボリュームプロパティは、マシンプロファイルのみから派生します。
  • MCSは、GP3ボリュームタイプのIDディスクを持つVMをプロビジョニングします。GP3ボリュームタイプはAWSが提供する最も安価なオプションであるため、この機能はコストを最小限に抑えます。この実装は、新しいカタログに追加されたVMと、既存のカタログに追加された新しいVMにのみ適用されます。この機能より前に作成された既存のVMは、IDディスクがリセットされない限り、GP2ボリュームタイプのIDディスクを引き続き使用します。

重要な考慮事項

MCSマシンカタログの作成時における重要な考慮事項:

  • New-ProvSchemeおよびSet-ProvSchemeコマンドでマシンハードウェアプロパティパラメータを追加すると、パラメータで指定された値がマシンプロファイル内の値を上書きします。
  • AwsCaptureInstancePropertiestrueとして設定し、MachineProfileプロパティを設定しない場合、IAMロールとタグのみがキャプチャされます。
  • AwsCaptureInstancePropertiesMachineProfileの両方を同時に設定することはできません。

    **注記:

    AwsCaptureInstancePropertiesは非推奨です。

  • マシンプロファイルが提供されていない場合、以下のプロパティの値を明示的に指定する必要があります。

    • セキュリティグループ
    • ENIまたは仮想ネットワーク
  • AwsOperationalResourcesTaggingを有効にできるのは、AwsCaptureInstancePropertiesを有効にするか、マシンプロファイルを指定した場合のみです。

MCSマシンカタログの作成後における重要な考慮事項:

  • マシンプロファイルベースのカタログを非マシンプロファイルベースのカタログに変更することはできません。

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

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

  1. PowerShellウィンドウを開きます。
  2. Citrix固有のPowerShellモジュールをロードするには、asnp citrix*を実行します。
  3. まだ作成されていない場合は、IDプールを作成します。例:

    New-AcctIdentityPool -IdentityPoolName idPool -NamingScheme ms## -Domain abcdf -NamingSchemeType Numeric
    <!--NeedCopy-->
    
  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'
    <!--NeedCopy-->
    
  5. カタログの作成を完了します。詳細については、「Citrix PowerShell SDK」を参照してください。

マシンプロファイルを更新する

マシンプロファイルで最初にプロビジョニングされたカタログのマシンプロファイルを更新するには、次の手順を実行します。MCSマシンカタログを編集する際に、マシンプロファイルソースのテナンシータイプと休止状態機能を変更することもできます。

  1. Set-ProvSchemeコマンドを実行します。例:

    Set-ProvScheme `
    -ProvisioningSchemeUid "<ID" `
    -MachineProfile "XDHyp:\HostingUnits\abc\us-east-1a.availabilityzone\citrix-cvad-machineprofile-instance (i-0xxxxxxxx).vm"
    <!--NeedCopy-->
    

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

起動テンプレートバージョンをマシンプロファイルの入力として使用して、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
    <!--NeedCopy-->
    
  4. 作成されていない場合は、IDプールを作成します。例:

    New-AcctIdentityPool `
    -IdentityPoolName "abc11" `
    -NamingScheme "abc1-##" `
    -NamingSchemeType Numeric `
    -Domain "citrix-xxxxxx.local" `
    -ZoneUid "xxxxxxxx" `
    <!--NeedCopy-->
    
  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"
    <!--NeedCopy-->
    
  6. プロビジョニングスキームをブローカーカタログとして登録します。例:

    New-BrokerCatalog -Name "MPLT1" `
    -AllocationType Random `
    -Description "Machine profile catalog" `
    -ProvisioningSchemeId fe7df345-244e-4xxxx-xxxxxxxxx `
    -ProvisioningType Mcs `
    -SessionSupport MultiSession `
    -PersistUserChanges Discard
    <!--NeedCopy-->
    
  7. カタログの作成を完了します。詳細については、Citrix PowerShell SDK を参照してください。

マシンプロファイルカタログの入力を、VMから起動テンプレートバージョンへ、または起動テンプレートバージョンからVMへ更新することもできます。例:

  • マシンプロファイルカタログの入力をVMから起動テンプレートバージョンに更新するには:

     Set-ProvScheme -ProvisioningSchemeName "CloudServiceOfferingTest" `
     -MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-0bxxxxxxxxxxxx).launchtemplate\lt-0bxxxxxxxxxxxx (1).launchtemplateversion"
     <!--NeedCopy-->
    
  • マシンプロファイルカタログの入力を起動テンプレートバージョンからVMに更新するには:

     Set-ProvScheme -ProvisioningSchemeName "CloudServiceOfferingTest" `
     -MachineProfile "XDHyp:\HostingUnits\sard-ue1a\us-east-1a.availabilityzone\apollo-non-persistent-vda-win2022-2 (i-08xxxxxxxxx).vm"
     <!--NeedCopy-->
    

OSディスクとIDディスクの暗号化

OSディスクとIDディスクの暗号化に使用できるAWS KMSキー(カスタマー管理キーおよびAWS管理キー)を使用して、永続的および非永続的なVMのカタログを作成できます。

  • AWS管理キーは毎年自動的にローテーションされます。
  • カスタマー管理キーは自動ローテーションがオプションであり、手動で管理できます。

KMSキーの詳細については、以下のAWSドキュメントを参照してください:

OSディスクとIDディスクの暗号化には、次のいずれかを構成します:

  • 暗号化されたマスターイメージを使用する(例: KMSキーで暗号化されたEBSルートボリュームを含むインスタンスまたはスナップショットから作成されたAMI)
  • 暗号化されたEBSルートボリュームを含むマシンプロファイルソース(VMまたは起動テンプレート)を使用する。

制限事項

以下の制限事項を考慮してください:

  • MCSは現在、マスターイメージAMI上のディスクを1つのみサポートしています。
  • 既存の暗号化されていないEBSボリュームまたはスナップショットを直接暗号化したり、既存の暗号化されたボリュームのKMSキーを変更したりすることはできません。これを行うには、次の手順を実行する必要があります。

    1. そのボリュームの新しいスナップショットを作成します。
    2. そのスナップショットから新しいボリュームを作成します。
    3. 新しいボリュームを暗号化します。

以下のAWSドキュメントを参照してください。

ディスク暗号化を使用してカタログを作成する

ディスク暗号化を使用してMCSマシンカタログを作成するには、次のものを使用できます。

  • マスターイメージ
  • マシンプロファイル

ディスク暗号化にマシンプロファイル入力を使用する際の考慮事項:

  • マシンプロファイル入力のKMSキーは、マスターイメージのKMSキーよりも優先されます。
  • マシンプロファイル入力が提供されない場合、マスターイメージAMIのKMSキーがカタログVMのディスクを暗号化するために使用されます。
  • マシンプロファイルにブロックデバイスマッピングが存在する場合、マスターイメージテンプレート(AMI)とマシンプロファイルに存在するブロックデバイスは一致する必要があります。たとえば、AMIに/dev/sda1で定義されたデバイスがある場合、マシンプロファイルにも/dev/sda1で定義されたデバイスが必要です。
  • マシンプロファイルソースにキーがなく、マスターイメージが暗号化されていない場合、カタログVMのディスクは暗号化されません。
  • マスターイメージが暗号化されている場合、マシンプロファイルソースVMまたは起動テンプレートには、有効な入力と見なされるために暗号化されたルートボリュームが必要です。

既存のカタログを変更する

Set-ProvSchemeを使用して既存のカタログを変更し、以下を持たせることができます。

  • 新しいKMSキーを含むボリュームを持つマシンプロファイル入力。
  • 新しいKMSキーで暗号化されたマスターイメージテンプレートAMI。

重要な考慮事項

  • カタログに追加された新しいVMのボリュームは、新しいKMSキーで暗号化されます。
  • 既存のマシンプロファイルがある場合に暗号化設定を更新するには、新しいマシンプロファイルでSet-ProvSchemeを実行します。
  • 既存のカタログを、暗号化されたボリュームから暗号化されていないボリュームに変更することはできません。 暗号化されたマスターAMIから暗号化されていないマスターAMIへのイメージ更新はできません。

VMインスタンスのNitroTPMとUEFIセキュアブートを有効にする

カタログを作成する際、NitroTPMおよび/またはUEFIセキュアブートが有効なマスターイメージ(AMI)を選択できるようになりました。これにより、カタログ内のプロビジョニングされたVMもNitroTPMおよび/またはUEFIセキュアブートが有効になります。この実装により、VMが保護され、信頼できるものになります。NitroTPMおよびUEFIセキュアブートの詳細については、Amazonドキュメントを参照してください。

制限事項

  • 現在、NitroTPMとセキュアブートは、中国を除くすべてのAWSリージョン(AWS GovCloud (US) リージョンを含む)で利用できます。
  • 既存のカタログでNitroTPMとUEFIセキュアブートを有効にすることはできません。NitroTPMとUEFIセキュアブートが有効なカタログが必要な場合は、新しいカタログを作成してください。

主な手順

  1. AWS環境をセットアップします。
  2. AWSへの接続を作成します。
  3. NitroTPMおよび/またはUEFIセキュアブートが有効なマスターイメージ(AMI)を作成する
  4. Web Studioのカタログ作成メニューで、またはPowerShellコマンドを使用してプロビジョニングスキームを作成する際に、NitroTPMおよびUEFIセキュアブートが有効なマスターイメージを選択してマシンカタログを作成します。

作成されたカタログに追加されたVMには、NitoTPMとUEFIセキュアブートが有効になっています。

NitroTPMおよびUEFIセキュアブートをサポートするAMIを作成する

  1. NitroTPMおよび/またはUEFIセキュアブートが有効になっているVMからAMIを作成できます。

    1. AWS Marketplaceイメージを使用してインスタンスを作成します。例: TPM-Windows_Server-2022-English-Full-Base on the aws-marketplaceを検索します。
    2. シングルセッションまたはマルチセッションVDAをダウンロードします。
    3. そのVMからAMIを作成します。
  2. register-imageコマンドを使用します。

    --boot-mode (string)
    --tpm-support (string)
    <!--NeedCopy-->
    

    詳細については、register-imageを参照してください。

以下のAWSドキュメントを参照してください。

Delivery Controller™ホストからPowerShellウィンドウを開き、特定の項目を確認できます。

  • サービス提供がNitroTPMまたはUEFIセキュアブートをサポートしているか

     (Get-Item -Path “XDHyp:\HostingUnits\aws\T3 Medium Instance.serviceoffering”).AdditionalData.BootMode
     (Get-Item -Path “XDHyp:\HostingUnits\aws\T3 Medium Instance.serviceoffering”).AdditionalData.NitroTpmSupportVersions
     <!--NeedCopy-->
    
  • テンプレートがNitroTPMまたはUEFIセキュアブートをサポートしているか

     (Get-HypInventoryItem -LiteralPath “XDHyp:\HostingUnits\aws” -ResourceType “template -Id “ID”).AdditionalData.BootMode
    
     (Get-HypInventoryItem -LiteralPath “XDHyp:\HostingUnits\aws” -ResourceType “template -Id “ID”).AdditionalData.TpmSupport
     <!--NeedCopy-->
    

既存のカタログのサービス提供を更新する

Set-ProvSchemeを使用して、既存のカタログのサービス提供を変更できます。この変更は、新しく追加されたVMに適用されます。ただし、以下のシナリオではエラーが発生します。

AMIの起動モード AMIはNitro TPMをサポートしていますか? サービス提供はNitroTPMとUEFIセキュアブートをサポートしていますか?
ユーイーエフアイ いいえ いいえ
レガシーBIOS はい いいえ
ユーイーエフアイ はい いいえ
ユーイーエフアイ優先 はい いいえ

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: ContinuationTokenで指定された項目の直後(またはForwardDirectionfalseの場合は直前)の項目を返しますが、その項目自体は含みません。

ページネーションの例:

  • 最も名前の小さいマシンテンプレートの単一レコードを返すには。AdditionalDataフィールドにはTotalItemsCountTotalFilteredItemsCountがあります:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template
     <!--NeedCopy-->
    
  • 最も名前の小さいマシンテンプレートのレコードを10件返すには:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 10 | select Name
     <!--NeedCopy-->
    
  • 最も名前の大きいレコードで終わるレコードの配列を返すには:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -ForwardDirection $False -MaxRecords 10 | select Name
     <!--NeedCopy-->
    
  • 指定されたContinuationTokenに関連付けられたマシンテンプレートから始まるレコードの配列を返すには:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -ContinuationToken "ami-07xxxxxxxxxx" -MaxRecords 10
     <!--NeedCopy-->
    

フィルタリング:

フィルタリングには、以下の追加のオプションパラメータがサポートされています。これらのパラメータは、ページネーションオプションと組み合わせることができます。

  • -ContainsName "my_name": 指定された文字列がAMI名の一部と一致する場合、そのAMIはGet結果に含まれます。例:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 100 -ContainName ‘apollo’ | select Name
     <!--NeedCopy-->
    
  • -Tags '{ "Key0": "Value0", "Key1": "Value1", "Key2": "Value2" }': AMIにこれらのタグの少なくとも1つがある場合、それはGet結果に含まれます。例:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -MaxRecords 100 -Tags '{"opex owner": "Not tagged"}' | select Name
     <!--NeedCopy-->
    

    注:

    2つのタグ値がサポートされています。タグなしタグ値は、指定されたタグがタグのリストにない項目と一致します。すべての値タグ値は、タグの値に関係なくタグを持つ項目と一致します。それ以外の場合、一致は、項目がタグを持ち、その値がフィルターで指定されたものと等しい場合にのみ発生します。

  • -Id "ami-0a2d913927e0352f3": AMIが指定されたIDと一致する場合、それはGet結果に含まれます。例:

     Get-HypInventoryItem -LiteralPath "XDHyp:\HostingUnits\ctx-test" -ResourceType template -Id ami-xxxxxxxxxxxxx
     <!--NeedCopy-->
    

AdditionalDataパラメータでのフィルタリング:

AdditionalDataフィルターパラメータは、テンプレートまたはVMを、その機能、サービス提供、またはAdditionalDataにある任意のプロパティに基づいてリストします。例:

(Get-HypInventoryItem -ResourceType "launchtemplateversion" -LiteralPath "XDHyp:\HostingUnits\aws" -MaxRecords 200).AdditionalData
<!--NeedCopy-->

互換性のないVMを示す-Warnパラメーターを追加することもできます。VMは、Warningという名前のAdditionalDataフィールドとともに含まれます。例:

(Get-HypInventoryItem -ResourceType "launchtemplateversion" -LiteralPath "XDHyp:\HostingUnits\aws" -MaxRecords 200 -Template "ami-015xxxxxxxxx" -Warn $true).AdditionalData
<!--NeedCopy-->

次のステップ

詳細情報