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 を有効にします。
-
コンピューティング エンジン API
-
Cloud Resource Manager API (クラウド リソース マネージャー API)
-
ID およびアクセス管理 (IAM) API
-
Cloud Build API (クラウドビルド API)
-
クラウドキー管理サービス (KMS)
Google Cloudコンソールから、次の手順を実行します。
-
左上のメニューで、**「APIとサービス」>「ダッシュボード」**を選択します。

-
ダッシュボード画面で、Compute Engine APIが有効になっていることを確認します。 有効になっていない場合は、次の手順に従ってください。
-
「APIとサービス > ライブラリ」に移動します。

-
検索ボックスに「Compute Engine」と入力します。
-
検索結果から「Compute Engine API」を選択します。
-
「Compute Engine API」ページで、「有効にする」を選択します。
-
-
Cloud Resource Manager APIを有効にします。
-
「APIとサービス > ライブラリ」に移動します。
-
検索ボックスに「Cloud Resource Manager」と入力します。
-
検索結果から「Cloud Resource Manager API」を選択します。
-
「Cloud Resource Manager API」ページで、「有効にする」を選択します。APIのステータスが表示されます。
-
-
同様に、Identity and Access Management (IAM) APIとCloud Build APIを有効にします。
Google Cloud Shell を使用して API を有効にすることもできます。これを行うには、次の手順に従います。
-
Googleコンソールを開き、Cloud Shellをロードします。
-
Cloud Shellで次の4つのコマンドを実行します。
-
gcloud サービスを有効にする compute.googleapis.com
-
gcloud サービスを有効にする cloudresourcemanager.googleapis.com
-
gcloud services iam.googleapis.com を有効にする
-
gcloud services cloudbuild.googleapis.com を有効にする
-
-
Cloud Shellがプロンプトを表示した場合、「承認」をクリックします。
サービスアカウントの構成と更新
注:
GCP は、Cloud Build Service のデフォルトの動作とサービスアカウントの使用に関して、April 29, 2024 以降に変更を導入します。詳細については、「Cloud Build Service Account Change」を参照してください。April 29, 2024 より前に Cloud Build API が有効になっている既存の Google プロジェクトは、この変更の影響を受けません。ただし、April 29 以降も既存の Cloud Build Service の動作を維持したい場合は、Cloud Build API を有効にする前に、組織ポリシーを作成または適用して制約の適用を無効にすることができます。その結果、以下のコンテンツは「Before April 29, 2024」と「After April 29, 2024」の2つに分かれています。新しい組織ポリシーを設定する場合は、「Before April 29, 2024」のセクションに従ってください。
April 29, 2024 以前
Citrix Cloudは、Google Cloudプロジェクト内で3つの個別のサービスアカウントを使用します。
-
Citrix Cloud Service Account:このサービスアカウントにより、Citrix Cloud は Google プロジェクトにアクセスし、マシンをプロビジョニングおよび管理できます。このサービスアカウントは、Google Cloud によって生成されたキーを使用して Google Cloud に対して認証を行います。このサービスアカウントは、ここに記載されているとおり手動で作成する必要があります。詳細については、「Citrix Cloud Service Account の作成」を参照してください。このサービスアカウントはメールアドレスで識別できます。例:
<my-service-account>@<project-id>.iam.gserviceaccount.com. -
Cloud Build Service Account: このサービスアカウントは、Google Cloud API を有効にするで言及されているすべてのAPIを有効にすると、自動的にプロビジョニングされます。自動的に作成されたすべてのサービスアカウントを表示するには、Google CloudコンソールでIAM と管理 > IAMに移動し、Google 提供のロール付与を含めるチェックボックスを選択します。このサービスアカウントは、プロジェクトIDとcloudbuildという単語で始まるメールアドレスで識別できます。例:
<project-id>@cloudbuild.gserviceaccount.comサービスアカウントに以下のロールが付与されていることを確認します。ロールを追加する必要がある場合は、Cloud Build サービスアカウントにロールを追加するに記載されている手順に従ってください。-
Cloud Build サービスアカウント
-
Compute Instance 管理者
-
サービスアカウントユーザー
-
-
Cloud Compute Service Account: このサービスアカウントは、Compute API がアクティブ化されると、Google Cloud によって Google Cloud で作成されたインスタンスに追加されます。このアカウントには、操作を実行するための IAM 基本編集者ロールがあります。ただし、より詳細な制御を行うためにデフォルトの権限を削除する場合は、以下の権限を必要とするストレージ管理者ロールを追加する必要があります。
-
resourcemanager.projects.get
-
storage.objects.create
-
storage.objects.get
-
storage.objects.list
-
このサービスアカウントは、プロジェクトIDとcomputeという単語で始まるメールアドレスで識別できます。例:
<project-id>-compute@developer.gserviceaccount.com.
Citrix Cloud サービスアカウントを作成する
Citrix Cloud サービスアカウントを作成するには、次の手順に従います。
-
Google Cloud コンソールで、IAM と管理 > サービス アカウントに移動します。
-
サービス アカウントページで、サービス アカウントを作成を選択します。
-
サービス アカウントの作成ページで、必要な情報を入力し、作成して続行を選択します。
-
このサービス アカウントにプロジェクトへのアクセス権を付与ページで、ロールを選択ドロップダウンメニューをクリックし、必要なロールを選択します。さらにロールを追加する場合は、+別のロールを追加をクリックします。各アカウント(個人またはサービス)には、プロジェクトの管理を定義するさまざまなロールがあります。このサービス アカウントに次のロールを付与します。
-
Compute 管理者
-
Storage 管理者
-
Cloud Build 編集者
-
サービス アカウント ユーザー
-
クラウド データストア ユーザー
-
Cloud KMS 暗号オペレーター
Cloud KMS 暗号化オペレーターには、次の権限が必要です。-
cloudkms.cryptoKeys.get
-
cloudkms.cryptoKeys.list
-
cloudkms.keyRings.get
-
cloudkms.keyRings.list
注:新しいサービスアカウントを作成する際に利用可能なロールの完全なリストを取得するには、すべてのAPIを有効にしてください。 -
-
続行をクリックします
-
このサービスアカウントへのユーザーアクセスを許可ページで、ユーザーまたはグループを追加して、このサービスアカウントでアクションを実行するアクセス権を付与します。
-
完了をクリックします。
-
IAMメインコンソールに移動します。
-
作成したサービスアカウントを特定します。
-
ロールが正常に割り当てられていることを検証します。
考慮事項:
サービスアカウントを作成する際は、以下を考慮してください。
-
このサービスアカウントにプロジェクトへのアクセスを許可およびこのサービスアカウントへのユーザーアクセスを許可の手順はオプションです。これらのオプションの構成手順をスキップすることを選択した場合、新しく作成されたサービスアカウントはIAMと管理 > IAMページに表示されません。
-
サービスアカウントに関連付けられたロールを表示するには、オプションの手順をスキップせずにロールを追加します。このプロセスにより、構成されたサービスアカウントにロールが表示されるようになります。
Citrix Cloudサービスアカウントキー
Citrix DaaSで接続を作成するには、Citrix Cloudサービスアカウントキーが必要です。キーは資格情報ファイル(.json)に含まれています。キーを作成すると、ファイルは自動的にダウンロードされ、ダウンロードフォルダーに保存されます。キーを作成する際は、キータイプをJSONに設定してください。そうしないと、Citrix Full Configurationインターフェイスで解析できません。
サービスアカウントキーを作成するには、IAM と管理 > サービスアカウントに移動し、Citrix Cloudサービスアカウントのメールアドレスをクリックします。キータブに切り替えて、キーを追加 > 新しいキーを作成を選択します。キーのタイプとしてJSONが選択されていることを確認してください。
ヒント:
Google Cloud コンソールで、サービスアカウントページを使用してキーを作成します。セキュリティ上の理由から、キーを定期的に変更することをお勧めします。既存の Google Cloud 接続を編集することで、Citrix Virtual Apps and Desktops アプリケーションに新しいキーを提供できます。
Citrix Cloud サービスアカウントにロールを追加する
Citrix Cloud サービスアカウントにロールを追加するには、次の手順を実行します。
-
Google Cloudコンソールで、IAM と管理 > IAMに移動します。
-
IAM > 権限ページで、作成したサービスアカウント(メールアドレスで識別可能)を見つけます。例:
<my-service-account>@<project-id>.iam.gserviceaccount.com -
鉛筆アイコンを選択して、サービスアカウントのプリンシパルへのアクセスを編集します。
-
選択したプリンシパルオプションの**「project-id」へのアクセスを編集**ページで、別のロールを追加を選択して必要なロールをサービスアカウントに1つずつ追加し、保存を選択します。
Cloud Build サービスアカウントにロールを追加する
Cloud Build サービスアカウントにロールを追加するには、次の手順を実行します。
-
Google Cloud コンソールで、IAM と管理 > IAM に移動します。
-
IAMページで、プロジェクト IDとcloudbuildという単語で始まる電子メールアドレスで識別できる Cloud Build サービスアカウントを見つけます。例:
<project-id>@cloudbuild.gserviceaccount.com -
鉛筆アイコンを選択して、Cloud Buildアカウントの役割を編集します。
-
選択したプリンシパルオプションの「"project-id"へのアクセスを編集」ページで、別の役割を追加を選択して、必要な役割をCloud Buildサービスアカウントに1つずつ追加し、保存を選択します。注:すべてのAPIを有効にして、役割の完全なリストを取得します。
April 29, 2024 以降
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基本編集者ロールがあります。ただし、より詳細な制御を行うためにデフォルトの権限を削除した場合、次の権限を必要とするストレージ管理者ロールを追加する必要があります。
-
resourcemanager.projects.get
-
storage.objects.create
-
storage.objects.get
-
storage.objects.list
このサービスアカウントは、プロジェクトIDとcomputeという単語で始まるメールアドレスで識別できます。例:<project-id>-compute@developer.gserviceaccount.com..サービスアカウントに次のロールが付与されていることを確認します。-
Cloud Build サービスアカウント
-
Compute Instance 管理者
-
サービスアカウントユーザー
-
Citrix Cloud サービスアカウントを作成する
Citrix Cloud サービスアカウントを作成するには、次の手順に従います。
-
Google Cloud コンソールで、IAM と管理 > サービスアカウントに移動します。
-
サービスアカウントページで、サービスアカウントを作成を選択します。
-
サービスアカウントを作成ページで、必要な情報を入力し、作成して続行を選択します。
-
このサービスアカウントにプロジェクトへのアクセス権を付与ページで、ロールを選択ドロップダウンメニューをクリックし、必要なロールを選択します。さらにロールを追加する場合は、+別のロールを追加をクリックします。各アカウント(個人またはサービス)には、プロジェクトの管理を定義するさまざまなロールがあります。このサービスアカウントには、以下のロールを付与してください。
-
Compute 管理者
-
Storage管理者
-
Cloud Build編集者
-
サービスアカウントユーザー
-
クラウド データストア ユーザー
-
Cloud KMS 暗号オペレーター
Cloud KMS 暗号オペレーターには、以下の権限が必要です。-
cloudkms.cryptoKeys.get
-
cloudkms.cryptoKeys.list
-
cloudkms.keyRings.get
-
cloudkms.keyRings.list
注:新しいサービスアカウントを作成する際に利用可能なロールの完全なリストを取得するには、すべてのAPIを有効にしてください。 -
-
CONTINUEをクリックします。
-
このサービスアカウントへのユーザーアクセスを許可ページで、このサービスアカウントでアクションを実行するアクセス権を付与するために、ユーザーまたはグループを追加します。
-
DONEをクリックします。
-
IAMメインコンソールに移動します。
-
作成されたサービスアカウントを特定します。
-
ロールが正常に割り当てられていることを検証します。
留意事項:
サービスアカウントを作成する際は、以下の点に留意してください。
-
このサービスアカウントにプロジェクトへのアクセスを許可するおよびこのサービスアカウントへのユーザーアクセスを許可するの手順はオプションです。これらのオプションの構成手順をスキップすることを選択した場合、新しく作成されたサービスアカウントは、IAM と管理 > IAM ページに表示されません。
-
サービスアカウントに関連付けられたロールを表示するには、オプションの手順をスキップせずにロールを追加してください。このプロセスにより、構成されたサービスアカウントにロールが表示されるようになります。
Citrix Cloud サービスアカウントキー
Citrix DaaS で接続を作成するには、Citrix Cloud サービスアカウントキーが必要です。キーは資格情報ファイル (.json) に含まれています。キーを作成すると、ファイルは自動的にダウンロードされ、ダウンロードフォルダーに保存されます。キーを作成する際は、キータイプを JSON に設定してください。そうしないと、Citrix Full Configuration インターフェイスで解析できません。
サービスアカウントキーを作成するには、IAM と管理 > サービスアカウントに移動し、Citrix Cloud サービスアカウントのメールアドレスをクリックします。キータブに切り替えて、キーを追加 > 新しいキーを作成を選択します。キータイプとしてJSONを選択してください。
ヒント:
Google Cloud コンソールのサービスアカウントページを使用してキーを作成します。セキュリティ上の理由から、キーを定期的に変更することをお勧めします。既存の Google Cloud 接続を編集することで、Citrix Virtual Apps and Desktops アプリケーションに新しいキーを提供できます。
Citrix Cloud サービスアカウントにロールを追加する
Citrix Cloud サービスアカウントにロールを追加するには、次の手順を実行します。
-
Google Cloud コンソールで、IAM と管理 > IAM に移動します。
-
IAM > 権限ページで、メールアドレスで識別できる、作成したサービスアカウントを見つけます。例:
<my-service-account>@<project-id>.iam.gserviceaccount.com -
鉛筆アイコンを選択して、サービスアカウントのプリンシパルへのアクセスを編集します。
-
選択したプリンシパルオプションの**「project-id」へのアクセスを編集**ページで、別のロールを追加を選択して、必要なロールをサービスアカウントに1つずつ追加し、保存を選択します。
Cloud Computeサービスアカウントにロールを追加する
Cloud Computeサービスアカウントにロールを追加するには:
-
Google Cloudコンソールで、IAMと管理 > IAMに移動します。
-
IAMページで、プロジェクトIDとcomputeという単語で始まるメールアドレスで識別できるCloud Computeサービスアカウントを見つけます。例えば、
<project-id>-compute@developer.gserviceaccount.com -
鉛筆アイコンを選択して、Cloud Buildアカウントのロールを編集します。
-
選択したプリンシパルオプションの**「project-id」へのアクセスを編集ページ**で、別のロールを追加を選択して、必要なロールをCloud Buildサービスアカウントに1つずつ追加し、保存を選択します。注:すべてのAPIを有効にして、ロールの完全なリストを取得します。
ストレージの権限とバケット管理
Citrix Virtual Apps and Desktopsは、Google Cloudサービスのクラウドビルド失敗レポートプロセスを改善します。このサービスは、Google Cloudでビルドを実行します。Citrix Virtual Apps and Desktopsは、Google Cloudサービスがビルドログ情報をキャプチャする
citrix-mcs-cloud-build-logs-{region}-{5 random characters}という名前のストレージバケットを作成します。このバケットには、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にアクセスできるようにするには:
-
Google Cloudで、VPC network configurationにアクセスします。
-
サブネットの詳細画面で、「Private Googleアクセス」をオンにします。
詳細については、「プライベートGoogleアクセスの構成」を参照してください。
重要:
ネットワークがVMのインターネットアクセスを防止するように構成されている場合、VMが接続されているサブネットに対してプライベートGoogleアクセスを有効にすることに関連するリスクを、組織が認識し、受け入れることを確認してください。
次のステップ
-
Google Cloud 環境での接続の作成と管理については、「Google Cloud 環境への接続」を参照してください。