Citrix Virtual Apps and Desktops

Google Cloud 環境

Citrix Virtual Apps and Desktops™ を使用すると、Google Cloud 上でマシンをプロビジョニングおよび管理できます。

  • 要件

  • Citrix Cloud™ アカウント。この記事で説明されている機能は、Citrix Cloud でのみ利用可能です。
  • Google Cloud プロジェクト。このプロジェクトには、マシンカタログに関連付けられているすべてのコンピューティングリソースが保存されます。既存のプロジェクトでも新規のプロジェクトでも構いません。
  • Google Cloud プロジェクトで 4 つの API を有効にします。詳細については、「Google Cloud API の有効化」を参照してください。
  • Google Cloud サービスアカウント。このサービスアカウントは、Google Cloud に対して認証を行い、プロジェクトへのアクセスを有効にします。詳細については、「サービスアカウントの構成と更新」を参照してください。
  • Google プライベートアクセスを有効にします。詳細については、「Google プライベートアクセスの有効化」を参照してください。

  • Google Cloud API の有効化

  • Web Studio を介して Google Cloud の機能を使用するには、Google Cloud プロジェクトで以下の API を有効にします。

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

Google Cloud コンソールから、以下の手順を実行します。

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

    APIs and Services Dashboard select image

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

    1. [API とサービス] > [ライブラリ] に移動します。

      APIs and Services Library image

      1. 検索ボックスに「Compute Engine」と入力します。
      1. 検索結果から [Compute Engine API] を選択します。
    1. [Compute Engine API] ページで、[有効にする] を選択します。
  3. Cloud Resource Manager API を有効にします。

    1. [API とサービス] > [ライブラリ] に移動します。

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

    3. 検索結果から [Cloud Resource Manager API] を選択します。

    1. [Cloud Resource Manager API] ページで、[有効にする] を選択します。API のステータスが表示されます。
  1. 同様に、Identity and Access Management (IAM) APICloud Build API を有効にします。

    • Google Cloud Shell を使用して API を有効にすることもできます。これを行うには、次の手順を実行します。

      1. Google コンソールを開き、Cloud Shell をロードします。
      1. Cloud Shell で次の 4 つのコマンドを実行します。
    • gcloud services enable compute.googleapis.com
    • gcloud services enable cloudresourcemanager.googleapis.com
    • gcloud services enable iam.googleapis.com
    • gcloud services enable cloudbuild.googleapis.com
  2. Cloud Shell からプロンプトが表示されたら、[承認] をクリックします。

サービスアカウントの構成と更新

注: - > - > GCP は、2024 年 4 月 29 日以降、Cloud Build Service のデフォルトの動作とサービスアカウントの使用方法に変更を導入しています。詳細については、「Cloud Build Service Account Change」を参照してください。2024 年 4 月 29 日より前に Cloud Build API が有効になっている既存の Google プロジェクトは、この変更の影響を受けません。ただし、4 月 29 日以降も既存の Cloud Build Service の動作を維持したい場合は、Cloud Build API を有効にする前に、組織ポリシーを作成または適用して制約の適用を無効にすることができます。その結果、以下のコンテンツは「2024 年 4 月 29 日より前」と「2024 年 4 月 29 日以降」の 2 つに分かれています。新しい組織ポリシーを設定した場合は、「2024 年 4 月 29 日より前」のセクションに従ってください。

-  ### 2024 年 4 月 29 日より前

-  Citrix Cloud は、Google Cloud プロジェクト内で 3 つの個別のサービスアカウントを使用します。

