Citrix Virtual Apps and Desktops 7 2402 LTSR

グーグル クラウド プラットフォーム カタログを作成する

マシンカタログの作成では、マシンカタログを作成するウィザードについて説明します。以下の情報は、Google Cloud環境に固有の詳細を扱います。

注:

Google Cloud Platform (GCP) カタログを作成する前に、GCPへの接続の作成を完了する必要があります。「Google Cloud環境への接続」を参照してください。

マスターVMインスタンスと永続ディスクを準備する

ヒント:

永続ディスクは、Google Cloudにおける仮想ディスクの用語です。

マスターVMインスタンスを準備するには、計画しているマシンカタログ内のクローンVDAインスタンスに必要な構成と一致するプロパティを持つVMインスタンスを作成および構成します。構成は、インスタンスのサイズと種類にのみ適用されるわけではありません。メタデータ、タグ、GPU割り当て、ネットワークタグ、サービスアカウントのプロパティなどのインスタンス属性も含まれます。

マスタリングプロセスの一環として、MCSはマスターVMインスタンスを使用してGoogle Cloudのインスタンステンプレートを作成します。そのインスタンステンプレートは、マシンカタログを構成するクローンVDAインスタンスの作成に使用されます。クローンインスタンスは、インスタンステンプレートが作成されたマスターVMインスタンスのプロパティ(VPC、サブネット、永続ディスクのプロパティを除く)を継承します。

マスターVMインスタンスのプロパティを特定の要件に合わせて構成した後、インスタンスを起動し、そのインスタンスの永続ディスクを準備します。

ディスクのスナップショットを手動で作成することをお勧めします。そうすることで、意味のある命名規則を使用してバージョンを追跡し、マスターイメージの以前のバージョンを管理するためのより多くのオプションが得られ、マシンカタログ作成の時間を節約できます。独自のスナップショットを作成しない場合、MCSが一時的なスナップショットを作成します(これはプロビジョニングプロセスの終了時に削除されます)。

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

マシンカタログは次の2つの方法で作成できます。

Web Studioを使用してマシンカタログを作成する

注:

マシンカタログを作成する前に、リソースを作成します。マシンカタログを構成する際は、Google Cloudで確立されている命名規則を使用してください。詳細については、「バケットとオブジェクトの命名ガイドライン」を参照してください。

