Citrix Virtual Apps and Desktopsサービス

Google Cloud Platform仮想化環境

Citrix Virtual Apps and Desktopsサービスを使用すると、Google Cloud Platform(GCP)でマシンをプロビジョニングおよび管理できます。この記事では、Machine Creation Services(MCS)を使用して、Citrix Virtual AppsまたはCitrix Virtual Desktopsサービス展開で仮想マシンをプロビジョニングする方法を説明します。

要件

  • Citrix Cloudアカウント。この記事で説明する機能は、Citrix Cloudでのみ使用できます。
  • Citrix Virtual Apps and Desktopsサービスのサブスクリプション。詳しくは、「導入」を参照してください。
  • GCPプロジェクト。このプロジェクトには、マシンカタログに関連付けられたすべてのコンピューティングリソースが格納されます。既存のプロジェクトでも新しいプロジェクトでもかまいません。
  • Google Cloudプロジェクトで4つのAPIを有効にします。詳しくは、「Google Cloud APIの有効化」を参照してください。
  • GCPサービスアカウント。サービスアカウントは、プロジェクトへのアクセスを可能にするために、Google Cloudに対して認証されます。詳しくは、「Google Cloudサービスアカウントの構成」を参照してください。
  • Googleプライベートアクセスの有効化。詳しくは、「プライベートGoogleアクセスの有効化」を参照してください。

Google Cloud APIの有効化

Citrix StudioでGoogle Cloud機能を使用するには、Google Cloudプロジェクトで次のAPIを有効にします:

  • Compute Engine API
  • Cloud Resource Manager API
  • Identity and Access Management(IAM)API
  • Cloud Build API

GCPコンソールで、次の手順を実行します:

  1. 左上隅のメニューで [APIとサービス]>[ダッシュボード] を選択します。

    [APIとサービス]、[ダッシュボード]の選択の図

  2. [ダッシュボード] 画面で、Compute Engine APIが有効になっていることを確認します。有効になっていない 場合、次の手順を実行します:

    1. [APIとサービス]>[ライブラリ] の順に選択します。

      [APIとサービス]、[ライブラリ]の図

    2. 検索ボックスに 「Compute Engine」 と入力します。

    3. 検索結果から、[Compute Engine API] をクリックします。

    4. [Compute Engine API] ページで、[Enable] をクリックします。

  3. Cloud Resource Manager APIを有効にします。

    1. [APIとサービス]>[ライブラリ] の順に選択します。

    2. 検索ボックスに 「Cloud Resource Manager」 と入力します。

    3. 検索結果から、[Cloud Resource Manager API] をクリックします。

    4. [Cloud Resource Manager API] ページで、[Enable] をクリックします。APIのステータスが表示されます。

  4. 同様に、[Identity and Access Management(IAM)API] および [Cloud Build API] を有効にします。

Google Cloudサービスアカウントの構成

Google Cloudサービスアカウントを使用すると、GCPプロジェクト内でリソースを作成および管理できます。この記事で説明されているように、マシンをプロビジョニングおよび管理するには、Google Cloudサービスアカウントが必要です。Google Cloudアカウントは、Google Cloudによって生成されたkeyを使用して、Citrix Cloudに対して認証されます。各アカウント(個人またはサービス)には、プロジェクトの管理を定義するさまざまなロールが含まれています。

サービスアカウントを作成することをお勧めします。そのためには、次の手順を実行します:

  1. GCPコンソールで、[IAM & Admin]>[Service accounts] の順に選択します。

  2. [Service Accounts] ページで、[CREATE SERVICE ACCOUNT] をクリックします。

  3. [Create service account] ページで必要な情報を入力してから、[CREATE] をクリックします。

サービスアカウントを作成するときは、次の点を考慮してください:

  • [CANCEL] をクリックして、[Grant this service account access to project] ページおよび [Grant users access to this service account] ページを完了せずに [Service account details] ページを保存して終了することができます。これらのオプションの手順は後で実行できます。

  • これらのオプションの構成手順をスキップする場合、新しく作成されたサービスアカウントは [IAM & Admin]>[IAM] ページには表示されません。

  • サービスアカウントに関連付けられている役割を表示するには、オプションの手順をスキップせずに役割を追加します。このプロセスにより、構成されたサービスアカウントの役割が確実に表示されます。