-  *Citrix Cloud サービスアカウント*: このサービスアカウントにより、Citrix Cloud は Google プロジェクトにアクセスし、マシンをプロビジョニングおよび管理できます。このサービスアカウントは、Google Cloud によって生成された[キー](https://console.cloud.google.com/iam-admin/serviceaccounts)を使用して Google Cloud に対して認証を行います。

-  このサービスアカウントは、ここに概説されているように手動で作成する必要があります。詳細については、「[Citrix Cloud サービスアカウントの作成](/ja-jp/citrix-daas/install-configure/resource-location/google#create-a-citrix-cloud-service-account)」を参照してください。

-  このサービスアカウントは、メールアドレスで識別できます。例: `<my-service-account>@`<project-id>`.iam.gserviceaccount.com`。

-  *Cloud Build サービスアカウント*: このサービスアカウントは、「[Google Cloud API の有効化](/ja-jp/citrix-daas/install-configure/resource-location/google.html#enable-google-cloud-apis)」で説明されているすべての API を有効にすると、自動的にプロビジョニングされます。自動的に作成されたすべてのサービスアカウントを表示するには、**Google Cloud** コンソールで **[IAM と管理] > [IAM]** に移動し、**[Google が提供するロール付与を含める]** チェックボックスをオンにします。

このサービスアカウントは、**プロジェクト ID** と「**cloudbuild**」という単語で始まるメールアドレスで識別できます。例: `<project-id>@cloudbuild.gserviceaccount.com`

サービスアカウントに次のロールが付与されていることを確認します。ロールを追加する必要がある場合は、「[Cloud Build サービスアカウントへのロールの追加](/ja-jp/citrix-daas/install-configure/resource-location/google#add-roles-to-the-cloud-build-service-account)」に概説されている手順に従ってください。

-  Cloud Build サービスアカウント
-  Compute Instance Admin
-  Service Account User

-  *Cloud Compute サービスアカウント*: このサービスアカウントは、Compute API がアクティブ化されると、Google Cloud によって Google Cloud で作成されたインスタンスに追加されます。このアカウントには、操作を実行するための IAM 基本エディターロールがあります。ただし、より詳細な制御を行うためにデフォルトの権限を削除する場合は、次の権限を必要とする **Storage Admin** ロールを追加する必要があります。

-  resourcemanager.projects.get
-  storage.objects.create
-  storage.objects.get
-  storage.objects.list

このサービスアカウントは、プロジェクトIDと「compute」という単語で始まるメールアドレスで識別できます。例:<project-id>-compute@developer.gserviceaccount.com

Citrix Cloudサービスアカウントの作成

Citrix Cloudサービスアカウントを作成するには、次の手順に従います。

  1. Google Cloudコンソールで、[IAM と管理] > [サービスアカウント] に移動します。
  2. [サービスアカウント] ページで、[サービスアカウントを作成] を選択します。
  3. [サービスアカウントを作成] ページで、必要な情報を入力し、[作成して続行] を選択します。
  4. [このサービスアカウントにプロジェクトへのアクセス権を付与] ページで、[ロールを選択] ドロップダウンメニューをクリックし、必要なロールを選択します。さらにロールを追加する場合は、[別のロールを追加] をクリックします。

    各アカウント(個人またはサービス)には、プロジェクトの管理を定義するさまざまなロールがあります。このサービスアカウントには、次のロールを付与します。

    • Compute 管理者
    • Storage 管理者
    • Cloud Build 編集者
    • サービスアカウントユーザー
    • Cloud Datastore ユーザー
    • Cloud KMS Crypto オペレーター

    Cloud KMS Crypto オペレーターには、次の権限が必要です。

    • cloudkms.cryptoKeys.get
    • cloudkms.cryptoKeys.list
    • cloudkms.keyRings.get
    • cloudkms.keyRings.list
    • cloudkms.cryptoKeyVersions.useToDecrypt
    • cloudkms.cryptoKeyVersions.useToEncrypt

    注:

    • 新しいサービスアカウントを作成する際に利用可能なロールの完全なリストを取得するには、すべてのAPIを有効にしてください。

      1. [続行] をクリックします。
  5. [このサービスアカウントへのユーザーアクセスを許可] ページで、ユーザーまたはグループを追加して、このサービスアカウントでのアクションを実行するアクセス権を付与します。
  6. [完了] をクリックします。
  7. IAMメインコンソールに移動します。
  8. 作成したサービスアカウントを特定します。
  9. ロールが正常に割り当てられていることを検証します。

考慮事項:

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

-  **[このサービスアカウントにプロジェクトへのアクセス権を付与]** および **[このサービスアカウントへのユーザーアクセスを許可]** の手順はオプションです。これらのオプションの構成手順をスキップすることを選択した場合、新しく作成されたサービスアカウントは **[IAM と管理] > [IAM]** ページに表示されません。
-  サービスアカウントに関連付けられたロールを表示するには、オプションの手順をスキップせずにロールを追加します。このプロセスにより、構成されたサービスアカウントにロールが表示されるようになります。

Citrix Cloudサービスアカウントキー

-  Citrix Cloudサービスアカウントキーは、Citrix DaaSで接続を作成するために必要です。キーは認証情報ファイル(.json)に含まれています。キーを作成すると、ファイルは自動的にダウンロードされ、**[ダウンロード]** フォルダーに保存されます。キーを作成する際は、キータイプをJSONに設定してください。そうしないと、Web Studioが解析できません。

-  サービスアカウントキーを作成するには、**[IAM と管理] > [サービスアカウント]** に移動し、Citrix Cloudサービスアカウントのメールアドレスをクリックします。**[キー]** タブに切り替え、**[キーを追加] > [新しいキーを作成]** を選択します。キータイプとして必ず **[JSON]** を選択してください。

ヒント:

Google Cloudコンソールの [サービスアカウント] ページを使用してキーを作成します。セキュリティ上の理由から、キーを定期的に変更することをお勧めします。既存のGoogle Cloud接続を編集することで、Citrix Virtual Apps™ and Desktopsアプリケーションに新しいキーを提供できます。

Citrix Cloudサービスアカウントへのロールの追加

Citrix Cloudサービスアカウントにロールを追加するには:

  1. Google Cloudコンソールで、[IAM と管理] > [IAM] に移動します。
  2. [IAM と管理] > [権限] ページで、メールアドレスで識別できる作成済みのサービスアカウントを見つけます。
  • 例:<my-service-account>@<project-id>.iam.gserviceaccount.com`
  1. 鉛筆アイコンを選択して、サービスアカウントのプリンシパルへのアクセスを編集します。
  2. 選択したプリンシパルオプションの [「project-id」へのアクセスを編集] ページで、[別のロールを追加] を選択して、必要なロールをサービスアカウントに1つずつ追加し、[保存] を選択します。

Cloud Buildサービスアカウントへのロールの追加

Cloud Buildサービスアカウントにロールを追加するには:

  1. Google Cloudコンソールで、[IAM と管理] > [IAM] に移動します。
  2. [IAM] ページで、プロジェクトIDと「cloudbuild」という単語で始まるメールアドレスで識別できるCloud Buildサービスアカウントを見つけます。

    例:<project-id>@cloudbuild.gserviceaccount.com

  3. 鉛筆アイコンを選択して、Cloud Buildアカウントのロールを編集します。
  4. 選択したプリンシパルオプションの [「project-id」へのアクセスを編集] ページで、[別のロールを追加] を選択して、必要なロールをCloud Buildサービスアカウントに1つずつ追加し、[保存] を選択します。

    注:

    ロールの完全なリストを取得するには、すべてのAPIを有効にしてください。

2024年4月29日以降

Citrix Cloudは、Google Cloudプロジェクト内で2つの異なるサービスアカウントを使用します。

  • Citrix Cloudサービスアカウント: このサービスアカウントにより、Citrix CloudはGoogleプロジェクトにアクセスし、マシンをプロビジョニングおよび管理できます。このサービスアカウントは、Google Cloudによって生成されたキーを使用してGoogle Cloudに対して認証を行います。

    このサービスアカウントは手動で作成する必要があります。

    このサービスアカウントはメールアドレスで識別できます。例:<my-service-account>@<project-id>.iam.gserviceaccount.com

  • Cloud Computeサービスアカウント: このサービスアカウントは、Google Cloud APIの有効化で言及されているすべてのAPIを有効にすると、自動的にプロビジョニングされます。自動的に作成されたすべてのサービスアカウントを表示するには、Google Cloudコンソールで [IAM と管理] > [IAM] に移動し、[Google提供のロール付与を含める] チェックボックスを選択します。このアカウントには、操作を実行するためのIAM基本編集者ロールがあります。ただし、より詳細な制御のためにデフォルトの権限を削除する場合は、次の権限を必要とする Storage 管理者ロールを追加する必要があります。

    • resourcemanager.projects.get
    • storage.objects.create
    • storage.objects.get
    • storage.objects.list

    このサービスアカウントは、プロジェクトIDと「compute」という単語で始まるメールアドレスで識別できます。例:<project-id>-compute@developer.gserviceaccount.com

    サービスアカウントに次のロールが付与されていることを確認します。

    • Cloud Buildサービスアカウント
    • Compute インスタンス管理者
    • サービスアカウントユーザー

Citrix Cloudサービスアカウントの作成

  • Citrix Cloud Service Account を作成するには、次の手順に従います。
  1. Google Cloud コンソールで、IAM と管理 > サービスアカウントに移動します。
  2. サービスアカウントページで、サービスアカウントを作成を選択します。
  3. サービスアカウントを作成ページで、必要な情報を入力し、作成して続行を選択します。
  4. このサービスアカウントにプロジェクトへのアクセス権を付与ページで、ロールを選択ドロップダウンメニューをクリックし、必要なロールを選択します。さらにロールを追加する場合は、+別のロールを追加をクリックします。

    各アカウント(個人またはサービス)には、プロジェクトの管理を定義するさまざまなロールがあります。このサービスアカウントには、次のロールを付与します。

    • Compute 管理者
    • Storage 管理者
    • Cloud Build 編集者
    • サービスアカウントユーザー
    • Cloud Datastore ユーザー
    • Cloud KMS Crypto オペレーター

    Cloud KMS Crypto オペレーターには、次の権限が必要です。

    • cloudkms.cryptoKeys.get
    • cloudkms.cryptoKeys.list
    • cloudkms.keyRings.get
    • cloudkms.keyRings.list

    注:

    新しいサービスアカウントの作成時に利用可能なロールの完全なリストを取得するには、すべての API を有効にします。

  5. 続行をクリックします。
  6. このサービスアカウントへのユーザーアクセスを許可ページで、ユーザーまたはグループを追加して、このサービスアカウントでアクションを実行するアクセス権を付与します。
  7. 完了をクリックします。
  8. IAM メインコンソールに移動します。
  9. 作成したサービスアカウントを特定します。
  10. ロールが正常に割り当てられていることを検証します。

考慮事項

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

  • このサービスアカウントにプロジェクトへのアクセス権を付与およびこのサービスアカウントへのユーザーアクセスを許可の手順はオプションです。これらのオプションの構成手順をスキップすることを選択した場合、新しく作成されたサービスアカウントはIAM と管理 > IAMページに表示されません。
  • サービスアカウントに関連付けられたロールを表示するには、オプションの手順をスキップせずにロールを追加します。このプロセスにより、構成されたサービスアカウントにロールが表示されます。

Citrix Cloud Service Account キー

Citrix Cloud Service Account キーは、Citrix DaaS で接続を作成するために必要です。キーは資格情報ファイル(.json)に含まれています。キーを作成すると、ファイルは自動的にダウンロードされ、ダウンロードフォルダーに保存されます。キーを作成するときは、キータイプを JSON に設定してください。そうしないと、Web Studio はそれを解析できません。

サービスアカウントキーを作成するには、IAM と管理 > サービスアカウントに移動し、Citrix Cloud Service Account のメールアドレスをクリックします。キータブに切り替えて、キーを追加 > 新しいキーを作成を選択します。キータイプとしてJSONを選択していることを確認してください。

ヒント:

Google Cloud コンソールのサービスアカウントページを使用してキーを作成します。セキュリティ上の理由から、定期的にキーを変更することをお勧めします。既存の Google Cloud 接続を編集することで、Citrix Virtual Apps and Desktops アプリケーションに新しいキーを提供できます。

Citrix Cloud Service Account へのロールの追加

Citrix Cloud Service Account にロールを追加するには:

  1. Google Cloud コンソールで、IAM と管理 > IAMに移動します。
  2. IAM > 権限ページで、作成したサービスアカウントをメールアドレスで特定します。

    例:\<my-service-account\>@\<project-id\>.iam.gserviceaccount.com

  3. 鉛筆アイコンを選択して、サービスアカウントのプリンシパルへのアクセスを編集します。
  4. 選択したプリンシパルオプションの「project-id」へのアクセスを編集ページで、別のロールを追加を選択して、必要なロールをサービスアカウントに1つずつ追加し、保存を選択します。

Cloud Compute Service Account へのロールの追加

Cloud Compute Service Account にロールを追加するには:

  1. Google Cloud コンソールで、IAM と管理 > IAMに移動します。
  2. IAMページで、プロジェクト IDcomputeという単語で始まるメールアドレスで識別できる Cloud Compute Service Account を特定します。

    例:\<project-id\>-compute@developer.gserviceaccount.com

  3. 鉛筆アイコンを選択して、Cloud Build アカウントのロールを編集します。
  4. 選択したプリンシパルオプションの「project-id」へのアクセスを編集ページで、別のロールを追加を選択して、必要なロールを Cloud Build サービスアカウントに1つずつ追加し、保存を選択します。

    注:

    ロールの完全なリストを取得するには、すべての API を有効にします。

ストレージ権限とバケット管理

Citrix Virtual Apps and Desktops は、Google Cloud サービスのクラウドビルド失敗のレポートプロセスを改善します。このサービスは Google Cloud でビルドを実行します。Citrix Virtual Apps and Desktops は、citrix-mcs-cloud-build-logs-{region}-{5 random characters}という名前のストレージバケットを作成し、Google Cloud サービスがビルドログ情報をキャプチャします。このバケットには、30日後にコンテンツを削除するオプションが設定されています。このプロセスでは、接続に使用されるサービスアカウントに storage.buckets.update に設定された Google Cloud 権限が必要です。サービスアカウントにこの権限がない場合、Citrix Virtual Apps and Desktops はエラーを無視し、カタログ作成プロセスを続行します。この権限がないと、ビルドログのサイズが増加し、手動でのクリーンアップが必要になります。

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

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

注:

プライベート Google アクセスが有効になっているかどうかにかかわらず、パブリック IP アドレスを持つ VM と持たない VM の両方が Google Public API にアクセスできる必要があります。特に、サードパーティのネットワークアプライアンスが環境にインストールされている場合は、その必要があります。

MCS プロビジョニングのために、サブネット内の VM がパブリック IP アドレスなしで Google API にアクセスできるようにするには:

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

プライベート Google アクセス

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

重要:

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

次のステップ

詳細情報

Google Cloud 環境