マシンカタログの作成」のガイダンスに従ってください。以下の説明は、Google Cloudカタログに固有のものです。

  1. Web Studioにサインインし、左側のペインで [マシンカタログ] を選択します。

  2. アクションバーで [マシンカタログの作成] を選択します。

  3. [オペレーティングシステム] ページで、[マルチセッションOS] を選択し、[次へ] を選択します。

    • シトリックス バーチャル アプリケーションズ アンド デスクトップ™は、シングルセッションOSもサポートしています。
  4. [マシン管理] ページで、[電源管理されているマシン][Citrix Machine Creation Services™] オプションを選択し、[次へ] を選択します。複数のリソースがある場合は、メニューから1つ選択します。

  5. [イメージ] ページで、必要に応じてこれらの手順を完了し、[次へ] をクリックします。

    1. スナップショットまたはVMをマスターイメージとして選択します。専用テナンシー機能を使用する場合は、ノードグループプロパティが正しく構成されているイメージを選択してください。「ゾーン選択の有効化」を参照してください。
    2. 既存のVMをマシンプロファイルとして使用するには、[マシンプロファイルを使用] を選択し、VMを選択します。

      注:

      現在、このカタログ内のVMは、ディスク暗号化セットID、マシンサイズ、ストレージタイプ、およびゾーン設定をマシンプロファイルから継承します。

    3. カタログの最小機能レベルを選択します。専用テナンシー機能を使用する場合は、ノードグループプロパティが正しく構成されているイメージを選択してください。
  6. ストレージの種類」ページで、このマシンカタログのオペレーティングシステムを格納するために使用するストレージの種類を選択します。以下の各ストレージオプションには、固有の価格とパフォーマンス特性があります。(IDディスクは常にゾーン標準永続ディスクを使用して作成されます。)

    • 標準永続ディスク
    • バランス永続ディスク
    • SSD永続ディスク

    Google Cloudストレージオプションの詳細については、https://cloud.google.com/compute/docs/disks/を参照してください。

  7. 仮想マシン」ページで、作成するVMの数を指定し、VMの詳細な仕様を確認してから、次へを選択します。マシンカタログに単一テナントノードグループを使用する場合は、予約済みの単一テナントノードが利用可能なゾーンのみを選択してください。ゾーン選択を有効にするを参照してください。

  8. コンピューターアカウント」ページで、Active Directoryアカウントを選択し、次へを選択します。

    • 新しいActive Directoryアカウントを作成を選択した場合は、ドメインを選択し、Active Directoryで作成されるプロビジョニングされたVMコンピューターアカウントの命名スキームを表す文字のシーケンスを入力します。アカウントの命名スキームは1~64文字で構成でき、空白スペース、非ASCII文字、または特殊文字を含めることはできません。
    • 既存のActive Directoryアカウントを使用を選択した場合は、参照を選択して、選択したマシン用の既存のActive Directoryコンピューターアカウントに移動します。
  9. ドメイン資格情報」ページで、資格情報を入力を選択し、ユーザー名とパスワードを入力して、保存を選択し、次へを選択します。

    • 入力する資格情報には、Active Directoryアカウント操作を実行する権限が必要です。
  10. 概要」ページで、情報を確認し、カタログの名前を指定してから、完了を選択します。

    注:

    バージョン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つの点で異なります。

  1. ホスト接続の作成に使用されるサービスアカウントに追加の権限を付与する必要があります。このプロセスにより、MCSは共有VPCリソースにアクセスして使用できるようになります。
  2. イングレス用とエグレス用にそれぞれ1つずつ、2つのファイアウォールルールを作成する必要があります。これらのファイアウォールルールは、イメージマスタリングプロセス中に使用されます。

新しい権限が必要

ホスト接続を作成する際には、特定の権限を持つGoogle Cloudサービスアカウントが必要です。これらの追加権限は、共有VPCベースのホスト接続を作成するために使用されるすべてのサービスアカウントに付与する必要があります。

ヒント:

これらの追加権限は、Citrix Virtual Apps and Desktopsにとって新しいものではありません。これらはローカルVPCの実装を容易にするために使用されます。共有VPCでは、これらの追加権限により、他の共有VPCリソースへのアクセスが可能になります。

共有VPCをサポートするために、ホスト接続に関連付けられたサービスアカウントに最大4つの追加権限を付与する必要があります。

  1. compute.firewalls.list - この権限は必須です。これにより、MCSは共有VPCに存在するファイアウォールルールのリストを取得できます。
  2. compute.networks.list - この権限は必須です。これにより、MCSはサービスアカウントが利用できる共有VPCネットワークを識別できます。
  3. compute.subnetworks.list – この権限は、VPCの使用方法によってオプションです。これにより、MCSは可視の共有VPC内のサブネットを識別できます。この権限は、ローカルVPCを使用する際にはすでに必要ですが、共有VPCホストプロジェクトでも割り当てる必要があります。
  4. compute.subnetworks.use - この権限は、VPCの使用方法によってオプションです。プロビジョニングされたマシンカタログでサブネットリソースを使用するために必要です。この権限は、ローカルVPCを使用する際にはすでに必要ですが、共有VPCホストプロジェクトでも割り当てる必要があります。

これらの権限を使用する場合、マシンカタログの作成に使用される権限の種類に基づいて異なるアプローチがあることを考慮してください。

  • プロジェクトレベルの権限:
    • ホストプロジェクト内のすべての共有VPCへのアクセスを許可します。
    • 権限 #3 と #4 をサービスアカウントに割り当てる必要があります。
  • サブネットレベルの権限:
    • 共有VPC内の特定のサブネットへのアクセスを許可します。
    • 権限 #3 と #4 はサブネットレベルの割り当てに固有のものであるため、サービスアカウントに直接割り当てる必要はありません。

組織のニーズとセキュリティ標準に合ったアプローチを選択してください。

