Citrix Virtual Apps and Desktops 7 2311

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

「(/ja-jp/citrix-virtual-apps-desktops/2311/install-configure/machine-catalogs-create.html)」では、マシンカタログを作成するウィザードについて説明します。以下の情報は、Google Cloud環境に固有の詳細を扱っています。

注:

Google Cloud Platform(GCP)カタログを作成する前に、GCPへの接続の作成を完了する必要があります。「(/ja-jp/citrix-virtual-apps-desktops/2311/install-configure/connections/connection-gcp.html)」を参照してください。

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

ヒント:

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

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

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

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

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

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

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

  • Web Studio を使用してマシンカタログを作成する(/ja-jp/citrix-virtual-apps-desktops/2311/install-configure/machine-catalogs-create/create-machine-catalog-gcp.html#create-a-machine-catalog-using-web-studio)
  • PowerShell を使用してマシンカタログを作成する(/ja-jp/citrix-virtual-apps-desktops/2311/install-configure/machine-catalogs-create/create-machine-catalog-gcp.html#create-a-machine-catalog-using-powershell)

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

注:

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

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

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

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

  3. [オペレーティングシステム] ページで、[マルチセッション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の詳細な仕様を表示してから、次へを選択します。マシンカタログに単一テナントノードグループを使用する場合は、予約済みの単一テナントノードが利用可能なゾーンをのみ選択してください。「ゾーン選択を有効にする」(#enable-zone-selection)を参照してください。

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

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

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

    注:

    カタログ名は1~39文字で、空白のみ、または文字\ / ; : # . * ? = < > | [ ] { } " ' ( ) ' )を含めることはできません。

マシンカタログの作成には時間がかかる場合があります。マシンがターゲットノードグループに作成されていることを確認するには、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リソースへのアクセスが可能になります。

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

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

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

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

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

ヒント:

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

ファイアウォールルール

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

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

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ネットワーク > 共有VPCに移動します。共有VPCページが表示され、ホストプロジェクトに含まれる共有VPCネットワークのサブネットが表示されます。
  2. 共有VPCページで、アクセスしたいサブネットを選択します。
  3. 右上隅で、メンバーを追加を選択してサービスアカウントを追加します。
  4. メンバーを追加」ページで、次の手順を実行します。
    1. 新しいメンバー」フィールドにサービスアカウントの名前を入力し、メニューからサービスアカウントを選択します。
    2. ロールを選択」フィールドを選択し、次に「Compute Network User」を選択します。
    3. 保存」を選択します。
  5. Google Cloud コンソールで、「IAM と管理」>「ロール」に移動します。
  6. ロール」ページで、「ロールを作成」を選択します。
  7. ロールを作成」ページで、ロール名を指定します。「権限を追加」を選択します。
    1. 権限を追加」ページで、ロールに権限を個別に追加します。権限を追加するには、「テーブルをフィルタリング」フィールドに権限の名前を入力します。権限を選択し、「追加」を選択します。
    2. 作成」を選択します。

ホストプロジェクトの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コンソールのナビゲーションペイン

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

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で単一テナンシーを使用する予定がある場合は、共有仮想プライベートクラウドを参照してください。

インスタンス作成時にノードアフィニティラベルを設定する

ノードアフィニティラベルを設定するには:

  1. Google Cloud コンソールで、コンピューティング エンジン > VM インスタンスに移動します。

  2. VMインスタンスページで、インスタンスを作成を選択します。

  3. インスタンスの作成ページで、必要な情報を入力または構成し、設定パネルを開くために管理、セキュリティ、ディスク、ネットワーク、単一テナンシーを選択します。

  4. 単一テナンシータブで、参照を選択して、現在のプロジェクトで利用可能なノードグループを表示します。単一テナントノードページが表示され、利用可能なノードグループのリストが表示されます。

  5. 単一テナントノードページで、リストから該当するノードグループを選択し、選択を選択して単一テナンシータブに戻ります。ノードアフィニティラベルフィールドには、選択した情報が入力されます。この設定により、インスタンスから作成されたマシンカタログが選択されたノードグループに展開されることが保証されます。

  6. 作成を選択してインスタンスを作成します。

既存のインスタンスのノードアフィニティラベルを設定する

ノードアフィニティラベルを設定するには:

  1. 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 デベロッパー ツール ドキュメントを参照してください。

  2. インスタンスの VM instance details ページに移動し、Node Affinities フィールドにラベルが入力されていることを確認します。

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

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

顧客管理の暗号化キー (CMEK)

MCS カタログには、顧客管理の暗号化キー (CMEK) を使用できます。この機能を使用する場合、Google Cloud Key Management Service の CryptoKey Encrypter/Decrypter ロールを Compute Engine Service Agent に割り当てます。Citrix Virtual Apps and Desktops アカウントは、キーが保存されているプロジェクトで適切な権限を持っている必要があります。詳細については、「Cloud KMS キーを使用してリソースを保護する」を参照してください。

Compute Engine サービス エージェントは次の形式です: service-<Project _Number>@compute-system.iam.gserviceaccount.com。この形式は、デフォルトの Compute Engine サービス アカウントとは異なります。

注:

この Compute Engine Service Account は、Google Console の IAM Permissions 表示に表示されない場合があります。そのような場合は、「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 を使用してカタログを作成する方法について詳しく説明します。

  • 永続的なライトバックキャッシュディスクを持つカタログを作成する
  • 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)

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

永続的なライトバックキャッシュディスクを持つカタログを構成するには、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を変更しようとしても、マシンカタログには影響せず、マシンがシャットダウンされたときのライトバックキャッシュディスクの永続性にも影響しません。

例として、PersistWBCプロパティをtrueに設定しながら、New-ProvSchemeをライトバックキャッシュを使用するように設定します。

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を再起動します。

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 マルチセッション
  • ウブンツ

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

次のステップ

詳細情報