サービスアカウントを作成する場合は、そのアカウントのキーを作成することを選択できます。Citrix Studioで接続を作成するときにこのキーが必要です。キーは資格情報ファイル(.json)に含まれています。キーを作成すると、ファイルが自動的にダウンロードされ、「ダウンロード」フォルダーに保存されます。キーを作成するときは、必ずキータイプをJSONに設定してください。それ以外の場合、Studioは解析できません。

ヒント:

GCPコンソールの[Service accounts] ページを使用してキーを作成します。セキュリティのために、キーを定期的に変更することをお勧めします。既存のGCP接続を編集することで、Citrix Virtual Apps and Desktopsアプリケーションに新しいキーを提供できます。

また、GCPプロジェクトにアクセスするために必要な権限をサービスアカウントに付与する必要があります。そのためには、次の手順を実行します:

  1. GCPコンソールで、[IAM & admin]>[IAM] の順に選択します。

  2. [IAM] ページで、作成したサービスアカウントを検索し、鉛筆アイコンをクリックしてサービスアカウントを編集します。

  3. [Edit permissions] ページで、[ADD ANOTHER ROLE] をクリックしてサービスアカウントに次の役割を1つずつ追加し、[SAVE] をクリックします。

    • コンピューティング管理者
    • ストレージ管理者
    • Cloud Buildエディター
    • サービスアカウントユーザー
    • クラウドデータストアユーザー
  4. プロジェクトのCloud Buildサービスアカウントに割り当てられている役割を更新します。

    1. GCPコンソールで、[IAM & admin]>[IAM] の順に選択します。
    2. [IAM] ページで、Cloud Buildサービスアカウントを検索し、鉛筆アイコンをクリックしてサービスアカウントを編集します。Cloud Buildサービスアカウントは、次の形式のユーザー名で識別できます:<your_gcp_project_ID_number>@cloudbuild.gserviceaccount.com
    3. [Edit permissions] ページで、[ADD ANOTHER ROLE] をクリックしてCloud Buildサービスアカウントに次の役割を1つずつ追加し、[SAVE] をクリックします。
      • Cloud Buildサービスアカウント
      • コンピューティングインスタンス管理者
      • サービスアカウントユーザー

プライベートGoogleアクセスの有効化

重要:

この機能は段階的に展開されています。アカウントではまだ有効化されていない可能性があります。

ネットワークインターフェイスに割り当てられた外部IPアドレスがVMにない場合、パケットは他の内部IPアドレスの宛先にのみ送信されます。プライベートアクセスを有効にすると、VMはGoogle APIおよび関連サービスで使用される外部IPアドレスのセットに接続します。サブネット内のVMが、MCSプロビジョニング用のパブリックIPアドレスなしでGoogle APIにアクセスできるようにするには:

  1. GCPで、[VPCネットワーク構成]にアクセスします。
  2. [サブネットの詳細]画面で、[プライベートGoogleアクセス]をオンにします。

プライベートGoogleアクセス

詳しくは、プライベートGoogleアクセスの構成を参照してください。

重要:

インターネットへのVMアクセスを防止するようにネットワークが構成されている場合は、VMが接続されているサブネットに対してプライベートGoogleアクセスを有効にすることに関連するリスクを、組織が想定していることを確認してください。

接続の追加

Citrix Studioで、「接続とリソースの作成」の手順に従ってください。次の説明は、Citrix Studioでホスティング接続を設定する手順を示しています:

  1. [管理] タブのナビゲーションペインで、[構成]>[ホスト] の順に選択します。

  2. [操作] ペインの [接続およびリソースの追加] をクリックします。

  3. [接続] ページで、[新しい接続を作成する][Studioツール] を選択してから [次へ] をクリックします。

    • 接続の種類。メニューから [Google Cloud Platform] を選択します。
    • サービスアカウントキー。Google資格情報ファイル(.json)に含まれるキーをインポートします。これを行うには、資格情報ファイルを検索し、メモ帳(または任意のテキストエディター)でファイルを開き、コンテンツをコピーします。その後、[接続] ページに戻り、[キーのインポート] をクリックし、コンテンツを貼り付けてから [OK] をクリックします。
    • サービスアカウント ID。フィールドには、インポートしたキーの情報が自動的に入力されます。
    • 接続名。接続名を入力します。
  4. [リージョン] ページで、メニューからプロジェクト名を選択し、使用するリソースを含むリージョンを選択して、[次へ] をクリックします。

  5. [ネットワーク] ページで、リソースの名前を入力し、メニューから仮想ネットワークを選択し、サブセットを選択してから [次へ] をクリックします。Studioでこのリージョンとネットワークの組み合わせを識別するためのわかりやすいリソース名を指定してください。名前に (Shared) サフィックスが付加された仮想ネットワークは、共有VPCを表しています。共有VPCにサブネットレベルのIAM役割を設定する場合、共有VPCの特定のサブネットのみがサブネットリストに表示されます。

    注:

    -  リソース名は1~64文字にし、空白スペースのみにしたり記号(`\ / ; : # . * ? = < > | [ ] { } " ' ( ) ' )`)を含めたりすることはできません。
    
  6. [概要] ページで情報を確認してから、[完了] をクリックし、[接続およびリソースの追加] ウィンドウを終了します。

