グーグル クラウド プラットフォーム カタログを作成する
マシンカタログを作成するウィザードについて、(/ja-jp/citrix-virtual-apps-desktops/2411/install-configure/machine-catalogs-create.html)で説明します。以下の情報は、Google Cloud環境に固有の詳細を扱っています。
注:
Google Cloud Platform (GCP) カタログを作成する前に、GCPへの接続の作成を完了する必要があります。「Google Cloud環境への接続」(/ja-jp/citrix-virtual-apps-desktops/2411/install-configure/connections/connection-gcp.html)を参照してください。
マスターVMインスタンスと永続ディスクを準備する
ヒント:
永続ディスクは、Google Cloudにおける仮想ディスクの用語です。
マスターVMインスタンスを準備するには、計画しているマシンカタログ内のクローンVDAインスタンスに求める構成と一致するプロパティを持つVMインスタンスを作成および構成します。構成は、インスタンスのサイズと種類にのみ適用されるわけではありません。メタデータ、タグ、GPU割り当て、ネットワークタグ、サービスアカウントのプロパティなどのインスタンス属性も含まれます。
マスタリングプロセスの一環として、MCSはマスターVMインスタンスを使用してGoogle Cloudのインスタンステンプレートを作成します。そのインスタンステンプレートは、マシンカタログを構成するクローンVDAインスタンスの作成に使用されます。クローンインスタンスは、インスタンステンプレートが作成されたマスターVMインスタンスのプロパティ(VPC、サブネット、永続ディスクのプロパティを除く)を継承します。
マスターVMインスタンスのプロパティを要件に合わせて構成したら、インスタンスを起動し、そのインスタンスの永続ディスクを準備します。
ディスクのスナップショットまたはディスクのイメージを手動で作成することをお勧めします。そうすることで、意味のある命名規則を使用してバージョンを追跡し、マスターイメージの以前のバージョンを管理するためのより多くのオプションが得られ、マシンカタログ作成の時間を節約できます。独自のスナップショットを作成しない場合、MCSが一時的なスナップショットを作成します(これはプロビジョニングプロセスの終了時に削除されます)。OSディスクまたはイメージのマルチリージョンスナップショットを手動で作成すると、異なるGCPリージョンのマシンカタログに同じマスターイメージを使用することもできます。
マシンカタログを作成する
マシンカタログは、次の2つの方法で作成できます。
- Web Studioを使用してマシンカタログを作成する(/ja-jp/citrix-virtual-apps-desktops/2411/install-configure/machine-catalogs-create/create-machine-catalog-gcp.html#create-a-machine-catalog-using-web-studio)
- PowerShellを使用してマシンカタログを作成する(/ja-jp/citrix-virtual-apps-desktops/2411/install-configure/machine-catalogs-create/create-machine-catalog-gcp.html#create-a-machine-catalog-using-powershell)
Web Studio を使用してマシンカタログを作成する
注:
マシンカタログを作成する前に、リソースを作成してください。マシンカタログを構成する際は、Google Cloud で確立されている命名規則を使用してください。詳細については、「バケットとオブジェクトの命名ガイドライン」を参照してください。
「マシンカタログの作成」のガイダンスに従ってください。以下の説明は、Google Cloud カタログに固有のものです。
-
Web Studio にサインインし、左ペインで [マシンカタログ] を選択します。
-
アクションバーで [マシンカタログの作成] を選択します。
-
[オペレーティングシステム] ページで、[マルチセッションOS] を選択し、[次へ] を選択します。
- Citrix Virtual Apps and Desktops™ は、シングルセッションオペレーティングシステムもサポートしています。
-
[マシン管理] ページで、[電源管理されているマシン] および [Citrix Machine Creation Services™] オプションを選択し、[次へ] を選択します。複数のリソースがある場合は、メニューから1つ選択します。
-
[イメージ] ページで、必要に応じてこれらの手順を完了し、[次へ] をクリックします。
- スナップショットまたはVMをマスターイメージとして選択します。専用テナンシー機能を使用する場合は、ノードグループプロパティが正しく構成されているイメージを必ず選択してください。「ゾーン選択の有効化」を参照してください。
-
既存のVMをマシンプロファイルとして使用するには、[マシンプロファイルを使用] を選択し、そのVMを選択します。
注:
現在、このカタログ内のVMは、ディスク暗号化セットID、マシンサイズ、ストレージタイプ、およびゾーン設定をマシンプロファイルから継承します。
- カタログの最小機能レベルを選択します。専用テナンシー機能を使用する場合は、ノードグループプロパティが正しく構成されているイメージを必ず選択してください。
-
「ストレージの種類」ページで、このマシンカタログのオペレーティングシステムを格納するために使用するストレージの種類を選択します。以下のストレージオプションはそれぞれ、独自の価格とパフォーマンス特性を持っています。(IDディスクは常にゾーン標準永続ディスクを使用して作成されます。)
- 標準永続ディスク
- バランス永続ディスク
- SSD永続ディスク
Google Cloudのストレージオプションの詳細については、https://cloud.google.com/compute/docs/disks/を参照してください。
-
「仮想マシン」ページで、作成するVMの数を指定し、VMの詳細な仕様を確認してから、「次へ」を選択します。マシンカタログに単一テナントノードグループを使用する場合は、予約済みの単一テナントノードが利用可能なゾーンをのみ選択するようにしてください。「[ゾーン選択を有効にする]」(#enable-zone-selection)を参照してください。
-
「ディスク設定」ページで、次の設定を構成できます。
-
ライトバックキャッシュを有効にするかどうかを選択します。ライトバックキャッシュを有効にすると、次のことができます。
- 一時データのキャッシュに使用するディスクとRAMのサイズを構成します。詳細については、「[一時データのキャッシュを構成する]」(/ja-jp/citrix-virtual-apps-desktops/2411/install-configure/machine-catalogs-create.html#configure-cache-for-temporary-data)を参照してください。
- ライトバックキャッシュディスクのストレージの種類を選択します。ライトバックキャッシュディスクには、次のストレージオプションを使用できます。
- 標準永続ディスク
- バランス永続ディスク
- SSD永続ディスク
Google Cloudのストレージオプションの詳細については、ストレージオプションを参照してください。
- ライトバックキャッシュディスクの種類を選択します。
- 非永続的なライトバックキャッシュディスクを使用する。選択した場合、プロビジョニングされたVMのライトバックキャッシュディスクは永続化されません。ディスクは電源サイクル中に削除され、ディスクにリダイレクトされたデータはすべて失われます。
- 永続的なライトバックキャッシュディスクを使用する。選択した場合、プロビジョニングされたVMのライトバックキャッシュディスクは永続化されます。このオプションを有効にすると、ストレージコストが増加します。
- MCSストレージ最適化(MCS I/O)が有効になっている場合、次のいずれかを実行できます。
- 電源サイクル中にVDAのシステムディスクを保持するかどうかを選択します。詳細については、「MCSストレージ最適化の更新を有効にする」を参照してください。
- メモリとディスクキャッシュのサイズを更新します。
-
ディスクの内容を保護するために独自のキーを使用するかどうかを選択します。この機能を使用するには、まず独自のCustomer Managed Encryption Keys (CMEKs)を作成する必要があります。詳細については、「Customer Managed Encryption Keys (CMEK)を使用する」を参照してください。
注:
これはStudioインターフェイスでのみ利用可能です。
キーを作成した後、リストからいずれかのキーを選択できます。カタログを作成した後は、キーを変更できません。Google Cloudは、既存の永続ディスクまたはイメージでのキーのローテーションをサポートしていません。したがって、カタログをプロビジョニングした後、カタログはキーの特定のバージョンに紐付けられます。そのキーが無効化または破棄された場合、そのキーで暗号化されたインスタンスとディスクは、キーが再度有効化または復元されるまで使用できなくなります。
-
-
コンピューターアカウントページで、Active Directoryアカウントを選択し、次へを選択します。
- 新しいActive Directoryアカウントを作成するを選択した場合、ドメインを選択し、Active Directoryで作成されるプロビジョニング済みVMコンピューターアカウントの命名スキームを表す文字のシーケンスを入力します。アカウント命名スキームは1~64文字で構成でき、空白スペース、非ASCII文字、または特殊文字を含めることはできません。
- 既存のActive Directoryアカウントを使用するを選択した場合、参照を選択して、選択したマシン用の既存のActive Directoryコンピューターアカウントに移動します。
-
ドメイン資格情報ページで、資格情報を入力を選択し、ユーザー名とパスワードを入力して保存を選択し、次へを選択します。
- 入力する資格情報には、Active Directoryアカウント操作を実行するための権限が必要です。
-
概要ページで情報を確認し、カタログの名前を指定して、完了を選択します。
注記:
バージョン2402以降、GCPカタログ名は以下の規則に従う必要があります。
- 小文字で始まる。
- 小文字 (a-z)、数字、およびハイフンのみを含める。
- 小文字または数字のいずれかで終わる。
これらの規則に準拠していない既存のGCPカタログの名前を変更しようとすると、エラーメッセージが表示され、更新された規則に従って名前を変更するように案内されます。
マシンカタログの作成には時間がかかる場合があります。マシンがターゲットノードグループに作成されていることを確認するには、Google Cloudコンソールに移動します。
手動で作成されたGoogle Cloudマシンのインポート
Google Cloudへの接続を作成し、Google Cloudマシンを含むカタログを作成できます。その後、Citrix Virtual Apps and Desktopsを介してGoogle Cloudマシンを手動で電源サイクルできます。この機能を使用すると、次のことができます。
- 手動で作成されたGoogle CloudマルチセッションOSマシンをCitrix Virtual Apps and Desktopsマシンカタログにインポートする。
- 手動で作成されたGoogle CloudマルチセッションOSマシンをCitrix Virtual Apps and Desktopsカタログから削除する。
- 既存のCitrix Virtual Apps and Desktopsの電源管理機能を使用して、Google Cloud WindowsマルチセッションOSマシンの電源を管理します。たとえば、それらのマシンに再起動スケジュールを設定します。
この機能は、既存のCitrix Virtual Apps and Desktopsプロビジョニングワークフローの変更を必要とせず、既存の機能の削除も必要ありません。手動で作成されたGoogle Cloudマシンをインポートする代わりに、Web StudioでMCSを使用してマシンをプロビジョニングすることをお勧めします。
共有仮想プライベートクラウド
共有仮想プライベートクラウド (VPC) は、共有サブネットが利用可能になるホストプロジェクトと、リソースを使用する1つ以上のサービスプロジェクトで構成されます。共有VPCは、共有企業Google Cloudリソースの一元的な制御、使用、および管理を提供するため、大規模なインストールにとって望ましいオプションです。詳細については、Googleドキュメントサイトを参照してください。
この機能により、Machine Creation Services (MCS) は、共有 VPC に展開されたマシンカタログのプロビジョニングと管理をサポートします。このサポートは、現在ローカル VPC で提供されているサポートと機能的に同等ですが、次の2つの点で異なります。
- ホスト接続の作成に使用されるサービスアカウントに追加の権限を付与する必要があります。このプロセスにより、MCS は共有 VPC リソースにアクセスして使用できるようになります。
- イングレス用とエグレス用にそれぞれ1つずつ、2つのファイアウォールルールを作成する必要があります。これらのファイアウォールルールは、イメージマスタリングプロセス中に使用されます。
必要な新しい権限
ホスト接続を作成する際には、特定の権限を持つ Google Cloud サービスアカウントが必要です。これらの追加権限は、共有 VPC ベースのホスト接続の作成に使用されるすべてのサービスアカウントに付与する必要があります。
ヒント:
これらの追加権限は、Citrix Virtual Apps and Desktops にとって新しいものではありません。これらはローカル VPC の実装を容易にするために使用されます。共有 VPC では、これらの追加権限により、他の共有 VPC リソースへのアクセスが可能になります。
共有 VPC をサポートするために、ホスト接続に関連付けられたサービスアカウントに最大4つの追加権限を付与する必要があります。
- compute.firewalls.list - この権限は必須です。これにより、MCS は共有 VPC に存在するファイアウォールルールの一覧を取得できます。
- compute.networks.list - この権限は必須です。これにより、MCS はサービスアカウントが利用できる共有 VPC ネットワークを識別できます。
- compute.subnetworks.list – この権限は、VPC の使用方法によってオプションです。これにより、MCS は表示されている共有 VPC 内のサブネットを識別できます。この権限はローカル VPC を使用する場合にすでに必要ですが、共有 VPC ホストプロジェクトでも割り当てる必要があります。
- compute.subnetworks.use - この権限は、VPC の使用方法によってオプションです。プロビジョニングされたマシンカタログでサブネットリソースを使用するために必要です。この権限はローカル VPC を使用する場合にすでに必要ですが、共有 VPC ホストプロジェクトでも割り当てる必要があります。
これらの権限を使用する際には、マシンカタログの作成に使用される権限の種類に基づいて異なるアプローチがあることを考慮してください。
- プロジェクトレベルの権限:
- ホストプロジェクト内のすべての共有 VPC へのアクセスを許可します。
- サービスアカウントに権限 #3 と #4 を割り当てる必要があります。
- サブネットレベルの権限:
- 共有VPC内の特定のサブネットへのアクセスを許可します。
- 権限 #3 と #4 はサブネットレベルの割り当てに固有のものであるため、サービスアカウントに直接割り当てる必要はありません。
組織のニーズとセキュリティ標準に合ったアプローチを選択してください。
ヒント:
プロジェクトレベルとサブネットレベルの権限の違いについて詳しくは、Google Cloud ドキュメントを参照してください。
ファイアウォールルール
マシンカタログの準備中に、カタログのマスターイメージシステムディスクとして機能するマシンイメージが準備されます。このプロセスが発生すると、ディスクは一時的に仮想マシンに接続されます。このVMは、すべてのインバウンドおよびアウトバウンドネットワークトラフィックを防止する分離された環境で実行する必要があります。これは、イングレス用とエグレス用の2つの「すべて拒否」ファイアウォールルールによって実現されます。Google CloudローカルVCPを使用する場合、MCSはこのファイアウォールをローカルネットワークに作成し、マスタリング用のマシンに適用します。マスタリングが完了すると、ファイアウォールルールはイメージから削除されます。
共有VPCを使用するために必要な新しい権限の数を最小限に抑えることをお勧めします。共有VPCはより上位の企業リソースであり、通常、より厳格なセキュリティプロトコルが導入されています。このため、ホストプロジェクトの共有VPCリソースに、イングレス用とエグレス用のファイアウォールルールをペアで作成してください。それらに最高の優先順位を割り当てます。次の値を使用して、これらの各ルールに新しいターゲットタグを適用します。
citrix-provisioning-quarantine-firewall
MCSがマシンカタログを作成または更新すると、このターゲットタグを含むファイアウォールルールを検索します。次に、ルールの正確性を確認し、カタログのマスターイメージを準備するために使用されるマシンに適用します。ファイアウォールルールが見つからない場合、またはルールが見つかってもルールやその優先順位が正しくない場合は、次のようなメッセージが表示されます。
"Unable to find valid INGRESS and EGRESS quarantine firewall rules for VPC <name> in project <project>. " Please ensure you have created 'deny all' firewall rules with the network tag 'citrix-provisioning-quarantine-firewall' and proper priority." "Refer to Citrix Documentation for details."
共有VPCの構成
Web Studioで共有VPCをホスト接続として追加する前に、プロビジョニングするプロジェクトからサービスアカウントを追加するために、次の手順を完了してください。
- IAM ロールを作成します。
- CVAD ホスト接続の作成に使用されるサービスアカウントを、共有 VPC ホストプロジェクトの IAM ロールに追加します。
- プロビジョニングする予定のプロジェクトから、Cloud Build サービスアカウントを共有 VPC ホストプロジェクトの IAM ロールに追加します。
- ファイアウォールルールを作成します。
IAM ロールを作成する
ロールのアクセスレベルを決定します — プロジェクトレベルのアクセス、または サブネットレベルのアクセス を使用したより制限されたモデルです。
IAM ロールのプロジェクトレベルのアクセス。プロジェクトレベルの IAM ロールには、次の権限を含めます。
- コンピューティング.ファイアウォール.リスト
- コンピューティング.ネットワーク.リスト
- コンピューティングサブネットワークの一覧表示
- コンピューティングサブネットワークの使用
プロジェクトレベルの IAM ロールを作成するには:
- Google Cloud コンソールで、IAM と管理 > ロール に移動します。
- ロール ページで、ロールを作成 を選択します。
-
ロールを作成 ページで、ロール名を指定します。権限を追加 を選択します。
- 「権限を追加」ページで、個別にロールに権限を追加します。権限を追加するには、「テーブルをフィルタリング」フィールドに権限の名前を入力します。権限を選択し、「追加」を選択します。
- 「作成」を選択します。
サブネットレベルのIAMロール。「ロールを作成」を選択した後、このロールは権限compute.subnetworks.listとcompute.subnetworks.useの追加を省略します。このIAMアクセスレベルの場合、権限compute.firewalls.listとcompute.networks.listを新しいロールに適用する必要があります。
サブネットレベルのIAMロールを作成するには:
- Google Cloudコンソールで、VPCネットワーク > 共有VPCに移動します。「共有VPC」ページが表示され、ホストプロジェクトに含まれる共有VPCネットワークのサブネットが表示されます。
- 「共有VPC」ページで、アクセスしたいサブネットを選択します。
- 右上隅で、「メンバーを追加」を選択してサービスアカウントを追加します。
- 「メンバーを追加」ページで、次の手順を実行します。
- 「新しいメンバー」フィールドにサービスアカウントの名前を入力し、メニューからサービスアカウントを選択します。
- 「ロールを選択」フィールドを選択し、次に「Compute Network User」を選択します。
- 「保存」を選択します。
- Google Cloudコンソールで、IAMと管理 > ロールに移動します。
- 「ロール」ページで、「ロールを作成」を選択します。
- 「ロールを作成」ページで、ロール名を指定します。「権限を追加」を選択します。
- 「権限を追加」ページで、個別にロールに権限を追加します。権限を追加するには、「テーブルをフィルタリング」フィールドに権限の名前を入力します。権限を選択し、「追加」を選択します。
- 作成 を選択します。
ホストプロジェクトのIAMロールにサービスアカウントを追加する
IAMロールを作成した後、ホストプロジェクトにサービスアカウントを追加するには、次の手順を実行します。
- Google Cloudコンソールで、ホストプロジェクトに移動し、その後、IAM と管理 > IAM に移動します。
- IAM ページで、追加 を選択してサービスアカウントを追加します。
-
メンバーの追加 ページで:
- 新しいメンバー フィールドにサービスアカウントの名前を入力し、その後、メニューからサービスアカウントを選択します。
- ロールフィールドを選択し、作成したIAMロールを入力し、その後、メニューからそのロールを選択します。
- 保存 を選択します。
サービスアカウントがホストプロジェクト用に設定されました。
共有VPCにクラウドビルドサービスアカウントを追加する
すべてのGoogle Cloudサブスクリプションには、プロジェクトID番号にちなんで名付けられ、その後に cloudbuild.gserviceaccount が続くサービスアカウントがあります。例: 705794712345@cloudbuild.gserviceaccount。
Google Cloudコンソールでホームとダッシュボードを選択すると、プロジェクトのプロジェクトID番号を確認できます。
Google Cloudコンソールのナビゲーションペイン(/ja-jp/citrix-virtual-apps-desktops/2411/media/gcp-console-navigation-pane.png)
画面のプロジェクト情報エリアの下にあるプロジェクト番号を見つけます。
Cloud Build サービスアカウントを共有 VPC に追加するには、次の手順を実行します。
- Google Cloud コンソールで、ホストプロジェクトに移動し、IAM と管理 > IAM に移動します。
- 権限ページで、アカウントを追加するために追加を選択します。
-
メンバーの追加ページで、次の手順を完了します。
- 新しいメンバーフィールドに、Cloud Build サービスアカウントの名前を入力し、メニューからサービスアカウントを選択します。
-
ロールの選択フィールドを選択し、
Computer Network Userと入力して、メニューからロールを選択します。 - 保存を選択します。
ファイアウォールルールを作成する
マスタリングプロセスの一環として、MCS は選択されたマシンイメージをコピーし、それを使用してカタログ用のマスターイメージシステムディスクを準備します。マスタリング中、MCS はディスクを一時的な仮想マシンに接続し、その仮想マシンが準備スクリプトを実行します。この VM は、すべてのインバウンドおよびアウトバウンドネットワークトラフィックを禁止する分離された環境で実行する必要があります。分離された環境を作成するために、MCS は2つの すべて拒否 ファイアウォールルール(イングレスルールとエグレスルール)を必要とします。したがって、ホストプロジェクト に次の2つのファイアウォールルールを作成します。
- Google Cloud コンソールで、ホストプロジェクトに移動し、VPC ネットワーク > ファイアウォールに移動します。
- ファイアウォールページで、ファイアウォールルールを作成を選択します。
-
ファイアウォールルールを作成ページで、以下を完了します。
- 名前。ルールの名前を入力します。
- ネットワーク。イングレスファイアウォールルールが適用される共有 VPC ネットワークを選択します。
- 優先度。値が小さいほど、ルールの優先度が高くなります。小さい値(例: 10)をお勧めします。
- トラフィックの方向。「Ingress」を選択します。
- 一致時のアクション。「Deny」を選択します。
- ターゲット。デフォルトの「指定されたターゲットタグ」を使用します。
-
ターゲットタグ。
citrix-provisioning-quarantine-firewallと入力します。 - ソースフィルター。デフォルトの「IP範囲」を使用します。
-
ソースIP範囲。すべてのトラフィックに一致する範囲を入力します。
0.0.0.0/0と入力します。 - プロトコルとポート。「すべて拒否」を選択します。
- 「作成」を選択してルールを作成します。
- 手順1~4を繰り返して別のルールを作成します。トラフィックの方向には「Egress」を選択します。
接続を追加する
Google Cloud環境への接続を追加します。接続を追加するを参照してください。
ゾーン選択を有効にする
Citrix Virtual Apps and Desktopsはゾーン選択をサポートしています。ゾーン選択を使用すると、VMを作成するゾーンを指定できます。ゾーン選択を使用すると、管理者は選択したゾーンに単一テナントノードを配置できます。単一テナンシーを構成するには、Google Cloudで以下を完了する必要があります。
- Google Cloudの単一テナントノードを予約する
- VDAマスターイメージを作成する
Google Cloud の単一テナントノードの予約
単一テナントノードを予約するには、Google Cloud のドキュメントを参照してください。
重要:
ノードテンプレートは、ノードグループに予約されているシステムのパフォーマンス特性を示すために使用されます。これらの特性には、vGPU の数、ノードに割り当てられるメモリ量、およびノード上に作成されるマシンに使用されるマシンタイプが含まれます。詳細については、Google Cloud のドキュメントを参照してください。
VDA マスターイメージの作成
単一テナントノードにマシンを正常に展開するには、マスター VM イメージを作成する際に追加の手順を実行する必要があります。Google Cloud のマシンインスタンスには、ノードアフィニティラベルと呼ばれるプロパティがあります。単一テナントノードに展開されるカタログのマスターイメージとして使用されるインスタンスには、ターゲットノードグループの名前と一致するノードアフィニティラベルが必要です。これを実現するには、次の点に留意してください。
- 新しいインスタンスの場合、インスタンスの作成時に Google Cloud コンソールでラベルを設定します。詳細については、「インスタンス作成時にノードアフィニティラベルを設定する」を参照してください。
- 既存のインスタンスの場合、gcloud コマンドラインを使用してラベルを設定します。詳細については、「既存のインスタンスにノードアフィニティラベルを設定する」を参照してください。
注:
共有 VPC で単一テナンシーを使用する場合は、「共有仮想プライベートクラウド」を参照してください。
インスタンス作成時にノードアフィニティラベルを設定する
ノードアフィニティラベルを設定するには:
-
グーグルクラウド コンソールで、コンピューティングエンジン > VM インスタンスに移動します。
-
VM インスタンスページで、インスタンスを作成を選択します。
-
インスタンスの作成ページで、必要な情報を入力または構成し、管理、セキュリティ、ディスク、ネットワーク、単一テナンシーを選択して設定パネルを開きます。
-
「Sole tenancy」タブで、「Browse」を選択して、現在のプロジェクトで利用可能なノードグループを表示します。「Sole-tenant node」ページが表示され、利用可能なノードグループのリストが表示されます。
-
「Sole-tenant node」ページで、リストから該当するノードグループを選択し、「Select」を選択して「Sole tenancy」タブに戻ります。ノードアフィニティラベルフィールドには、選択した情報が入力されます。この設定により、インスタンスから作成されたマシンカタログが、選択したノードグループに展開されることが保証されます。
-
「Create」を選択してインスタンスを作成します。
既存のインスタンスにノードアフィニティラベルを設定する
ノードアフィニティラベルを設定するには:
-
Google Cloud Shellターミナルウィンドウで、gcloud compute instancesコマンドを使用してノードアフィニティラベルを設定します。gcloudコマンドに以下の情報を含めます。
-
VMの名前。たとえば、
s*2019-vda-baseという既存のVMを使用します。 -
ノードグループの名前。以前に作成したノードグループ名を使用します。たとえば、
mh-sole-tenant-node-group-1。 -
インスタンスが存在するゾーン。たとえば、VMは
*us-east-1b* zoneに存在します。
たとえば、ターミナルウィンドウで次のコマンドを入力します。
gcloud compute instances set-scheduling "s2019-vda-base" --node-group="mh-sole-tenant-node-group-1" --zone="us-east1-b"
gcloud compute instances コマンドに関する詳細については、https://cloud.google.com/sdk/gcloud/reference/beta/compute/instances/set-scheduling にある Google Developer Tools のドキュメントを参照してください。
-
VMの名前。たとえば、
-
インスタンスの「VM instance details」ページに移動し、「Node Affinities」フィールドにラベルが入力されていることを確認します。
マシンカタログを作成する
ノードアフィニティラベルを設定した後、マシンカタログを構成します。
カスタマーマネージド暗号鍵 (CMEK)
MCSカタログにカスタマーマネージド暗号鍵 (CMEK) を使用できます。この機能を使用する場合、Compute EngineサービスエージェントにGoogle Cloud Key Management ServiceのCryptoKey Encrypter/Decrypterロールを割り当てます。キーが保存されているプロジェクトで、Citrix Virtual Apps and Desktopsアカウントが適切な権限を持っている必要があります。詳細については、Cloud KMSキーを使用してリソースを保護するを参照してください。
Compute Engineサービスエージェントは次の形式です: service-<Project _Number>@compute-system.iam.gserviceaccount.com。この形式は、デフォルトのCompute Engineサービスアカウントとは異なります。
注:
このCompute Engineサービスアカウントは、Google ConsoleのIAM権限表示に表示されない場合があります。そのような場合は、Cloud KMSキーを使用してリソースを保護するで説明されている
gcloudコマンドを使用してください。
シトリックス バーチャル アプリケーションズ アンド デスクトップス アカウントへの権限の割り当て
Google Cloud KMSの権限は、さまざまな方法で構成できます。プロジェクトレベルのKMS権限、またはリソースレベルのKMS権限のいずれかを付与できます。詳細については、権限とロールを参照してください。
プロジェクトレベルの権限
1つのオプションは、Citrix Virtual Apps and DesktopsアカウントにCloud KMSリソースを参照するためのプロジェクトレベルの権限を付与することです。これを行うには、カスタムロールを作成し、次の権限を追加します。
cloudkms.keyRings.listcloudkms.keyRings.getcloudkms.cryptokeys.listcloudkms.cryptokeys.get
このカスタムロールをCitrix Virtual Apps and Desktopsに割り当てます。これにより、インベントリ内の関連プロジェクトでリージョンキーを参照できるようになります。
リソースレベルの権限
もう1つのオプションであるリソースレベルの権限については、Google Cloudコンソールで、MCSプロビジョニングに使用するcryptoKeyを参照してください。Citrix Virtual Apps and Desktopsアカウントを、カタログプロビジョニングに使用するキーリングまたはキーに追加します。
ヒント:
このオプションでは、Citrix Virtual Apps and DesktopsアカウントにCloud KMSリソースに対するプロジェクトレベルのリスト権限がないため、インベントリでプロジェクトのリージョンキーを参照することはできません。ただし、以下に説明するように、
ProvSchemeカスタムプロパティで正しいcryptoKeyIdを指定することで、CMEKを使用してカタログをプロビジョニングできます。
カスタムプロパティを使用したCMEKでのプロビジョニング
PowerShell経由でプロビジョニングスキームを作成する場合は、ProvScheme CustomPropertiesでCryptoKeyIdプロパティを指定します。例:
'<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="CryptoKeyId" Value="<yourCryptoKeyId>" />
</CustomProperties>'
<!--NeedCopy-->
cryptoKeyIdは次の形式で指定する必要があります。
projectId:location:keyRingName:cryptoKeyName
たとえば、リージョンus-east1のキーリングmy-example-key-ringにあるキーmy-example-keyと、IDがmy-example-project-1のプロジェクトを使用する場合、ProvSchemeカスタム設定は次のようになります。
'<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="CryptoKeyId" Value="my-example-project-1:us-east1:my-example-key-ring:my-example-key" />
</CustomProperties>'
<!--NeedCopy-->
このプロビジョニングスキームに関連するすべてのMCSプロビジョニング済みディスクとイメージは、この顧客管理暗号化キーを使用します。
ヒント:
グローバルキーを使用する場合、顧客プロパティの場所は
globalと記述する必要があり、上記の例のus-east1のようなリージョン名ではありません。例:<Property xsi:type="StringProperty" Name="CryptoKeyId" Value="my-example-project-1:global:my-example-key-ring:my-example-key" />。
顧客管理キーのローテーション
Google Cloudは、既存の永続ディスクまたはイメージでのキーのローテーションをサポートしていません。マシンがプロビジョニングされると、作成時に使用されていたキーバージョンに紐付けられます。ただし、新しいバージョンのキーを作成でき、その新しいキーは、新しくプロビジョニングされたマシン、または新しいマスターイメージでカタログが更新されたときに作成されたリソースに使用されます。
キーリングに関する重要な考慮事項
キーリングの名前変更や削除はできません。また、キーリングを設定する際に予期せぬ料金が発生する可能性があります。キーリングを削除または削除すると、Google Cloudはエラーメッセージを表示します。
Sorry, you can't delete or rename keys or key rings. We were concerned about the security implications of allowing multiple keys or key versions over time to have the same resource name, so we decided to make names immutable. (And you can't delete them, because we wouldn't be able to do a true deletion--there would still have to be a tombstone tracking that this name had been used and couldn't be reused).
We're aware that this can make things untidy, but we have no immediate plans to change this.
If you want to avoid getting billed for a key or otherwise make it unavailable, you can do so by deleting all the key versions; neither keys nor key rings are billed for, just the active key versions within the keys.
<!--NeedCopy-->
ヒント:
詳細については、コンソールからのキーリングの編集または削除を参照してください。
均一なバケットレベルのアクセス互換性
Citrix Virtual Apps and Desktopsは、Google Cloudの均一なバケットレベルのアクセス制御ポリシーと互換性があります。この機能は、ストレージバケットを含むリソースの操作を許可するためにサービスアカウントに権限を付与するIAMポリシーの使用を強化します。均一なバケットレベルのアクセス制御により、Citrix Virtual Apps and Desktopsでは、アクセス制御リスト(ACL)を使用して、ストレージバケットまたはそこに保存されているオブジェクトへのアクセスを制御できます。Google Cloudの均一なバケットレベルのアクセスに関する概要情報については、均一なバケットレベルのアクセスを参照してください。構成情報については、均一なバケットレベルのアクセスを要求するを参照してください。
PowerShellを使用してマシンカタログを作成する
このセクションでは、PowerShellを使用してカタログを作成する方法について詳しく説明します。
- 永続的なライトバックキャッシュディスクを持つカタログを作成する
- MCSIOで起動パフォーマンスを向上させる
- マシンプロファイルを使用してマシンカタログを作成する
- インスタンステンプレートとしてマシンプロファイルを持つマシンカタログを作成する
- PowerShellを使用してシールドされたVMを持つカタログを作成する
- 単一テナントノードにWindows 11 VMを作成する
永続的なライトバックキャッシュディスクを持つカタログを作成する
永続的なライトバックキャッシュディスクを持つカタログを構成するには、PowerShellパラメーターNew-ProvScheme CustomPropertiesを使用します。
ヒント:
PowerShellパラメーターは、クラウドベースのホスティング接続でのみ使用してください。オンプレミスソリューション(例:XenServer®)で永続的なライトバックキャッシュディスクを使用してマシンをプロビジョニングする場合、ディスクは自動的に永続化されるため、PowerShellは必要ありません。
このパラメーターは、MCSでプロビジョニングされたマシンに対してライトバックキャッシュディスクがどのように永続化されるかを決定するために使用される追加のプロパティ PersistWBC をサポートします。PersistWBC プロパティは、UseWriteBackCache パラメーターが指定され、WriteBackCacheDiskSize パラメーターがディスクが作成されることを示すように設定されている場合にのみ使用されます。
注:
この動作は、AzureとGCPの両方に適用されます。これらの環境では、電源を入れ直すとデフォルトのMCSIOライトバックキャッシュディスクが削除され、再作成されます。ディスクの削除と再作成を避けるために、ディスクを永続化することを選択できます。
Citrix Virtual Apps and Desktops管理者が管理インターフェイスからマシンをシャットダウンしても、PersistWBC プロパティを true に設定すると、ライトバックキャッシュディスクは削除されません。
Citrix Virtual Apps and Desktops管理者が管理インターフェイスからマシンをシャットダウンすると、PersistWBC プロパティを false に設定すると、ライトバックキャッシュディスクが削除されます。
注:
PersistWBCプロパティが省略された場合、プロパティはデフォルトでfalseになり、管理インターフェイスからマシンがシャットダウンされるとライトバックキャッシュは削除されます。
例として、CustomPropertiesパラメーターを使用して PersistWBC を true に設定する場合:
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="ResourceGroups" Value="benvaldev5RG3" />
<Property xsi:type="StringProperty" Name="PersistWBC" Value="true" />
</CustomProperties>
<!--NeedCopy-->
注:
PersistWBCプロパティは、New-ProvSchemePowerShellコマンドレットを使用してのみ設定できます。作成後にプロビジョニングスキームのCustomPropertiesを変更しようとしても、マシンカタログや、マシンがシャットダウンされたときのライトバックキャッシュディスクの永続性には影響しません。
例として、New-ProvScheme をライトバックキャッシュを使用するように設定し、同時に PersistWBC プロパティを true に設定する場合:
New-ProvScheme
-CleanOnBoot
-CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"Premium_LRS`" /><Property xsi:type=`"StringProperty`" Name=`"ResourceGroups`" Value=`"benvaldev5RG3`" /><Property xsi:type=`"StringProperty`" Name=`"PersistWBC`" Value=`"true`" /></CustomProperties>"
-HostingUnitName "adSubnetScale1"
-IdentityPoolName "BV-WBC1-CAT1"
-MasterImageVM "XDHyp:\HostingUnits\adSubnetScale1\image.folder\GoldImages.resourcegroup\W10MCSIO-01_OsDisk_1_a940e6f5bab349019d57ccef65d2c7e3.manageddisk"
-NetworkMapping @{"0"="XDHyp:\HostingUnits\adSubnetScale1\\virtualprivatecloud.folder\CloudScale02.resourcegroup\adVNET.virtualprivatecloud\adSubnetScale1.network"}
-ProvisioningSchemeName "BV-WBC1-CAT1"
-ServiceOffering "XDHyp:\HostingUnits\adSubnetScale1\serviceoffering.folder\Standard_D2s_v3.serviceoffering"
-UseWriteBackCache
-WriteBackCacheDiskSize 127
-WriteBackCacheMemorySize 256
<!--NeedCopy-->
MCSIOで起動パフォーマンスを向上させる
MCSIOが有効になっている場合、AzureおよびGCPマネージドディスクの起動パフォーマンスを向上させることができます。この機能を構成するには、New-ProvScheme コマンドでPowerShellの PersistOSDisk カスタムプロパティを使用します。New-ProvScheme に関連するオプションは次のとおりです。
<CustomProperties xmlns="http://schemas.citrix.com/2014/xd/machinecreation" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Property xsi:type="StringProperty" Name="UseManagedDisks" Value="true" />
<Property xsi:type="StringProperty" Name="StorageAccountType" Value="Premium_LRS" />
<Property xsi:type="StringProperty" Name="Resource <!--NeedCopy-->
``````<!--NeedCopy-->
<!--NeedCopy-->
````````Groups" Value="benvaldev5RG3" />
<Property xsi:type="StringProperty" Name="PersistOsDisk" Value="true" />
</CustomProperties>
<!--NeedCopy-->
この機能を有効にするには、PersistOSDisk カスタムプロパティを true に設定します。例:
New-ProvScheme
-CleanOnBoot
-CustomProperties "<CustomProperties xmlns=`"http://schemas.citrix.com/2014/xd/machinecreation`" xmlns:xsi=`"http://www.w3.org/2001/XMLSchema-instance`"><Property xsi:type=`"StringProperty`" Name=`"UseManagedDisks`" Value=`"true`" /><Property xsi:type=`"StringProperty`" Name=`"StorageAccountType`" Value=`"Premium_LRS`" /><Property xsi:type=`"StringProperty`" Name=`"ResourceGroups`" Value=`"benvaldev5RG3`" /><Property xsi:type=`"StringProperty`" Name=`"PersistOsDisk`" Value=`"true`" /></CustomProperties>"
-HostingUnitName "adSubnetScale1"
-IdentityPoolName "BV-WBC1-CAT1"
-MasterImageVM "XDHyp:\HostingUnits\adSubnetScale1\image.folder\GoldImages.resourcegroup\W10MCSIO-01_OsDisk_1_a940e6f5bab349019d57ccef65d2c7e3.manageddisk"
-NetworkMapping @{"0"="XDHyp:\HostingUnits\adSubnetScale1\\virtualprivatecloud.folder\CloudScale02.resourcegroup\adVNET.virtualprivatecloud\adSubnetScale1.network"}
-ProvisioningSchemeName "BV-WBC1-CAT1"
-ServiceOffering "XDHyp:\HostingUnits\adSubnetScale1\serviceoffering.folder\Standard_D2s_v3.serviceoffering"
-UseWriteBackCache
-WriteBackCacheDiskSize 127
-WriteBackCacheMemorySize 256
<!--NeedCopy-->
マシンプロファイルを使用してマシンカタログを作成する
Machine Creation Services (MCS) を使用してマシンをプロビジョニングするカタログを作成する場合、マシンプロファイルを使用して仮想マシンからハードウェアプロパティをキャプチャし、カタログ内の新しくプロビジョニングされたVMに適用できます。MachineProfile パラメータが使用されていない場合、ハードウェアプロパティはマスターイメージVMまたはスナップショットからキャプチャされます。
たとえば、StorageType、CatalogZones、CryptoKeyIs など、明示的に定義する一部のプロパティは、マシンプロファイルから無視されます。
- マシンプロファイルを使用してカタログを作成するには、
New-ProvSchemeコマンドを使用します。例:New-ProvScheme –MachineProfile "path to VM"。MachineProfileパラメータを指定しない場合、ハードウェアプロパティはマスターイメージVMからキャプチャされます。 - 新しいマシンプロファイルでカタログを更新するには、
Set-ProvSchemeコマンドを使用します。例:Set-ProvScheme –MachineProfile "path to new VM"。このコマンドは、カタログ内の既存のVMのマシンプロファイルを変更しません。カタログに追加された新しく作成されたVMのみが新しいマシンプロファイルを持ちます。 -
マスターイメージを更新することもできますが、マスターイメージを更新してもハードウェアプロパティは更新されません。ハードウェアプロパティを更新したい場合は、
Set-ProvSchemeコマンドを使用してマシンプロファイルを更新する必要があります。これらの変更は、カタログ内の新しいマシンにのみ適用されます。既存のマシンのハードウェアプロパティを更新するには、-StartsNowおよび-DurationInMinutes -1パラメータを指定してSet-ProvVMUpdateTimeWindowコマンドを使用できます。注:
-
StartsNowは、スケジュールされた開始時刻が現在の時刻であることを示します。 - 負の数 (例: –1) を指定した
DurationInMinutesは、スケジュールの時間枠に上限がないことを示します。
-
インスタンステンプレートとしてマシンプロファイルを持つマシンカタログを作成する
マシンプロファイルの入力としてGCPインスタンステンプレートを選択できます。インスタンステンプレートはGCPの軽量リソースであるため、非常に費用対効果が高いです。
インスタンステンプレートとしてマシンプロファイルを持つ新しいマシンカタログを作成する
- PowerShellウィンドウを開きます。
-
asnp citrix*を実行して、Citrix固有のPowerShellモジュールをロードします。 -
次のコマンドを使用して、GCPプロジェクトでインスタンステンプレートを見つけます。
cd XDHyp:\HostingUnits\<HostingUnitName>\instanceTemplates.folder <!--NeedCopy--> -
NewProvSchemeコマンドを使用して、インスタンステンプレートとしてマシンプロファイルを持つ新しいマシンカタログを作成します。
New-ProvScheme -ProvisioningSchemeName <CatalogName> -HostingUnitName <HostingUnitName> -IdentityPoolName <identity pool name> -MasterImageVM XDHyp:\HostingUnits\<HostingUnitName> \Base.vm\Base.snapshot -MachineProfile XDHyp:\HostingUnits\<HostingUnitName>\instanceTemplates.folder\mytemplate.template <!--NeedCopy-->New-ProvSchemeコマンドの詳細については、https://developer-docs.citrix.com/projects/citrix-daas-sdk/en/latest/MachineCreation/New-ProvScheme/を参照してください。
- PowerShellコマンドを使用してマシンカタログの作成を完了します。Remote PowerShell SDKを使用してカタログを作成する方法については、https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/を参照してください。
既存のマシンカタログのマシンプロファイルをインスタンステンプレートに変更する
既存のマシンカタログのマシンプロファイルをインスタンステンプレートに変更する詳細な手順は次のとおりです。
- PowerShellウィンドウを開きます。
- Citrix固有のPowerShellモジュールをロードするには、
asnp citrix*を実行します。 -
次のコマンドを実行します。
Set-ProvScheme -ProvisioningSchemeName <CatalogName> -MachineProfile XDHyp:\HostingUnits\<HostingUnitName>\instanceTemplates.folder\<TemplateName>.template <!--NeedCopy-->Set-ProvSchemeコマンドの詳細については、https://developer-docs.citrix.com/projects/citrix-daas-sdk/en/latest/MachineCreation/Set-ProvScheme/を参照してください。
PowerShellを使用してシールドされたVMでカタログを作成する
シールドされたVMプロパティを持つMCSマシンカタログを作成できます。シールドされた仮想マシンは、セキュアブート、仮想トラステッドプラットフォームモジュール、UEFIファームウェア、整合性監視などの高度なプラットフォームセキュリティ機能を使用して、Compute Engineインスタンスの検証可能な整合性を提供する一連のセキュリティ制御によって強化されています。
MCSは、マシンプロファイルワークフローを使用したカタログの作成をサポートしています。マシンプロファイルワークフローを使用する場合、VMインスタンスのシールドされたVMプロパティを有効にする必要があります。その後、このVMインスタンスをマシンプロファイルの入力として使用できます。
マシンプロファイルワークフローを使用して、シールドされたVMを持つMCSマシンカタログを作成するには。
- Google CloudコンソールでVMインスタンスのシールドされたVMオプションを有効にします。「クイックスタート: シールドされたVMオプションを有効にする」を参照してください。
-
VMインスタンスを使用して、マシンプロファイルワークフローでMCSマシンカタログを作成します。
- PowerShellウィンドウを開きます。
- Citrix固有のPowerShellモジュールをロードするために
asnp citrix*を実行します。 - まだ作成されていない場合は、IDプールを作成します。
-
New-ProvSchemeコマンドを実行します。例:New-ProvScheme -ProvisioningSchemeName <catalog-name> -HostingUnitName gcp-hostint-unit -MasterImageVM XDHyp:\HostingUnits\gcp-hostint-unit\catalog-vda.vm -MachineProfile XDHyp:\HostingUnits\gcp-hostint-unit\catalog-machine.vm <!--NeedCopy-->
- マシンカタログの作成を完了します。
新しいマシンプロファイルでマシンカタログを更新するには:
-
Set-ProvSchemeコマンドを実行します。例:Set-ProvScheme -ProvisioningSchemeName <catalog-name> -MasterImageVM XDHyp:\HostingUnits\<hostin-unit>\catalog-vda.vm -MachineProfile "DHyp:\HostingUnits\<hostin-unit>\catalog-machine.vm <!--NeedCopy-->
Set-ProvSchemeで行われた変更を既存のVMに適用するには、Set-ProvVMUpdateTimeWindowコマンドを実行します。
-
Set-ProvVMUpdateTimeWindowコマンドを実行します。例:Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName <List-Of-Vm-Names> -StartsNow -DurationInMinutes -1 <!--NeedCopy--> -
VMを再起動します。
シングルテナントノードにWindows 11 VMを作成する
GCPでWindows 11 VMを作成できます。ただし、マスターイメージにWindows 11をインストールする場合は、マスターイメージ作成プロセス中にvTPMを有効にする必要があります。また、マシンプロファイルソース(VMまたはインスタンステンプレート)でvTPMを有効にする必要があります。
シングルテナントノードにWindows 11 VMを作成するための主要な手順は次のとおりです。
- Google Cloud仮想化環境をセットアップします。詳細については、Google Cloud environmentsを参照してください。
- VDAをインストールします。Install VDAsを参照してください。
- Google Cloud環境への接続を作成します。詳細については、Google Cloud環境への接続を参照してください。
- Windows 11 Bring Your Own License (BYOL) マスターイメージを作成し、そのイメージをGoogle Cloudにインポートします。「Windows 11 BYOL マスターイメージの作成」を参照してください。(#create-a-windows-11-byol-master-image)
- マシンプロファイルソースを作成します。単一テナントノードにVMをプロビジョニングし、ソースマシンプロファイルのvTPMを有効にします。「単一テナントノードでのVMのプロビジョニング」を参照してください。(#provision-vm-on-sole-tenant-node)
- vTPMが有効なWindows 11マシンプロファイルソースを使用してMCSマシンカタログを作成します。マシンプロファイルソースは、単一テナントノードで説明されているものと同じインスタンスタイプである必要があります。「Windows 11マシンプロファイルソースを使用したMCSマシンカタログの作成」を参照してください。(#create-an-mcs-machine-catalog-using-the-windows-11-machine-profile-source)
Windows 11 BYOL マスターイメージの作成
Windows 11 BYOL マスターイメージを作成し、そのマスターイメージをGoogle Cloudにインポートするには、2つのオプションがあります。
- グーグル クラウド クラウド ビルド ツールを使用する
- 他のハイパーバイザーでマスターイメージを作成する
グーグル クラウド クラウド ビルド ツールを使用する
- Windows 11 ISO、GCP SDK、.NET framework、およびPowerShellインストーラーファイルをGCPストレージバケットにアップロードします。
- クラウドビルド
.yamlファイルでファイルパスをパラメーターとして指定します。 -
コマンドラインから以下のCloud Buildを実行して、最終的なWindows 11イメージをビルドします。GCPは、GCPのDaisyワークフローを使用して、選択したプロジェクトでマスターイメージをブートストラップして作成し、そのマスターイメージはGCPにインポートされます。
gcloud compute instances import INSTANCE-NAME--source-uri=gs://BUCKET/IMAGE-OVF-FILE.ovf --guest-os-features=UEFI_COMPATIBLE --byol --machine-type=MACHINE-TYPE --zone=ZONE <!--NeedCopy-->注:
すべての大文字のテキストを実際の資材の詳細に置き換えてください。
詳細については、カスタムWindows BYOLイメージの作成 を参照してください。
他のハイパーバイザーでマスターイメージを作成する
- 他のハイパーバイザーを使用してWindows 11マスターイメージを作成します。
- マスターイメージをOVF形式でローカルマシンにエクスポートします。
-
ローカルのgcloud CLIを使用して、OVFファイルをGCPストレージバケットにアップロードします。
gsutil cp LOCAL_IMAGE_PATH_OVF_FILES gs://BUCKET_NAME/ <!--NeedCopy--> -
コマンドラインから以下のCloud Buildを実行して、最終的なWindows 11イメージをビルドします。GCPは、GCPのDaisyワークフローを使用して、選択したプロジェクトでマスターイメージをブートストラップして作成し、マスターイメージはGCPにインポートされます。
gcloud compute instances import INSTANCE-NAME --source-uri=gs://BUCKET/IMAGE-OVF-FILE.ovf --guest-os-features=UEFI_COMPATIBLE --byol --machine-type=MACHINE-TYPE --zone=ZONE <!--NeedCopy-->注:
すべての大文字のテキストを実際のリソースの詳細に置き換えます。
シングルテナントノードでのVMプロビジョニング
シングルテナントノードを使用すると、VMを他のプロジェクトのVMから物理的に分離したり、同じホストハードウェア上にVMをグループ化したりできます。シングルテナントノードの詳細については、GCPドキュメント「シングルテナンシーの概要」を参照してください。
シングルテナントノードでのVM(マシンプロファイルソース)のプロビジョニングについては、GCPドキュメント「シングルテナントノードでのVMのプロビジョニング」を参照してください。
注:
- ノードグループと同じインスタンスタイプとリージョンを選択します。
- Shielded VMセクションでvTPMを有効にします。詳細については、「クイックスタート: Shielded VMオプションを有効にする」を参照してください。
- ソースVMでBitlockerを無効にします。
Windows 11マシンプロファイルソースを使用してMCSマシンカタログを作成する
Web StudioまたはPowerShellコマンドを使用して、Windows 11 VMを作成するためのMCSマシンカタログを作成できます。
注:
- マスターイメージには、Windows 11のスナップショットまたはVMを選択します。
- マシンプロファイルソースには、Windows 11 VMをマシンプロファイルとして選択します。マシンプロファイルソースは、単一テナントノードで説明されているものと同じインスタンスタイプである必要があります。
Web Studioの使用方法については、Web Studioを使用してマシンカタログを作成するを参照してください。
PowerShellコマンドの詳細については、マシンプロファイルを使用してマシンカタログを作成するを参照してください。
カタログを作成してVMの電源をオンにすると、Google Cloudコンソールで、単一テナントノードで実行されているWindows 11 VMを確認できます。
継承されたラベルを持つVMとディスク
MCSマシンカタログのVMとディスク(IDディスク、ライトキャッシュバックディスク、OSディスク)は、マシンプロファイルソース(GCP VMインスタンスまたはインスタンステンプレート)のラベルを継承できます。ラベルを使用して、異なるチームが所有するインスタンス(例:team:researchやteam:analytics)を区別し、さらにコスト計算や予算編成に利用できます。ラベルの詳細については、GCPドキュメントラベルを使用したリソースの整理を参照してください。
マシンプロファイルソースを使用して、新しいカタログを作成したり、既存のカタログを更新したり、既存のVMを更新してラベルを継承させたりできます。
この機能は、永続的および非永続的なMCSマシンカタログに適用されます。
次のことができます。
- 継承されたラベルを持つカタログを作成する
- 継承されたラベルを持つ既存のカタログを更新する
- 継承されたラベルを持つ既存のVMを更新する
- VMおよびブートディスクラベルの情報を取得する
- 「VMを削除する」(#remove-a-vm)
継承されたラベルを持つカタログを作成する
VMとディスクがマシンプロファイルソースからラベルを継承するMCSマシンカタログを作成するには、次の手順を実行します。
- ラベル付きのマシンプロファイルソース(VMインスタンスまたはインスタンステンプレート)を作成します。ラベル付きVMの作成については、GCPドキュメント「ラベル付きリソースの作成」を参照してください。インスタンステンプレートはVMから作成され、VMで定義されたラベルを引き継ぎます。
- Web StudioまたはPowerShellコマンドを使用してMCSカタログを作成します。
- Web Studioを使用している場合は、イメージページで、マシンプロファイルを使用を選択し、VMまたはテンプレートを選択します。
-
PowerShellコマンドを使用する場合は、次の手順を実行します。
- PowerShellウィンドウを開きます。
- asnp citrix* コマンドを実行します。
- IDプールを作成します。IDプールは、作成されるVMのActive Directory(AD)アカウントのコンテナです。
- Active Directoryで必要なADコンピューターアカウントを作成します。
-
カタログを作成するには、
New-ProvSchemeコマンドを実行します。例:New-ProvScheme(マシンプロファイル入力としてのテンプレート)(永続カタログ):
New-ProvScheme ` -ProvisioningSchemeName "catalog-name" ` -HostingUnitUid "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -IdentityPoolUid "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -MasterImageVM "XDHyp:\HostingUnits\hosting-unit-name\vm-name.vm" ` -MachineProfile "XDHyp:\HostingUnits\hosting-unit-name\instanceTemplates.folder\instance-template-name.template" ` <!--NeedCopy-->New-ProvScheme(マシンプロファイル入力としてのインスタンステンプレート)(非永続カタログ):
New-ProvScheme ` -ProvisioningSchemeName "catalog-name" ` -HostingUnitUid "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -IdentityPoolUid "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -MasterImageVM "XDHyp:\HostingUnits\hosting-unit-name\vm-name.vm" ` -MachineProfile "XDHyp:\HostingUnits\hosting-unit-name\instanceTemplates.folder\instance-template-name.template" ` -CleanOnBoot <!--NeedCopy-->New-ProvScheme(マシンプロファイル入力としてのVMインスタンス)(永続カタログ):
New-ProvScheme ` -ProvisioningSchemeName "catalog-name" ` -HostingUnitUid "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -IdentityPoolUid "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -MasterImageVM "XDHyp:\HostingUnits\hosting-unit-name\vm-name.vm" ` -MachineProfile "XDHyp:\HostingUnits\hosting-unit-name\vm-name.vm" ` <!--NeedCopy-->New-ProvSchemeをVMインスタンスをマシンプロファイルの入力として使用する場合(非永続カタログ):
New-ProvScheme ` -ProvisioningSchemeName "catalog-name" ` -HostingUnitUid "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -IdentityPoolUid "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" ` -MasterImageVM "XDHyp:\HostingUnits\hosting-unit-name\vm-name.vm" ` -MachineProfile "XDHyp:\HostingUnits\hosting-unit-name\vm-name.vm" ` -CleanOnBoot <!--NeedCopy--> - プロビジョニングスキームをブローカーカタログとして登録します。
- カタログにVMを追加します。
継承されたラベルで既存のカタログを更新する
既存のカタログを新しいマシンプロファイルを持つように更新するには、Set-ProvSchemeコマンドを実行します。このコマンドを実行すると、カタログに追加されたすべての新しいVMは、新しいマシンプロファイルソースのラベルを持つようになります。非永続カタログは次回の電源投入時に更新されます。
以下に例を示します。
インスタンステンプレートをマシンプロファイルの入力として使用するSet-ProvScheme:
Set-ProvScheme `
-ProvisioningSchemeName "catalog-name" `
-MachineProfile "XDHyp:\HostingUnits\hosting-unit-name\instanceTemplates.folder\instance-template-name.template" `
<!--NeedCopy-->
VMインスタンスをマシンプロファイルの入力として使用するSet-ProvScheme:
Set-ProvScheme `
-ProvisioningSchemeName "catalog-name" `
-MachineProfile "XDHyp:\HostingUnits\hosting-unit-name\vm-name.vm" `
<!--NeedCopy-->
継承されたラベルで既存のVMを更新する
更新されたマシンプロファイルソースで既存のVMを更新するには、次のコマンドを実行します。
Set-ProvScheme-
Set-ProvVMUpdateTimeWindow。例:Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName <List-Of-Vm-Names> -StartsNow -DurationInMinutes -1 <!--NeedCopy--> - VMを再起動します。
VMおよびブートディスクのラベルに関する情報を取得する
VMを作成した後、AdditionalDataパラメーターを指定してGet-Itemコマンドを使用すると、VMおよびブートディスクのラベルの情報を取得できます。
VMラベルの情報を取得するには、次のコマンドを実行します。
(Get-Item XDHyp:\HostingUnits\hosting-unit-name\vm_name.vm).AdditionalData.Tags
<!--NeedCopy-->
ブートディスクラベルの情報を取得するには、次のコマンドを実行します。
(Get-Item XDHyp:\HostingUnits\hosting-unit-name\vm_name.vm\bootdisk-name.attacheddisk).AdditionalData.Tags
<!--NeedCopy-->
注:
さまざまなハイパーバイザー間で一貫性を保つため、GCPラベルを表示するために「タグ」という用語を使用しています。
VMを削除する
カタログからVMを削除するが、GCPからVMを削除しない選択ができます。この場合、CitrixラベルのみがVMから削除されます。追加された他のすべてのラベルはVMから削除されません。Web Studioを使用するか、PowerShellコマンドを使用してVMを削除できます。
ウェブスタジオの使用
- VMを選択して右クリックします。
- 削除をクリックします。
- 仮想マシンをカタログから削除するが、仮想マシンは削除しないを選択します。
PowerShellコマンドの使用
ForgetVMパラメーターを指定してRemove-ProvVMを実行します。詳細については、SDKドキュメントRemove-ProvVMを参照してください。
Google Cloud マーケットプレイス
Google Cloud MarketplaceでCitrixが提供するイメージを参照および選択して、マシンカタログを作成できます。現在、MCSはこの機能に対してマシンプロファイルワークフローのみをサポートしています。
グーグルクラウドマーケットプレイスを通じて Citrix VDA VM 製品を検索するには、https://console.cloud.google.com/marketplace にアクセスします。
カスタムイメージまたはCitrix ready®イメージをGoogle Cloud Marketplaceで使用して、マシンカタログのイメージを更新できます。
注:
マシンプロファイルにストレージタイプの情報が含まれていない場合、値はカスタムプロパティから派生します。
サポートされているGoogle Cloud Marketplaceイメージは次のとおりです。
- Windows 2019シングルセッション
- Windows 2019マルチセッション
- ウブンツ
Citrix readyイメージをマシンカタログ作成のソースとして使用する例:
New-ProvScheme -ProvisioningSchemeName GCPCatalog \
-HostingUnitName GcpHu -IdentityPoolName gcpPool -CleanOnBoot \
-MasterImageVM XDHyp:\HostingUnits\GcpHu\images.folder\citrix-daas-win2019-single-vda-v20220819.publicimage \
-MachineProfile XDHyp:\HostingUnits\GcpHu\Base.vm
<!--NeedCopy-->
次のステップ
- これが最初に作成されたカタログである場合、Web Studioはデリバリーグループの作成に誘導します。
- 構成プロセス全体を確認するには、インストールと構成を参照してください。
- カタログを管理するには、マシンカタログの管理およびGoogle Cloud Platformカタログの管理を参照してください。
詳細情報
- 接続とリソースの作成および管理
- グーグルクラウド環境への接続
- マシンカタログを作成する(/ja-jp/citrix-virtual-apps-desktops/2411/install-configure/machine-catalogs-create.html)
この記事の概要
- マスターVMインスタンスと永続ディスクを準備する
- マシンカタログを作成する
- 手動で作成されたGoogle Cloudマシンのインポート
- 共有仮想プライベートクラウド
- ゾーン選択を有効にする
- カスタマーマネージド暗号鍵 (CMEK)
- 均一なバケットレベルのアクセス互換性
- PowerShellを使用してマシンカタログを作成する
- 永続的なライトバックキャッシュディスクを持つカタログを作成する
- MCSIOで起動パフォーマンスを向上させる
- マシンプロファイルを使用してマシンカタログを作成する
- インスタンステンプレートとしてマシンプロファイルを持つマシンカタログを作成する
- PowerShellを使用してシールドされたVMでカタログを作成する
- シングルテナントノードにWindows 11 VMを作成する
- 継承されたラベルを持つVMとディスク
- Google Cloud マーケットプレイス
- 次のステップ
- 詳細情報