ヒント:

プロジェクトレベルとサブネットレベルの権限の違いに関する詳細については、Google Cloud ドキュメントを参照してください。

ファイアウォールルール

マシンカタログの準備中に、カタログのマスターイメージシステムディスクとして機能するマシンイメージが準備されます。このプロセスが発生すると、ディスクは一時的に仮想マシンに接続されます。このVMは、すべてのインバウンドおよびアウトバウンドネットワークトラフィックを防止する分離された環境で実行する必要があります。これは、イングレス用とエグレス用の2つのすべて拒否ファイアウォールルールによって実現されます。Google CloudローカルVPCを使用する場合、MCSはこのファイアウォールをローカルネットワークに作成し、マスタリング用のマシンに適用します。マスタリングが完了すると、ファイアウォールルールはイメージから削除されます。

共有VPCを使用するために必要な新しい権限の数を最小限に抑えることをお勧めします。共有VPCはより上位の企業リソースであり、通常、より厳格なセキュリティプロトコルが導入されています。このため、ホストプロジェクトの共有VPCリソースに、イングレス用とエグレス用のファイアウォールルールを1組作成します。それらに最高の優先順位を割り当てます。これらの各ルールに、次の値を使用して新しいターゲットタグを適用します。

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をホスト接続として追加する前に、プロビジョニングする予定のプロジェクトからサービスアカウントを追加するために、次の手順を完了してください。

  1. IAMロールを作成します。
  2. CVADホスト接続の作成に使用するサービスアカウントを、共有VPCホストプロジェクトのIAMロールに追加します。
  3. プロビジョニングする予定のプロジェクトからCloud Buildサービスアカウントを、共有VPCホストプロジェクトのIAMロールに追加します。
  4. ファイアウォールルールを作成します。

IAMロールを作成する

ロールのアクセスレベルを決定します — プロジェクトレベルアクセス、またはサブネットレベルアクセスを使用するより制限されたモデル。

IAMロールのプロジェクトレベルアクセス。プロジェクトレベルのIAMロールには、次の権限を含めます。

  • コンピュート.ファイアウォールズ.リスト
  • コンピュート.ネットワークス.リスト
  • コンピューティング.サブネットワーク.一覧表示
  • コンピューティング.サブネットワーク.使用

プロジェクトレベルのIAMロールを作成するには:

  1. Google Cloudコンソールで、IAMと管理 > ロールに移動します。
  2. ロールページで、ロールを作成を選択します。
  3. ロールを作成ページで、ロール名を指定します。権限を追加を選択します。
    1. 権限を追加ページで、ロールに権限を個別に追加します。権限を追加するには、テーブルをフィルタリングフィールドに権限の名前を入力します。権限を選択し、追加を選択します。
    2. 作成を選択します。

サブネットレベルのIAMロール。このロールは、ロールを作成を選択した後、権限compute.subnetworks.listcompute.subnetworks.useの追加を省略します。このIAMアクセスレベルの場合、権限compute.firewalls.listcompute.networks.listを新しいロールに適用する必要があります。

サブネットレベルのIAMロールを作成するには:

  1. Google Cloudコンソールで、VPC network > Shared VPCに移動します。Shared VPCページが表示され、ホストプロジェクトに含まれるShared VPCネットワークのサブネットが表示されます。
  2. Shared VPCページで、アクセスしたいサブネットを選択します。
  3. 右上隅で、サービスアカウントを追加するためにADD MEMBERを選択します。
  4. Add membersページで、次の手順を完了します。
    1. New membersフィールドにサービスアカウントの名前を入力し、メニューからサービスアカウントを選択します。
    2. ロールを選択」フィールドを選択し、次に「Compute Network ユーザー」を選択します。
    3. SAVEを選択します。
  5. Google Cloud コンソールで、「IAM と管理」>「ロール」に移動します。
  6. ロール」ページで、「ロールを作成」を選択します。
  7. Create Roleページで、ロール名を指定します。ADD PERMISSIONSを選択します。
    1. Add permissionsページで、ロールに個別に権限を追加します。権限を追加するには、Filter tableフィールドに権限の名前を入力します。その権限を選択し、ADDを選択します。
    2. CREATEを選択します。