接続とリソースを作成すると、Studioは作成した接続とリソースを一覧表示します。接続を構成するには、接続を選択してから、[操作] ペインで該当するオプションをクリックします。

同様に、接続の下で作成されたリソースを削除、名前変更、またはテストすることを選択できます。これを行うには、接続の下のリソースを選択してから、[操作] ペインの該当するオプションをクリックします。

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

ヒント:

永続ディスクは、仮想ディスクのGCP用語です。

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

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

マスター仮想マシンインスタンスのプロパティを仕様に合わせて構成した後、インスタンスを起動し、インスタンスの永続ディスクを準備します。

ディスクのスナップショットを手動で作成することをお勧めします。これにより、意味のある命名規則を使用してバージョンを追跡でき、マスターイメージの以前のバージョンを管理するためのオプションが増え、マシンカタログの作成時間を節約できます。独自のスナップショットを作成しない場合、MCSがスナップショットを作成します。これを使用して、GCPイメージライブラリにカスタムイメージを作成できます。

マシンカタログの作成

注:

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

Citrix Studioで、「マシンカタログの作成」の手順に従ってください。次の説明は、GCPのカタログに固有の説明です。

  1. [管理] タブのStudioのナビゲーションペインで、[マシンカタログ] を選択します。

  2. [操作] ペインの [マシンカタログの作成] をクリックします。

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

    • Citrix Virtual Apps and Desktopsサービスでは単一セッションOSもサポートしています。
  4. [マシン管理] ページで、[電源管理されているマシン] および [Citrix Machine Creation Services] オプションを選択してから [次へ] をクリックします。複数のリソースがある場合は、メニューから1つ選択してください。

  5. [マスターイメージ] ページで、VMとカタログの最小機能レベルを選択してから [次へ] をクリックします。単一テナント機能を使用する場合は、必ずノードグループプロパティが正しく構成されているイメージを選択してください。「ゾーン選択の有効化」を参照してください。

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

  7. [コンピューターアカウント] ページで、Active Directoryアカウントを選択してから [次へ] をクリックします。

    • [新しいActive Directoryアカウントを作成する] を選択する場合、ドメインを選択してからActive Directoryで作成されたプロビジョニング済みのVMコンピューターアカウントで名前付けスキームに対応した文字列を入力します。アカウント名前付けスキームに指定できる文字数は1~64文字であり、空白スペース、非ASCII文字、および特殊文字を含めることはできません。
    • [既存のActive Directoryアカウントを使用する] を選択した場合、[参照] をクリックし、選択したマシンの既存のActive Directoryコンピューターアカウントに移動します。
  8. [ドメイン資格情報] ページで、[資格情報の入力] をクリックし、ユーザー名とパスワードを入力し、[OK] をクリックしてから [次へ] をクリックします。

    • 入力する資格情報には、Active Directoryアカウント操作を実行する権限が必要です。
  9. [スコープ] ページで、マシンカタログのスコープを選択してから、[次へ] をクリックします。

    • オプションのスコープを選択するか、必要に応じてスコープをカスタマイズするためのカスタムスコープをクリックすることができます。
  10. [概要] ページで、情報を確認し、カタログの名前を指定してから、[完了] をクリックします。

    注:

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

マシンカタログの作成が完了するまでに時間がかかる場合があります。その後、Studioは作成したカタログを一覧表示します。GCPコンソールで、ターゲットノードグループにマシンが作成されていることを確認できます。

カタログへのマシンの追加

