AWS EC2 カタログの作成
マシンカタログの作成では、マシンカタログを作成するウィザードについて説明しています。以下の情報は、AWS EC2 仮想化環境に固有の詳細を扱っています。
注:
AWS カタログを作成する前に、AWS への接続を完了する必要があります。AWS EC2 への接続を参照してください。
イメージ準備中のネットワーク設定
-
イメージ準備中に、元の VM に基づいて準備用仮想マシン (VM) が作成されます。この準備用 VM はネットワークから切断されます。準備用 VM からネットワークを切断するために、すべてのインバウンドおよびアウトバウンドトラフィックを拒否するネットワークセキュリティグループが作成されます。このネットワークセキュリティグループは永続的に存在し、再利用されます。ネットワークセキュリティグループの名前は
Citrix.XenDesktop.IsolationGroup-GUIDで、GUID はランダムに生成されます。 -
AWS テナンシー
-
AWS は以下のテナンシーオプションを提供します。
- 共有テナンシー(デフォルトタイプ)と専用テナンシー。共有テナンシーとは、異なる顧客の複数の Amazon EC2 インスタンスが同じ物理ハードウェア上に存在する可能性があることを意味します。
-
専用テナンシーとは、EC2 インスタンスが、展開した他のインスタンスと同じハードウェア上でのみ実行されることを意味します。他の顧客は同じハードウェアを使用しません。
-
AWS ホストへのプロビジョニング要件
- インポートされた BYOL (bring your own license) イメージ (AMI)。専用ホストでは、既存のライセンスを使用および管理します。
- プロビジョニング要求を満たすのに十分な利用率を持つ専用ホストの割り当て。
- 自動配置の有効化。
AWS テナンシー設定オプション
- 共有ハードウェアの使用。この設定は、ほとんどの展開に適しています。複数の顧客が互いにやり取りすることなくハードウェアを共有します。共有ハードウェアを使用することは、Amazon EC2 インスタンスを実行するための最も安価なオプションです。
-
専用ホストの使用。Amazon EC2 専用ホストは、EC2 インスタンスの容量が完全に専用化された物理サーバーであり、既存のソケットごとまたは VM ごとのソフトウェアライセンスを使用できます。専用ホストには、インスタンスタイプに基づいて事前に設定された利用率があります。たとえば、C4 Large インスタンスタイプの単一の割り当て済み専用ホストは、16 インスタンスの実行に制限されます。詳細については、AWS サイトを参照してください。
-
この設定は、ライセンス制限またはセキュリティ要件があり、専用ホストの使用が必要な展開に適しています。専用ホストを使用すると、物理ホスト全体を所有し、時間単位で課金されます。このホストを所有することで、追加料金なしで、そのホストが許可する数の EC2 インスタンスを起動できます。
-
専用インスタンスの使用。この設定は、特定のセキュリティまたはコンプライアンス要件がある展開により適しています。専用インスタンスを使用すると、他の AWS 顧客とは別のホストを持つという利点を享受できますが、ホスト全体に対して料金を支払う必要はありません。ホストの容量について心配する必要はありませんが、インスタンスに対してはより高い料金が課金されます。
-
注:
-
-
カタログ作成またはイメージ更新タスクが進行中でない場合、利用可能な準備用 ID ディスクを削除できます。
Studio を使用して AWS テナンシーを構成するには、「Web Studio を使用したカタログの作成」を、PowerShell を使用するには、「PowerShell を使用した AWS 専用ホストテナンシーの構成」を参照してください。
-
AWS オペレーションリソースのタグ付け
Amazon Machine Image (AMI) は、Amazon Cloud 環境内で仮想マシンを作成するために使用される仮想アプライアンスの一種であり、一般に EC2 と呼ばれます。AMI を使用して、EC2 環境を使用するサービスを展開します。MCS を使用して AWS 用のマシンをプロビジョニングするカタログを作成するときに、そのカタログのゴールデンイメージとして機能する AMI を選択します。
重要:
オペレーションリソースのタグ付けを使用するには、マシンプロファイルと起動テンプレートの両方を使用してカタログを作成する必要があります。
AWS カタログを作成するには、まずゴールデンイメージとするインスタンスの AMI を作成する必要があります。MCS はそのインスタンスからタグを読み取り、起動テンプレートに組み込みます。起動テンプレートのタグは、AWS 環境で作成されたすべての Citrix® リソースに適用されます。これには以下が含まれます。
- 仮想マシン
- VM ディスク
- VM ネットワークインターフェイス
- S3 バケット
- S3 オブジェクト
- 起動テンプレート
- AMI
カタログの作成中に、Studio および PowerShell を使用してオペレーションリソースにタグを付けることができます。Studio の場合は、「Web Studio を使用したカタログの作成」( [イメージ] ページ) を参照してください。PowerShell の場合は、「PowerShell を使用したオペレーションリソースのタグ付け」を参照してください。
カタログの作成
以下の方法でカタログを作成できます。
Web Studio を使用したカタログの作成
- 左側のナビゲーションペインで [マシンカタログ] をクリックします。
- [マシンカタログの作成] をクリックします。[マシンカタログのセットアップ] ページが表示されます。
-
- [マシンの種類] ページで、カタログのマシンの種類(例:マルチセッション OS)を選択します。
-
- [マシン管理] ページで、以下の設定を選択します。
-
- 電源管理されているマシン(仮想マシンやブレード PC など)を選択します。
-
- [Citrix プロビジョニングテクノロジー] を選択します。次に、[Citrix Machine Creation Services™] を選択します。 1. [リソース] フィールドで、ホスト接続の作成時に構成したリソース(アベイラビリティゾーンまたはローカルゾーン)を選択し、[次へ] をクリックします。
- [デスクトップエクスペリエンス] ページで、ユーザーがログインしたときに使用するランダムまたは静的デスクトップを選択します。
-
[イメージ] ページで、以下を行います。
- カタログ内のすべてのマシンのマスターイメージとして使用するマシンテンプレートを選択します。
- カタログ内の VM がマシンプロファイルから構成を継承するようにする場合は、マシンプロファイルを選択します。デフォルトでは、[マシンプロファイルを使用] チェックボックスが選択されています。マシンプロファイルのソースを別の VM または起動テンプレートバージョンに変更するには、編集ボタンをクリックします。
- [マシンタグをオペレーションリソースに適用] チェックボックスを選択して、マシンタグをオペレーションリソースに適用します。このオプションは、マシンのプロビジョニングを容易にするために AWS 環境で作成されたすべての項目にマシンタグを適用するかどうかを制御します。オペレーションリソースは、カタログ作成の副産物として作成されます。これには、準備用 VM インスタンスや AMI などの一時的および永続的なリソースの両方が含まれます。
注:
[セキュリティ] ページは、マシンプロファイルを割り当てずにマシンカタログを作成する場合にのみ表示されます。
-
[仮想マシン] ページで、以下を行います。
- カタログの VM 数を入力します。
- デフォルトのマシン仕様が表示されます。これはマシンプロファイルに基づいています。変更するには、編集アイコンを選択し、マシン仕様を選択します。
- AWS テナンシーを構成します。「AWS テナンシー設定オプション」を参照してください。
- プライマリマシンサイズが最大容量に達した場合に、セカンダリ VM を構成することもできます。[セカンダリサイズ] (オプション) をクリックします。[セカンダリマシンサイズ] ウィンドウには、スポット VM タイプと通常 VM タイプの両方を持つ VM が表示されます。最大 10 個のセカンダリマシンサイズを選択できます。10 個の VM が選択されると、リストされている他の VM はそれ以上選択できなくなります。[次へ] をクリックします。[セカンダリマシンサイズ] ブレードで、複数のマシンサイズを選択し、ドラッグアンドドロップして優先順位を変更できます。[完了] をクリックします。選択したマシンサイズは、[セカンダリサイズ] (オプション) に表示されます。必要に応じて編集アイコンをクリックして編集します。
-
マシンプロファイルを割り当てずにマシンカタログを作成している場合にのみ、セキュリティページが表示されます。VMのセキュリティグループを構成するには、セキュリティページを使用します。これは、既存のマシンカタログを編集およびクローン作成する際にも適用されます。
マシンプロファイルベースのマシンカタログを作成すると、セキュリティグループ構成はマシンプロファイルから継承され、セキュリティページは表示されません。
-
- NICページで、VM用のNIC (または ENI) を選択します。
-
- ディスク設定ページで、ライトバックキャッシュを有効にするかどうかを選択します。
-
-
- マシンIDページで、ドメインを選択し、このマシンカタログで作成されるVM用の新しいADアカウントを作成することで、カタログ内のマシンに対してオンプレミスのActive DirectoryまたはMicrosoft Entraハイブリッド参加を構成します。プロビジョニングされたVMは、選択されたドメインに参加します。VM用に作成される新しいADアカウントのアカウント命名スキームを指定します。[次へ] をクリックします。
- ドメイン資格情報ページで、[資格情報の入力] をクリックして、選択したドメインの資格情報を提供します。プロンプトが表示されたら、管理者レベルのユーザー名とパスワードを入力します。製品ドキュメントに従ってドメイン資格情報を以前に保存している場合は、サービスアカウントを使用することもできます。
- 残りのページを順に進み、概要ページまで進みます。マシンカタログの名前を入力し、[完了] を選択してマシンカタログを作成します。
AWSローカルゾーンでのマシンカタログ作成に関する制限事項
- 特定のローカルゾーンは特定のハードウェア構成のみをサポートします (例: パースローカルゾーンはGP3ボリュームをサポートせず、GP2のみをサポートします)。
- すべてのローカルゾーンでgp2のみが普遍的にサポートされており、すべてがgp3をサポートしているわけではないため、IDディスクの作成はデフォルトでgp2ボリュームタイプを使用します。
- 目的のローカルゾーンでサポートされているハードウェア仕様を持つマシンプロファイルを選択する必要があります。
- 準備されたイメージAMIスナップショットとIDディスクスナップショットは、デフォルトでローカルゾーンではなくリージョンに配置されます (ローカルゾーンでのEBSスナップショットサポートに関する可視性に関するAWSの制限のため)。
-
完全なEC2およびEBSサービスをサポートするローカルゾーンのみがサポートされるゾーンです。
-
PowerShellを使用したカタログの作成
PowerShellを使用したAWS専用ホストテナンシーの構成
または、PowerShellを介してAWS専用ホストをプロビジョニングできます。New-ProvScheme コマンドレットを使用し、パラメーター TenancyType を Host に設定します。
PowerShellを使用した運用リソースのタグ付け
PowerShellを使用してリソースにタグを付けるには:
- DDCホストからPowerShellウィンドウを開きます。
-
asnp citrixコマンドを実行して、Citrix固有のPowerShellモジュールをロードします。
プロビジョニングされたVMのリソースにタグを付けるには、カスタムプロパティ AwsOperationalResourcesTagging を使用します。例:
- New-ProvScheme -ProvisioningSchemeName test
-CustomProperties “AwsOperationalResourcesTagging,true”
-MachineProfile "XDHyp:\HostingUnits\xxxx-ue1a\machineprofiletest (lt-01xxxxx).launchtemplate\lt-01xxxxx (1).launchtemplateversion"
... <Other <standard provscheme parameters>
<!--NeedCopy-->
MCSIOが有効なカタログ
MCSストレージ最適化 (MCSIO) は、ディスク操作をメモリまたは小型の高速ディスクにキャッシュすることで、VMのパフォーマンスを向上させます。PowerShellコマンドを使用して、MCSIOが有効な非永続カタログを作成できます。そのようなカタログを作成するには、AMIインスタンスの準備中にVDAのインストールまたはアップグレード中にMCSIOドライバーをインストールする必要があります。デフォルトでは、そのドライバーはインストールされていません。
MCSIO AMIが準備された後 (VDAをインストールする際に、MCSIOドライバーをインストールに含めるオプションを選択します)、MCSIOが有効な非永続カタログを作成できます。
注:
Studioを使用してディスクキャッシュのみ (メモリキャッシュなし) でMCSIOを構成するオプションは、すべてのハイパーバイザーおよびクラウドサービス環境で削除されました。
MCSIOが有効なカタログの作成
- New-ProvScheme PowerShellコマンドに追加された4つのパラメーターは次のとおりです。
-
UseWriteBackCache: 指定されたプロビジョニングスキームのキャッシュ (ライトバックキャッシュ) を有効にします -
WriteBackCacheDiskSize: キャッシュに使用される一時ディスクのGB単位のサイズを指定します -
WriteBackCacheMemorySize: キャッシュに使用するメモリ量をMB単位で指定します。これはオプションのパラメーターです。
注:
WriteBackCacheDiskSizeの値はゼロより大きい必要があります。少なくとも1 GBのキャッシュディスクストレージが必要なためです。キャッシュディスクサイズはOSディスクサイズより大きくしてはいけません。WriteBackCacheMemorySizeの値はゼロ以外である必要があり、マシンカタログのメモリサイズより小さい必要があります。
-
MCSIOに影響するカスタムプロパティは次のとおりです。
-
WBCDiskStorageType: AWSの一時ディスクに使用されるボリュームタイプを定義します。このパラメーターは、volume-type[:iops][:throughput]の形式で文字列引数を取ります。ボリュームタイプは次のとおりです。- gp2: このボリュームタイプではiopsおよびスループットパラメーターを使用しないでください
- gp3: このボリュームタイプではiopsおよびスループットパラメーターを使用してください
- io1: このボリュームタイプではiopsパラメーターのみを使用してください
- io2: このボリュームタイプではiopsパラメーターのみを使用してください
デフォルトのボリュームタイプは gp2 です。
-
PersistWBC: AWSインスタンスの電源がオフになるたびに、キャッシュディスクを保持するか破棄するかを制御します。trueに設定すると、キャッシュディスクは保持されます。false(デフォルト) に設定すると、キャッシュディスクはAMIインスタンスの電源がオンになっている間のみ作成および保持されます。 -
PersistOSDisk: AWSインスタンスの電源がオフになるたびに、OSディスクを保持するか破棄するかを制御します。trueに設定すると、OSディスクは保持されます。false(デフォルト) に設定すると、OSディスクはAMIインスタンスの電源がオンになっている間のみ作成および保持されます。
MCSIOが有効な非永続カタログを作成するには、PowerShellウィンドウで次の手順を実行します。
- PowerShellウィンドウを開きます。
-
asnp citrix*を実行して、Citrix固有のPowerShellモジュールをロードします。 - ブローカーカタログとIDプールを作成します。
-
プロビジョニングスキームを作成します。例:
$HostingUnitUid = '0xxxx1d9-bbfc-xxxf-bxxb-exxxxxe008b2' $MasterImageVM = 'XDHyp:\HostingUnits\ctx-test\aws-apollo-non-persistent-multi-mcsio-vda-win2022 (ami-0bf1810488acbxxxb).template' $NetworkMap = @{ 'NetworkPath' = 'XDHyp:\HostingUnits\ctx-test\us-east-1a.availabilityzone\10.0.128.0`/17 (vpc-0fa6e41d72507fxxx).network' } $SecurityGroup = $( 'XDHyp:\HostingUnits\ctx-test\us-east-1a.availabilityzone\private.securitygroup' ) $ServiceOffering = 'XDHyp:\HostingUnits\ctx-test\T3 Medium Instance.serviceoffering' $CustomProperties = 'WBCDiskStorageType,gp3:6000:250;PersistWBC,false' $provScheme = New-ProvScheme -ProvisioningSchemeName $CatalogName -HostingUnitUid $HostingUnitUid ` -IdentityPoolUid $acctPool.IdentityPoolUid -CleanOnBoot ` - MasterImageVM $MasterImageVM ` -NetworkMap $NetworkMap ` -ServiceOffering $ServiceOffering ` -SecurityGroup $SecurityGroup ` -CustomProperties $CustomProperties ` -UseWriteBackCache -WriteBackCacheDiskSize 16 -WriteBackCacheMemorySize 256 <!--NeedCopy--> - カタログにVMを追加します。
-
MCSIOによる起動パフォーマンスの向上
- MCSIOを有効にし、
PersistWBCおよびPersistOSDiskカスタムプロパティをtrueに設定すると、VMの起動パフォーマンスを向上させることができます。このような設定により、VMは新しいキャッシュディスクを初期化したり、テンプレートからルートディスクを再作成したりする必要がないため、より速く起動できます。
PowerShellを使用したマシンプロファイルベースのマシンカタログの作成
マシンプロファイルを使用して、EC2インスタンス (VM) または起動テンプレートバージョンからハードウェアプロパティをキャプチャし、それらをプロビジョニングされたマシンに適用できます。キャプチャされるプロパティには、例えば、EBSボリュームプロパティ、インスタンスタイプ、EBS最適化、CPUオプション、テナンシータイプ、休止状態機能、セキュリティグループ、およびその他のサポートされているAWS構成が含まれます。
AWS EC2インスタンス (VM) またはAWS起動テンプレートバージョンをマシンプロファイルの入力として使用できます。
注:
EBS ボリュームのプロパティは、マシンプロファイルからのみ派生します。
重要な考慮事項
MCS マシンカタログの作成における重要な考慮事項は次のとおりです。
-
New-ProvSchemeおよびSet-ProvSchemeコマンドでマシンハードウェアプロパティパラメータを追加すると、パラメータで指定された値がマシンプロファイル内の値を上書きします。 -
AwsCaptureInstancePropertiesをtrueに設定し、MachineProfileプロパティを設定しない場合、IAM ロールとタグのみがキャプチャされます。 -
AwsCaptureInstancePropertiesとMachineProfileの両方を同時に設定することはできません。注:
AwsCaptureInstancePropertiesは非推奨です。 -
マシンプロファイルが指定されていない場合、次のプロパティの値を明示的に指定する必要があります。
- セキュリティグループ
- ENI または仮想ネットワーク
-
AwsOperationalResourcesTaggingは、AwsCaptureInstancePropertiesを有効にするか、マシンプロファイルを指定した場合にのみ有効にできます。
MCS マシンカタログ作成後の重要な考慮事項は次のとおりです。
- マシンプロファイルベースのカタログを、非マシンプロファイルベースのカタログに変更することはできません。
マシンプロファイル入力でのセキュリティグループの構成
プロビジョニングされた VM に ENI (ネットワークインターフェース) ごとにセキュリティグループが割り当てられる MCS マシンカタログを作成できます。これを行うには、異なるセキュリティグループが個別の ENI にマッピングされているマシンプロファイル入力 (EC2 インスタンスまたは起動テンプレート) を使用します。たとえば、マシンプロファイル入力に SG 1 を持つ ENI A と SG 2 を持つ ENI B がある場合、プロビジョニングされた VM も SG 1 を持つ ENI A と SG 2 を持つ ENI B を持つ必要があります。
ネットワークインターフェースの詳細の取得
インターフェースの SubnetId、割り当てられたセキュリティグループ、および割り当てられたネットワークを含むネットワークインターフェースデータレコードのリストを取得するには、次のコマンドを実行します。
(Get-HypInventoryItem -LiteralPath 'XdHyp:\HostingUnits\cvad-test' – ResourceType vm). AdditionalData
<!--NeedCopy-->
注:
MCS は現在、ネットワークインターフェースごとに複数のネットワークを許可していません。
マシンプロファイルを使用したマシンカタログの作成
マシンプロファイルを使用してマシンカタログを作成するには:
-
- PowerShell ウィンドウを開きます。
-
-
asnp citrix*を実行して、Citrix 固有の PowerShell モジュールをロードします。
-
-
まだ作成されていない場合は、ID プールを作成します。例:
New-AcctIdentityPool -IdentityPoolName idPool -NamingScheme ms## -Domain abcdf -NamingSchemeType Numeric <!--NeedCopy--> -
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’
```
- カタログの作成を完了します。
-
マシンプロファイルの更新
-
マシンプロファイルで最初にプロビジョニングされたカタログのマシンプロファイルを更新するには、次の手順を実行します。MCS マシンカタログの編集中に、マシンプロファイルソースのテナンシータイプとハイバネーション機能を変更することもできます。
-
-
Set-ProvSchemeコマンドを実行します。例:
``` Set-ProvScheme `
-ProvisioningSchemeUid “<ID” `
-
-
-MachineProfile “XDHyp:\HostingUnits\abc\us-east-1a.availabilityzone\citrix-cvad-machineprofile-instance (i-0xxxxxxxx).vm”
```
-
PowerShell を使用した起動テンプレートバージョンでのカタログの作成
- 起動テンプレートバージョンをマシンプロファイル入力として使用して、MCS マシンカタログを作成できます。また、マシンプロファイルカタログの入力を VM から起動テンプレートバージョンへ、または起動テンプレートバージョンから VM へと更新することもできます。
AWS EC2 コンソールでは、起動テンプレートのインスタンス構成情報をバージョン番号とともに提供できます。マシンカタログの作成または更新時に起動テンプレートバージョンをマシンプロファイル入力として指定すると、そのバージョンの起動テンプレートのプロパティがプロビジョニングされた VDA VM にコピーされます。
次のプロパティは、マシンプロファイル入力として、または New-ProvScheme または Set-ProvScheme コマンドのパラメータとして明示的に指定できます。これらのプロパティが New-ProvScheme または Set-ProvScheme コマンドで指定されている場合、それらはこれらのプロパティのマシンプロファイル値よりも優先されます。
- サービスオファリング
- ネットワーク
- テナンシータイプ
注:
サービスオファリングがマシンプロファイルの起動テンプレートで提供されていない場合、または
New-ProvSchemeコマンドのパラメータとして提供されていない場合、適切なエラーが発生します。
マシンプロファイル入力として起動テンプレートバージョンを使用してカタログを作成するには:
- PowerShell ウィンドウを開きます。
-
asnp citrix*を実行して、Citrix 固有の PowerShell モジュールをロードします。 -
起動テンプレートの起動テンプレートバージョンの一覧を取得します。例:
XDHyp:\HostingUnits\test\test-mp-sard (lt-01xxxxx).launchtemplate> ls | Select FullPath <!--NeedCopy--> -
作成されていない場合は、ID プールを作成します。例:
``` New-AcctIdentityPool `
-
-IdentityPoolName “abc11” `
-NamingScheme “abc1-##” ` -NamingSchemeType Numeric ` -Domain “citrix-xxxxxx.local” ` -ZoneUid “xxxxxxxx” `
```
-
マシンプロファイル入力として起動テンプレートバージョンを使用してプロビジョニングスキームを作成します。例:
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--> -
プロビジョニングスキームをブローカーカタログとして登録します。例:
New-BrokerCatalog -Name "MPLT1" ` -AllocationType Random ` -Description "Machine profile catalog" ` -ProvisioningSchemeId fe7df345-244e-4xxxx-xxxxxxxxx ` -ProvisioningType Mcs ` -SessionSupport MultiSession ` - -PersistUserChanges Discard <!--NeedCopy-->-
- カタログの作成を完了します。
-
マシンプロファイルソースの更新
-
マシンプロファイルカタログの入力を、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”
```
OS、ID、および WBC ディスクの暗号化
-
OS ディスク、ID (Identity Disk)、および書き戻しキャッシュディスク (WBC) の暗号化に使用できる AWS KMS キー (カスタマー管理キーおよび AWS 管理キー) を使用して、永続的および非永続的な VM カタログを作成できます。
- AWS 管理キーは毎年自動的にローテーションされます。
- カスタマー管理キーは自動ローテーションがオプションであり、手動で管理できます。
KMS キーの詳細については、以下の AWS ドキュメントを参照してください。
OS、ID、および WBC ディスクの暗号化には、次のいずれかを構成します。
- 暗号化されたマスターイメージを使用します(例:KMS キーで暗号化された EBS ルートボリュームを含むインスタンスまたはスナップショットから作成された AMI)。
- 暗号化された EBS ルートボリュームを含むマシンプロファイルソース(VM または起動テンプレート)を使用します。
制限事項
以下の制限事項を考慮してください。
- MCS は現在、マスターイメージ AMI 上のディスクを 1 つのみサポートしています。
-
既存の暗号化されていない EBS ボリュームまたはスナップショットを直接暗号化したり、既存の暗号化されたボリュームの KMS キーを変更したりすることはできません。これを行うには、次の手順を実行する必要があります。
- そのボリュームの新しいスナップショットを作成します。
- そのスナップショットから新しいボリュームを作成します。
- 新しいボリュームを暗号化します。
以下の AWS ドキュメントを参照してください。
- 暗号化されていないリソースの暗号化
-
EBS ボリュームの自動またはデフォルト暗号化の制限事項:既存および新規の Amazon EBS ボリュームを自動的に暗号化する。
-
ディスク暗号化を使用したカタログの作成
-
ディスク暗号化を使用した MCS マシンカタログは、以下を使用して作成できます。
- マスターイメージ
- マシンプロファイル
マシンプロファイル入力を使用する際の考慮事項は次のとおりです。
- マシンプロファイル入力のKMSキーは、マスターイメージのKMSキーよりも優先されます。
- マシンプロファイル入力が提供されていない場合、マスターイメージAMIのKMSキーがカタログVMのディスクの暗号化に使用されます。
- マシンプロファイルにブロックデバイスマッピングが存在する場合、マスターイメージテンプレート(AMI)とマシンプロファイルに存在するブロックデバイスは一致している必要があります。たとえば、AMIに
/dev/sda1で定義されたデバイスがある場合、マシンプロファイルにも/dev/sda1で定義されたデバイスが必要です。 - マシンプロファイルソースにキーがなく、マスターイメージが暗号化されていない場合、カタログVMのディスクは暗号化されません。
- マスターイメージが暗号化されている場合、有効な入力と見なされるには、マシンプロファイルソースVMまたは起動テンプレートに暗号化されたルートボリュームが必要です。
既存のカタログの変更
Set-ProvScheme PowerShellコマンドを使用して、既存のカタログを次のように変更できます。
- 新しい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セキュアブートが有効なカタログが必要な場合は、新しいカタログを作成してください。
主要な手順
-
- AWS環境をセットアップします。
-
- AWSへの接続を作成します。
- NitroTPMおよび/またはUEFIセキュアブートが有効なマスターイメージ(AMI)を作成します。
- Web Studioのカタログ作成メニューでNitroTPMおよびUEFIセキュアブートが有効なマスターイメージを選択するか、PowerShellコマンドを使用してプロビジョニングスキームを作成する際に、マシンカタログを作成します。
作成されたカタログに追加されたVMは、NitroTPMおよびUEFIセキュアブートが有効になります。
NitroTPMおよびUEFIセキュアブートをサポートするAMIの作成
-
NitroTPMおよび/またはUEFIセキュアブートが有効なVMからAMIを作成できます。
- AWS Marketplaceイメージを使用してインスタンスを作成します。例として、
aws-marketplaceでTPM-Windows_Server-2022-English-Full-Baseを検索します。 - シングルまたはマルチセッションVDAをダウンロードします。
- そのVMからAMIを作成します。
- AWS Marketplaceイメージを使用してインスタンスを作成します。例として、
-
register-imageコマンドを使用します。
```
-
--boot-mode(string) –tpm-support (string)```
-
詳細については、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に適用されます。ただし、次のシナリオではエラーが発生します。
| AMIs boot mode | AMI supports Nitro TPM? | Service offering supports NitroTPM and UEFI secure boot? |
|---|---|---|
| UEFI | No | No |
| Legacy BIOS | Yes | No |
| UEFI | Yes | No |
| UEFI Preferred | Yes | No |
VM上のタグのコピー
マシンプロファイルで指定されたNICおよびディスク(IDディスク、ライトバックキャッシュディスク、OSディスク)上のタグを、MCSマシンカタログで新しく作成されたVMにコピーできます。これらのタグは、マシンプロファイルソース(AWS VMインスタンスまたはAWS起動テンプレートバージョン)のいずれかで指定できます。この機能は、永続的および非永続的なマシンカタログとVMに適用されます。
注:
- AWS EC2コンソールでは、Launch Template Version Resource Tagsの下にTag Network Interfacesの値は表示されません。ただし、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は両方のネットワークインターフェースのタグを取得します。
PowerShellを使用したVMインスタンスのフィルタリング
マシンプロファイルVMとして使用するAWS VMインスタンスは、マシンカタログが正しく作成され機能するために互換性がある必要があります。マシンプロファイルの入力VMとして使用できるAWS VMインスタンスを一覧表示するには、Get-HypInventoryItemコマンドを使用します。このコマンドは、ホスティングユニットで利用可能なVMのインベントリをページングおよびフィルタリングできます。
ページネーション
Get-HypInventoryItemは、2つのページネーションモードをサポートします。
- ページングモードでは、
-MaxRecordsおよび-Skipパラメーターを使用してアイテムのセットを返します。-
-MaxRecords: デフォルトは1です。これは、返されるアイテムの数を制御します。 -
-Skip: デフォルトは0です。これは、ハイパーバイザー内のリストの絶対的な先頭(または絶対的な末尾)からスキップするアイテムの数を制御します。
-
- スクロールモードでは、
-MaxRecords、-ForwardDirection、および-ContinuationTokenパラメーターを使用してレコードのスクロールを可能にします。-
-ForwardDirection: デフォルトはTrueです。これは、-MaxRecordsと組み合わせて使用され、一致するレコードの次のセットまたは前のセットのいずれかを返します。 -
-ContinuationToken:ContinuationTokenで指定されたアイテムを含まずに、その直後(またはForwardDirectionがfalseの場合は直前)のアイテムを返します。
-
ページネーションの例:
-
最も名前の小さいマシンテンプレートの単一レコードを返します。
AdditionalDataフィールドには、TotalItemsCountとTotalFilteredItemsCountが含まれます。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つを持っている場合、そのAMIは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と一致する場合、そのAMIは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-->
VMのバックアップSKUリスト
パブリッククラウドでは、特定のEC2インスタンスタイプ(「プライマリーSKU」)の容量が不足する場合があります。プライマリーVM構成が利用できない場合、VMは起動できず、時間の損失やビジネスの中断につながります。このようなシナリオに対処するため、容量関連の問題が発生した場合にMCSがフォールバックできるバックアップEC2インスタンスタイプ(「バックアップSKU」)のリストを提供します。
MCSマシンカタログの作成または更新時に、カスタムプロパティBackupVmConfigurationを使用して、バックアップEC2インスタンスタイプ(「バックアップSKUリスト」)のリストを提供します。
プライマリーEC2インスタンスが失敗した場合、MCSは指定された順序でバックアップEC2インスタンスタイプへのフォールバックを試行します。提供されたバックアップEC2インスタンスタイプのいずれにもMCSがフォールバックできない場合、エラーメッセージが表示されます。その後、プライマリーEC2インスタンスの電源を再度オンにしてみてください。これが失敗した場合、MCSはバックアップEC2インスタンスタイプを再試行します。
バックアップSKUリストには、オンデマンドインスタンスを含めることができます。
この機能は、永続的および非永続的な両方のMCSマシンカタログに適用できます。
重要な考慮事項
- バックアップSKUリストには、複数のバックアップEC2インスタンスタイプを指定できます。
- バックアップSKUリストは一意である必要があります。
- バックアップEC2インスタンスは、プライマリEC2インスタンスと同じにすることはできません。
- バックアップEC2インスタンスは、有効なAWSインスタンスタイプである必要があります。
- 重複するサービスオファリングを指定しないでください。例:
BackupVmConfiguration,t2.small|t3.small|t2.smallは無効です。 - リストで指定されたサービスオファリングは、マシンカタログ構成と互換性がある必要があります。たとえば、カタログがUEFIを使用しており、バックアップリストで指定されたサービスオファリングがそれをサポートしていない場合、カタログの作成または更新は事前チェック中に失敗します。
- 既存のカタログのバックアップSKUリストは、
Set-ProvSchemePowerShellコマンドを使用して変更できます。既存のVMは、Set-ProvVMおよびSet-ProvVMUpdateTimeWindowPowerShellコマンドを使用して変更できます。
バックアップEC2インスタンスの構成
- PowerShellウィンドウを開きます。
-
asnp citrix\*を実行して、Citrix固有のPowerShellモジュールをロードします。 - Brokerカタログを作成します。
- IDプールを作成します。
-
カスタムプロパティ
BackupVmConfigurationを使用してバックアップEC2インスタンスリストを追加し、プロビジョニングスキームを作成します。例:$serviceOffering = "XDHyp:\HostingUnits\$hostingUnitName\T3 Medium Instance.serviceoffering" $customProperties = "AwsCaptureInstanceProperties,false;AwsOperationalResourcesTagging,false;BackupVmConfiguration,t2.small|t2.large|t3.small|t3.large;" $createdProvScheme = New-ProvScheme -ProvisioningSchemeName $provisioningSchemeName -HostingUnitName $hostingUnitName -IdentityPoolName $provisioningSchemeName -NetworkMapping $networkMapping -SecurityGroup $securityGroupPath -ServiceOffering $serviceOffering -MasterImageVM $masterImageVm -CustomProperties $customProperties <!--NeedCopy--> - プロビジョニングスキームの一意のIDでBrokerCatalogを更新します。
- VMを作成し、カタログに追加します。
AWS Spotインスタンスを使用したカタログの作成
オンデマンドインスタンスと比較して、Spotインスタンスは最大90%のコスト削減を提供します。Spotインスタンスは、容量が利用できなくなった場合にAmazon EC2によって中断される可能性があり、そのため、重要度の低いアプリケーションやデスクトップにのみ適しています。
Spotインスタンスの詳細については、AWSドキュメントのSpotインスタンスを参照してください。
さらに、SpotインスタンスをプライマリEC2インスタンスタイプとバックアップEC2インスタンスの両方として使用できます。容量関連の問題が発生した場合にMCSがフォールバックできるバックアップEC2インスタンスタイプ(オンデマンドインスタンスとSpotインスタンスの両方になり得る「バックアップSKU」)のリストをPowerShellを使用して提供できます。
重要な考慮事項
- Spotインスタンスのカタログは、マシンプロファイルワークフローでのみ作成する必要があります。
- 永続的なSpotインスタンスリクエストタイプのみがサポートされます。ワンタイムSpotインスタンスリクエストはサポートされていません。
- 停止および休止の中断動作のみがサポートされます。
- 既存のカタログの構成をオンデマンドからSpotインスタンスに変更したり、その逆を行ったりできます。ただし、EC2インスタンスをオンデマンドからSpotに変更するのは複雑です。AWSドキュメントのオンデマンドからSpot料金へのEC2インスタンスの切り替えを参照してください。
- プロビジョニングされたSpotインスタンスを削除するときは、既存のSpotインスタンスリクエストをキャンセルしてください。そうしないと、AWSが新しいSpotインスタンスを作成します。
AWS Spotインスタンスを使用したカタログ作成の手順
- Spotインスタンスでマシンプロファイルソースを作成します。Spotインスタンスを作成する手順については、Spotインスタンスリクエストの作成を参照してください。
-
New-ProvSchemePowerShellコマンドを使用して、マシンプロファイルでマシンカタログを作成します。Set-ProvSchemeコマンドを使用してカタログを更新できます。
バックアップSKUとしてのSpotインスタンスの使用
SpotインスタンスをプライマリEC2インスタンスタイプとバックアップEC2インスタンスの両方として使用できます。容量関連の問題が発生した場合にMCSがフォールバックできるバックアップEC2インスタンスタイプ(オンデマンドインスタンスとSpotインスタンスの両方になり得る「バックアップSKU」)のリストをPowerShellを使用して提供できます。
注:
バックアップSKUリストには、重複するSpotインスタンスを指定できます。例:
BackupVmConfiguration,t2.small:Spot|t2.small|t3.smallは有効です。
必要な権限
SpotインスタンスをプライマリまたはバックアップEC2インスタンスとして使用する場合、次の権限が必要です。
ec2:DescribeSpotInstanceRequestsec2:CancelSpotInstanceRequests
バックアップSpotインスタンスの構成
- PowerShellウィンドウを開きます。
-
asnp citrix\*を実行して、Citrix固有のPowerShellモジュールをロードします。 - Brokerカタログを作成します。
- IDプールを作成します。
-
カスタムプロパティ
BackupVmConfigurationを使用してバックアップEC2インスタンスリストを追加し、プロビジョニングスキームを作成します。例:$serviceOffering \= "XDHyp:\\HostingUnits\\$hostingUnitName\\T3 Medium Instance.serviceoffering" $customProperties \= "AwsCaptureInstanceProperties,false;AwsOperationalResourcesTagging,false;BackupVmConfiguration,t2.small|t2.large|t3.small:Spot|t3.large:Spot" $createdProvScheme \= New-ProvScheme \-ProvisioningSchemeName $provisioningSchemeName \-HostingUnitName $hostingUnitName \-IdentityPoolName $provisioningSchemeName \-NetworkMapping $networkMapping \-SecurityGroup $securityGroupPath \-ServiceOffering $serviceOffering \-MasterImageVM $masterImageVm \-CustomProperties $customProperties <!--NeedCopy--> - プロビジョニングスキームの一意のIDでBrokerCatalogを更新します。
- VMを作成し、カタログに追加します。
次のステップ
- これが最初に作成されたカタログである場合、デリバリーグループの作成に誘導されます。
- 構成プロセス全体を確認するには、インストールと構成を参照してください。
- カタログを管理するには、マシンカタログの管理およびAWS EC2カタログの管理を参照してください。
詳細情報
この記事の概要
- イメージ準備中のネットワーク設定
- AWS テナンシー
- AWS オペレーションリソースのタグ付け
- カタログの作成
- Web Studio を使用したカタログの作成
- PowerShellを使用したカタログの作成
- MCSIOが有効なカタログ
- PowerShellを使用したマシンプロファイルベースのマシンカタログの作成
- OS、ID、および WBC ディスクの暗号化
- VMインスタンスでのNitroTPMおよびUEFIセキュアブートの有効化
- VM上のタグのコピー
- PowerShellを使用したVMインスタンスのフィルタリング
- ページネーション
- フィルタリング
- AdditionalDataパラメーターによるフィルタリング
- VMのバックアップSKUリスト
- AWS Spotインスタンスを使用したカタログの作成
- 次のステップ
- 詳細情報