ホストプロジェクトのIAMロールにサービスアカウントを追加する

IAMロールを作成した後、ホストプロジェクトのサービスアカウントを追加するために次の手順を実行します。

  1. Google Cloud コンソールで、ホストプロジェクトに移動し、IAM と管理 > IAM に移動します。
  2. IAM ページで、サービスアカウントを追加するために 追加 を選択します。
  3. メンバーの追加 ページで:
    1. 新しいメンバー フィールドに、サービスアカウントの名前を入力し、メニューからサービスアカウントを選択します。
    2. ロールフィールドを選択し、作成した IAM ロールを入力し、メニューからそのロールを選択します。
    3. 保存 を選択します。

サービスアカウントがホストプロジェクト用に構成されました。

クラウドビルドサービスアカウントを共有 VPC に追加する

すべての Google Cloud サブスクリプションには、プロジェクト ID 番号の後に cloudbuild.gserviceaccount が続く名前のサービスアカウントがあります。例: 705794712345@cloudbuild.gserviceaccount

Google Cloud コンソールで ホームダッシュボード を選択すると、プロジェクトのプロジェクト ID 番号を確認できます。

Google Cloud コンソールのナビゲーションペイン (/ja-jp/citrix-virtual-apps-desktops/2402-ltsr/media/gcp-console-navigation-pane.png)

画面の プロジェクト情報 エリアの下にある プロジェクト番号 を見つけます。

Cloud Build サービスアカウントを共有 VPC に追加するには、次の手順を実行します。

  1. Google Cloud コンソールで、ホストプロジェクトに移動し、IAM と管理 > IAM に移動します。
  2. 権限 ページで、アカウントを追加するために 追加 を選択します。
  3. メンバーを追加」ページで、次の手順を実行します。
    1. 新しいメンバー」フィールドにCloud Buildサービスアカウントの名前を入力し、メニューでサービスアカウントを選択します。
    2. ロールを選択」フィールドを選択し、Computer Network Userと入力して、メニューでロールを選択します。
    3. 保存」を選択します。

ファイアウォールルールを作成する

マスタリングプロセスの一環として、MCSは選択されたマシンイメージをコピーし、それを使用してカタログ用のマスターイメージシステムディスクを準備します。マスタリング中、MCSはディスクを一時的な仮想マシンに接続し、その仮想マシンが準備スクリプトを実行します。このVMは、すべてのインバウンドおよびアウトバウンドのネットワークトラフィックを禁止する隔離された環境で実行する必要があります。隔離された環境を作成するために、MCSは2つのすべて拒否のファイアウォールルール(イングレスルールとイーグレスルール)を必要とします。したがって、ホストプロジェクトに次の2つのファイアウォールルールを作成します。

  1. Google Cloud コンソールで、ホストプロジェクトに移動し、次にVPC ネットワーク > ファイアウォールに移動します。
  2. ファイアウォール」ページで、「ファイアウォールルールを作成」を選択します。
  3. ファイアウォールルールを作成」ページで、以下を完了します。
    • 名前。ルールに名前を入力します。
    • ネットワーク。イングレスファイアウォールルールを適用する共有VPCネットワークを選択します。
    • 優先度。値が小さいほど、ルールの優先度が高くなります。小さい値(例: 10)をお勧めします。
    • トラフィックの方向。「イングレス」を選択します。
    • 一致時のアクション。「拒否」を選択します。
    • ターゲット。デフォルトの「指定されたターゲットタグ」を使用します。
    • ターゲットタグcitrix-provisioning-quarantine-firewallと入力します。
    • ソースフィルター。デフォルトのIP範囲を使用します。
    • ソースIP範囲。すべてのトラフィックに一致する範囲を入力します。0.0.0.0/0と入力します。
    • プロトコルとポート。「すべて拒否」を選択します。
  4. 作成」を選択してルールを作成します。
  5. 手順1~4を繰り返して別のルールを作成します。「トラフィックの方向」で「送信」を選択します。