マシンをカタログに追加するには、次の手順を実行します:

  1. Studioのナビゲーションペインで [マシンカタログ] を選択します。

  2. マシンを追加するマシンカタログを選択します。

  3. [操作] ペインで、[マシンの追加] をクリックします。

  4. [仮想マシン] ページで、追加するマシンの数を指定し、[次へ] をクリックします。

  5. [コンピューターアカウント] ページで、Active Directoryアカウントを選択してから [次へ] をクリックします。

  6. [ドメイン資格情報] ページで、[資格情報の入力] をクリックし、ユーザー名とパスワードを入力し、[OK] をクリックしてから [次へ] をクリックします。

  7. [概要] ページで情報を確認してから、[完了] をクリックします。

マシンの更新

この機能は、マスターイメージまたは最小機能レベルを更新する場合に役立ちます。

マシンを更新するには、次の手順を実行します:

  1. Studioのナビゲーションペインで [マシンカタログ] を選択します。

  2. 更新するマシンを含むマシンカタログを選択します。

  3. [操作] ペインで、[マシンの更新] をクリックします。

  4. [マスターイメージ] ページで、VMとカタログの最小機能レベルを選択してから [次へ] をクリックします。

  5. [ロールアウト方法] ページで、マシンを更新するタイミングを指定し、[次へ] をクリックします。

  6. [概要] ページで情報を確認してから、[完了] をクリックします。

マシンの更新をロールバックするには、次の手順を実行します:

重要:

マスターイメージの名前変更、削除、または移動は行わないでください。さもないと、更新をロールバックできません。

  1. Studioのナビゲーションペインで [マシンカタログ] を選択します。

  2. マシンの更新をロールバックするマシンカタログを選択します。

  3. [操作] ペインで、[マシン更新のロールバック] をクリックします。

  4. [概要] ページで情報を確認してから [次へ] をクリックします。

  5. [ロールアウト方法] ページで、ロールアウト方法を構成し、[次へ] をクリックします。

  6. [概要] ページで情報を確認してから、[完了] をクリックします。

電源の管理

Citrix Virtual Apps and Desktopsサービスにより、GCPマシンの電源管理が可能になります。ナビゲーションペインの [検索] ノードを使用して、電源管理するマシンを検索します。次の電源操作が使用可能です:

  • 削除
  • 起動
  • 再起動
  • 強制再起動
  • シャットダウン
  • 強制シャットダウン
  • デリバリーグループに追加
  • タグの管理
  • メンテナンスモードをオンにする

Autoscaleを使用してGCPマシンの電源を管理することもできます。これを行うには、GCPマシンをデリバリーグループに追加し、そのデリバリーグループのAutoscaleを有効にします。Autoscaleの詳細については、「AutoScale」を参照してください。

手動で作成されたGCPマシンをインポートする

GCPへの接続を作成してから、GCPマシンを含むカタログを作成できます。次に、Citrix Virtual Apps and Desktopsサービスを使用して、GCPマシンの電源を手動で再投入できます。この機能により、次のことが可能になります:

  • 手動で作成したGCPマルチセッションOSマシンをCitrix Virtual Apps and Desktopsマシンカタログにインポートします。
  • 手動で作成したGCPマルチセッションOSマシンをCitrix Virtual Apps and Desktopsカタログから削除します。
  • 既存のCitrix Virtual Apps and Desktopsの電源管理機能を使用して、GCP WindowsマルチセッションOSマシンの電源管理を行います。たとえば、これらのマシンの再起動スケジュールを設定します。

この機能には、Citrix Virtual Apps and Desktopsの既存のプロビジョニングワークフローの変更や、既存機能の削除は必要はありません。手動で作成されたGCPマシンをインポートする代わりに、MCSを使用してStudioでマシンをプロビジョニングすることをお勧めします。

共有仮想プライベートクラウド

共有仮想プライベートクラウド(VPC)は、共有サブネットが使用可能なホストプロジェクトと、リソースを使用する1つ以上のサービスプロジェクトで構成されます。共有VPCは、企業の共有Google Cloudリソースの制御、使用、管理を一元的に行うため、大規模なインストールでは望ましいオプションです。詳しくは、『Googleドキュメントサイト』を参照してください。

この機能により、Machine Creation Services(MCS)は、共有VPCに展開されたマシンカタログのプロビジョニングと管理をサポートします。このサポートは、現在ローカルVPCで提供されているサポートと同等の機能ですが、次の2つの点が異なります:

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