接続を追加する

Google Cloud環境への接続を追加します。接続を追加するを参照してください。

ゾーン選択を有効にする

Citrix Virtual Apps and Desktopsはゾーン選択をサポートしています。ゾーン選択を使用すると、VMを作成するゾーンを指定できます。ゾーン選択を使用すると、管理者は選択したゾーンに単一テナントノードを配置できます。単一テナンシーを構成するには、Google Cloudで以下を完了する必要があります。

  • Google Cloud単一テナントノードを予約する
  • VDAマスターイメージを作成する

Google Cloud単一テナントノードの予約

単一テナントノードを予約するには、Google Cloudのドキュメントを参照してください。

重要:

ノードテンプレートは、ノードグループに予約されているシステムのパフォーマンス特性を示すために使用されます。これらの特性には、vGPUの数、ノードに割り当てられるメモリ量、およびノード上に作成されるマシンに使用されるマシンタイプが含まれます。詳細については、Google Cloudのドキュメントを参照してください。

VDAマスターイメージの作成

シングルテナントノードにマシンを正常に展開するには、マスターVMイメージを作成する際に追加の手順を実行する必要があります。Google Cloud上のマシンインスタンスには、ノードアフィニティラベルと呼ばれるプロパティがあります。シングルテナントノードに展開されるカタログのマスターイメージとして使用されるインスタンスには、ターゲットノードグループの名前と一致するノードアフィニティラベルが必要です。これを実現するには、次の点に留意してください。

注:

共有VPCでシングルテナンシーを使用する場合は、共有仮想プライベートクラウドを参照してください。

マシンカタログの作成

ノードアフィニティラベルを設定した後、マシンカタログを構成します。