新しい権限が必要

ホスト接続を作成するときは、特定の権限を持つGCPサービスアカウントが必要です。これらの追加の権限は、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つのdeny-allファイアウォール規則によって実現されます:1つは受信トラフィック用で、もう1つは送信トラフィック用です。GCPローカルVCPを使用する場合、MCSはこのファイアウォールをローカルネットワーク上に作成し、マスタリングのためにマシンに適用します。マスタリングが完了すると、ファイアウォール規則がイメージから削除されます。

Shared VPCを使用するために必要な新しい権限の数は最小限に抑えることを推奨します。共有VPCは、より高レベルの企業リソースであり、通常はより厳格なセキュリティプロトコルを採用しています。このため、共有VPCリソース上のホストプロジェクトに2つのファイアウォール規則を作成します。1つは受信用、もう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の構成

Citrix Studioで共有VPCをホスト接続として追加する前に、次の手順を実行して、プロビジョニングするプロジェクトのサービスアカウントを追加します:

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

IAM役割を作成する

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

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

  • compute.firewalls.list
  • compute.networks.list
  • compute.subnetworks.list
  • compute.subnetworks.use

プロジェクトレベルのIAM役割を作成するには、次の手順を実行します:

  1. GCPコンソールで、[IAM & admin]>[Roles]の順に選択します。
  2. [Roles] ページで、[CREATE ROLE] をクリックします。
  3. [Create Role] ページで、役割名を指定します。[ADD PERMISSIONS] をクリックします。
    1. [Add permissions] ページで、役割に権限を個別に追加します。権限を追加するには、[Filter table] フィールドで権限の名前を入力します。権限を選択し、[ADD] をクリックします。
    2. [CREATE] をクリックします。

サブネットレベルのIAM役割。この役割では、[CREATE ROLE] を選択した後、権限compute.subnetworks.listcompute.subnetworks.useの追加が省略されます。このIAMアクセスレベルでは、新しい役割に権限compute.firewalls.listcomputer.networks.listを適用する必要があります。

サブネットレベルのIAM役割を作成するには、次の手順を実行します:

  1. GCPコンソールで、[VPC network]>[Shared VPC] に移動します。[Shared VPC] ページが開き、ホストプロジェクトに含まれる共有VPCネットワークのサブネットが表示されます。
  2. [Shared VPC] ページで、アクセスするサブネットを選択します。
  3. 右上隅にある [ADD MEMBER] をクリックして、サービスアカウントを追加します。
  4. [Add members] ページで、次の手順を実行します:
    1. [New members] フィールドにサービスアカウントの名前を入力し、メニューでサービスアカウントを選択します。
    2. [Select a role] フィールドをクリックし、[Compute Network User] をクリックします。
    3. [保存] をクリックします。
  5. GCPコンソールで、[IAM & admin]>[Roles] の順に選択します。
  6. [Roles] ページで、[CREATE ROLE] をクリックします。
  7. [Create Role] ページで、役割名を指定します。[ADD PERMISSIONS] をクリックします。
    1. [Add permissions] ページで、役割に権限を個別に追加します。権限を追加するには、[Filter table] フィールドで権限の名前を入力します。権限を選択し、[ADD] をクリックします。
    2. [CREATE] をクリックします。

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

IAM役割を作成した後、次の手順を実行して、ホストプロジェクトのサービスアカウントを追加します:

  1. GCPコンソールでホストプロジェクトに移動し、[IAM & admin]>[IAM] の順に選択します。
  2. [IAM] ページで、[ADD] をクリックしてサービスアカウントを追加します。
  3. [Add members] ページで、次の操作を行います:
    1. [New members] フィールドにサービスアカウントの名前を入力し、メニューでサービスアカウントを選択します。
    2. [Select a role]フィールドをクリックし、作成したIAM役割を入力して、メニューで役割をクリックします。
    3. [保存] をクリックします。

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

Cloud Buildサービスアカウントを共有VPCに追加する

すべてのGoogle Cloudサブスクリプションは、プロジェクトID番号の後にサービスアカウントが指定され、その後にcloudbuild.gserviceaccountが続きます。例:705794712345@cloudbuild.gserviceaccount

プロジェクトのプロジェクトID番号を確認するには、Google Cloudコンソールで [Home][Dashboard] を選択します:

Google Cloudコンソールのナビゲーションペイン