顧客管理の暗号化キー (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コンソールのIAM権限表示に表示されない場合があります。そのような場合は、Cloud KMSキーを使用してリソースを保護するで説明されているように、gcloudコマンドを使用してください。

シトリックス仮想アプリおよびデスクトップアカウントに権限を割り当てる

Google Cloud KMS の権限はさまざまな方法で構成できます。プロジェクトレベルのKMS権限またはリソースレベルのKMS権限のいずれかを指定できます。詳細については、権限とロールを参照してください。

プロジェクトレベルの権限

1つのオプションは、Citrix Virtual Apps and Desktopsアカウントに、Cloud KMSリソースを参照するためのプロジェクトレベルの権限を付与することです。これを行うには、カスタムロールを作成し、次の権限を追加します。

  • cloudkms.keyRings.list
  • cloudkms.keyRings.get
  • cloudkms.cryptokeys.list
  • cloudkms.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 CustomPropertiesCryptoKeyIdプロパティを指定します。例:

'<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

たとえば、ID my-example-project-1 のプロジェクトで、リージョン us-east1 のキーリング my-example-key-ring にあるキー my-example-key を使用する場合、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 を使用してカタログを作成する方法について詳しく説明します。

  • 永続的なライトバックキャッシュディスクを持つカタログを作成する(#create-a-catalog-with-persistent-write-back-cache-disk)
  • MCSIOで起動パフォーマンスを向上させる(#improve-boot-performance-with-mcsio)
  • マシンプロファイルを使用してマシンカタログを作成する(#create-a-machine-catalog-using-a-machine-profile)
  • インスタンステンプレートとしてマシンプロファイルを持つマシンカタログを作成する(#create-a-machine-catalog-with-machine-profile-as-an-instance-template)
  • PowerShellを使用してシールドされたVMを持つカタログを作成する(#use-powershell-to-create-a-catalog-with-shielded-vm)
  • 専用テナントノードにWindows 11 VMを作成する(#create-windows-11-vms-on-the-sole-tenant-node)

永続的なライトバックキャッシュディスクを持つカタログを作成する

永続的なライトバックキャッシュディスクを持つカタログを構成するには、PowerShellパラメーター New-ProvScheme CustomProperties を使用します。

ヒント:

ここでPowerShellパラメーターを使用するのは、クラウドベースのホスティング接続の場合のみです。オンプレミスソリューション(例: XenServer®)で永続的なライトバックキャッシュディスクを使用してマシンをプロビジョニングする場合、ディスクは自動的に永続化されるため、PowerShellは必要ありません。

このパラメーターは、MCSでプロビジョニングされたマシンに対してライトバックキャッシュディスクがどのように永続化されるかを決定するために使用される追加プロパティ PersistWBC をサポートします。PersistWBC プロパティは、UseWriteBackCache パラメーターが指定され、かつディスクが作成されることを示すように WriteBackCacheDiskSize パラメーターが設定されている場合にのみ使用されます。

注:

この動作は、AzureとGCPの両方に適用されます。これらの環境では、電源サイクル時にデフォルトのMCSIOライトバックキャッシュディスクが削除され、再作成されます。ディスクを永続化することを選択することで、MCSIOライトバックキャッシュディスクの削除と再作成を回避できます。

Citrix Virtual Apps and Desktops管理者が管理インターフェイスからマシンをシャットダウンしても、PersistWBC プロパティを true に設定すると、ライトバックキャッシュディスクは削除されません。

Citrix Virtual Apps and Desktops管理者が管理インターフェイスからマシンをシャットダウンすると、PersistWBC プロパティを false に設定すると、ライトバックキャッシュディスクが削除されます。

注:

PersistWBCプロパティが省略されている場合、プロパティはfalseにデフォルト設定され、管理インターフェイスからマシンがシャットダウンされると、ライトバックキャッシュが削除されます。

たとえば、CustomPropertiesパラメーターを使用してPersistWBCtrueに設定するには、

<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-ProvScheme PowerShellコマンドレットを使用してのみ設定できます。作成後にプロビジョニングスキームの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またはスナップショットからキャプチャされます。 たとえば、StorageTypeCatalogZonesCryptoKeyIs など、明示的に定義する一部のプロパティは、マシンプロファイルから無視されます。

  • マシンプロファイルを使用してカタログを作成するには、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の軽量リソースであるため、非常に費用対効果が高いです。

マシンプロファイルをインスタンステンプレートとして使用して新しいマシンカタログを作成する

  1. PowerShellウィンドウを開きます。
  2. Citrix固有のPowerShellモジュールをロードするには、asnp citrix* を実行します。
  3. 次のコマンドを使用して、GCPプロジェクト内のインスタンステンプレートを見つけます。

    cd XDHyp:\HostingUnits\<HostingUnitName>\instanceTemplates.folder
    <!--NeedCopy-->
    
  4. 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/ を参照してください。

  5. PowerShellコマンドを使用してマシンカタログの作成を完了します。Remote PowerShell SDKを使用してカタログを作成する方法については、https://developer-docs.citrix.com/projects/citrix-virtual-apps-desktops-sdk/en/latest/creating-a-catalog/ を参照してください。

既存のマシンカタログのマシンプロファイルをインスタンステンプレートに変更する

既存のマシンカタログのマシンプロファイルをインスタンステンプレートに変更する詳細な手順は次のとおりです。

  1. PowerShellウィンドウを開きます。
  2. Citrix固有のPowerShellモジュールをロードするには、asnp citrix* を実行します。
  3. 次のコマンドを実行します。

    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マシンカタログを作成するには。

  1. Google CloudコンソールでVMインスタンスのシールドされたVMオプションを有効にします。「クイックスタート: シールドされたVMオプションを有効にする」を参照してください。
  2. VMインスタンスを使用して、マシンプロファイルワークフローでMCSマシンカタログを作成します。

    1. PowerShellウィンドウを開きます。
    2. Citrix固有のPowerShellモジュールをロードするには、asnp citrix*を実行します。
    3. まだ作成されていない場合は、IDプールを作成します。
    4. 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-->
      
  3. マシンカタログの作成を完了します。

新しいマシンプロファイルでマシンカタログを更新するには:

  1. 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 コマンドを実行します。

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

    Set-ProvVMUpdateTimeWindow -ProvisioningSchemeName my-catalog -VMName <List-Of-Vm-Names> -StartsNow -DurationInMinutes -1
    <!--NeedCopy-->
    
  2. VMを再起動します。

単一テナントノード上にWindows 11 VMを作成する

GCPでWindows 11 VMを作成できます。ただし、マスターイメージにWindows 11をインストールする場合は、マスターイメージ作成プロセス中にvTPMを有効にする必要があります。また、マシンプロファイルソース(VMまたはインスタンステンプレート)でもvTPMを有効にする必要があります。

単一テナントノード上にWindows 11 VMを作成するための主要な手順は次のとおりです。

  1. Google Cloud仮想化環境をセットアップします。詳細については、Google Cloud environments を参照してください。
  2. VDAをインストールします。Install VDAs を参照してください。
  3. Google Cloud環境への接続を作成します。詳細については、Google Cloud環境への接続 を参照してください。
  4. Windows 11 Bring Your Own License (BYOL) マスターイメージを作成し、そのイメージをGoogle Cloudにインポートします。Windows 11 BYOL マスターイメージの作成 を参照してください。
  5. マシンプロファイルソースを作成します: 単一テナントノード上にVMをプロビジョニングし、ソースマシンプロファイルのvTPMを有効にします。Provision VM on sole-tenant node を参照してください。
  6. vTPMが有効なWindows 11マシンプロファイルソースを使用してMCSマシンカタログを作成します。マシンプロファイルソースは、単一テナントノードで説明されているものと同じインスタンスタイプである必要があります。Create an MCS machine catalog using the Windows 11 machine profile source を参照してください。

Windows 11 BYOLマスターイメージを作成する

Windows 11 BYOLマスターイメージを作成し、そのマスターイメージをGoogle Cloudにインポートするには、2つのオプションがあります。

  • Google Cloud のクラウドビルドツールを使用する
  • 他のハイパーバイザーでマスターイメージを作成する

Google Cloud のクラウドビルドツールを使用する

  1. Windows 11 ISO、GCP SDK、.NET framework、およびPowerShellインストーラーファイルをGCPストレージバケットにアップロードします。
  2. クラウドビルド.yamlファイル内のファイル場所をパラメーターとして指定します。
  3. コマンドラインから以下の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イメージの作成」を参照してください。

他のハイパーバイザーでマスターイメージを作成する

  1. 他のハイパーバイザーを使用してWindows 11マスターイメージを作成します。
  2. マスターイメージをOVF形式でローカルマシンにエクスポートします。
  3. ローカルのgcloud CLIを使用して、OVFファイルをGCPストレージバケットにアップロードします。

    gsutil cp LOCAL_IMAGE_PATH_OVF_FILES gs://BUCKET_NAME/
    <!--NeedCopy-->
    
  4. コマンドラインから以下の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をプロビジョニングする」を参照してください。

注:

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を確認できます。

Google Cloud マーケットプレイス

マシンカタログを作成するために、Google Cloud MarketplaceでCitrixが提供するイメージを参照して選択できます。現在、MCSはこの機能に対してマシンプロファイルワークフローのみをサポートしています。

Google Cloud Marketplaceを通じてCitrix VDA VM製品を検索するには、https://console.cloud.google.com/marketplaceにアクセスしてください。

Google Cloud MarketplaceでカスタムイメージまたはCitrix ready®イメージを使用して、マシンカタログのイメージを更新できます。

注:

マシンプロファイルにストレージタイプ情報が含まれていない場合、その値はカスタムプロパティから派生します。

サポートされているGoogle Cloud Marketplaceイメージは次のとおりです。

  • Windows 2019 シングルセッション
  • Windows 2019 マルチセッション
  • Ubuntu (ウブントゥ)

マシンカタログ作成のソースとして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-->

次のステップ

詳細情報

  • 接続とリソースの作成および管理(/ja-jp/citrix-virtual-apps-desktops/2402-ltsr/install-configure/connections.html)
  • グーグルクラウド環境への接続(/ja-jp/citrix-virtual-apps-desktops/2402-ltsr/install-configure/connections/connection-gcp.html)
  • マシンカタログの作成(/ja-jp/citrix-virtual-apps-desktops/2402-ltsr/install-configure/machine-catalogs-create.html)