画面の [Project Info] 領域でプロジェクト番号を探します。

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

  1. Google Cloudコンソールでホストプロジェクトに移動し、[IAM & admin]>[IAM]の順に選択します。
  2. [Permissions] ページで、[ADD]をクリックしてアカウントを追加します。
  3. [Add members] ページで、次の手順を実行します:
    1. [New members] フィールドにCloud Buildサービスアカウントの名前を入力し、メニューでサービスアカウントを選択します。
    2. [Select a role] フィールドをクリックし、「Computer Network User」と入力して、メニューで役割をクリックします。
    3. [保存] をクリックします。

ファイアウォール規則の作成

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

  1. GCPコンソールでホストプロジェクトに移動し、[VPC network]>[Firewall] の順に選択します。
  2. [Firewall] ページで、[CREATE FIREWALL RULE] をクリックします。
  3. [Create a firewall rule] ページで、次の操作を行います:
    • Name:規則名を入力します。
    • Network:受信ファイアウォール規則を適用する共有VPCネットワークを選択します。
    • Priority:値が小さいほど、規則の優先度は高くなります。小さい値(10など)を指定することをお勧めします。
    • Direction of traffic:[Ingress] を選択します。
    • Action on match:[Deny] を選択します。
    • Targets:デフォルトの [Specified target tags] を使用します。
    • Target tags:citrix-provisioning-quarantine-firewall」と入力します。
    • Source filter:デフォルトの [IP ranges] を使用します。
    • Source IP ranges:すべてのトラフィックに一致する範囲を入力します。「 0.0.0.0/0」と入力します。
    • Protocols and ports:[Deny all] を選択します。
  4. [Create] をクリックして規則を作成します。
  5. さらに規則を作成するには、手順1~4を繰り返します。[Direction of traffic] で、[Egress]を選択します。

接続の追加

Cloud Connectorインスタンスにネットワークインターフェイスを追加した後、接続の追加を行います。

ゾーン選択の有効化

Citrix Virtual Apps and Desktopsサービスでは、ゾーン選択をサポートしています。ゾーン選択では、Citrix StudioでVMを作成するゾーンを指定します。ゾーン選択により、管理者は選択したゾーン間に単一のテナントノードを配置できます。単一テナントを構成するには、GCPで次の手順を実行する必要があります

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

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

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

重要:

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

VDAマスターイメージを作成する

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

注:

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

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

ノードアフィニティラベルを設定するには、次の手順に従います:

  1. GCPコンソールで、[Compute Engine]>[VM instances] に移動します。

  2. [VM instances] ページで、[Create instance] をクリックします。

  3. [Instance creation] ページで、必要な情報を入力または設定し、[management]、[security]、[disks]、[networking]、[sole tenancy] の順にクリックして設定パネルを開きます。

  4. [Sole tenancy] タブで、[Browse] をクリックして、現在のプロジェクトで使用可能なノードグループを表示します。[Sole-tenant node] ページが開き、使用可能なノードグループのリストが表示されます。

  5. [Sole-tenant node] ページで、リストから該当するノードグループを選択し、[Select] をクリックして [Sole tenancy] タブに戻ります。[node affinity labels]フィールドに、選択した情報が入力されます。この設定により、インスタンスから作成されたマシンカタログが、選択したノードグループに展開されます。

  6. [Create] をクリックしてインスタンスを作成します。

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

ノードアフィニティラベルを設定するには、次の手順に従います:

  1. GCPコンソールで、右上隅にある端末アイコンをクリックしてGoogle Cloud Shellを起動します:

    Google Cloudコンソール - 端末アイコン

    ユーザーインターフェイスの下部に端末ウィンドウが開きます。Google Cloud Shell端末ウィンドウで、gcloud compute instancesコマンドを使用してノードアフィニティラベルを設定します。gcloudコマンドに次の情報を含めます:

    • 仮想マシンの名前。たとえば、「s*2019-vda-base」という名前の既存のVMを使用します。*
    • ノードグループの名前。以前に作成したノードグループ名を使用します。たとえば、mh-sole-tenant-node-group-1などです。
    • インスタンスが存在するゾーン。たとえば、仮想マシンは*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コマンドの詳細については、Googleデベロッパーツールのドキュメント(https://cloud.google.com/sdk/gcloud/reference/beta/compute/instances/set-scheduling)を参照してください。

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

マシンカタログの作成

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

詳細情報