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
-
クラウド リソース マネージャー API
-
ID およびアクセス管理 (IAM) API
-
クラウド ビルド API
-
クラウド キー マネジメント サービス (KMS)
Google Cloudコンソールから、次の手順を実行します。
-
左上のメニューで、APIs and Services > Dashboard を選択します。APIs and Services Dashboard の選択画像(/en-us/citrix-virtual-apps-desktops/2503/media/gcp-api-service-select-dashboard.png)
-
ダッシュボード画面で、Compute Engine API が有効になっていることを確認します。 有効になっていない場合は、次の手順に従います。
-
APIs and Services > Library に移動します。API とサービスライブラリの画像(/en-us/citrix-virtual-apps-desktops/2503/media/gcp-api-library.png)
-
検索ボックスに「Compute Engine」と入力します。
-
検索結果から、Compute Engine API を選択します。
-
Compute Engine API ページで、Enable を選択します。
-
-
Cloud Resource Manager APIを有効にします。
-
APIs and Services > Library に移動します。
-
検索ボックスに「Cloud Resource Manager」と入力します。
-
検索結果から、Cloud Resource Manager API を選択します。
-
Cloud Resource Manager API ページで、Enable を選択します。API のステータスが表示されます。
-
-
同様に、Identity and Access Management (IAM) API と Cloud Build API を有効にします。
Google Cloud Shellを使用してAPIを有効にすることもできます。これを行うには:
-
Google Console を開き、Cloud Shell をロードします。
-
Cloud Shell で次の4つのコマンドを実行します。
-
compute.googleapis.com サービスを有効にする
-
cloudresourcemanager.googleapis.com サービスを有効にする
-
gcloud services enable iam.googleapis.com コマンド
-
gcloud services enable 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 サービスアカウント: このサービスアカウントは、Google Cloud API を有効にするで言及されているすべての API を有効にすると自動的にプロビジョニングされます。自動的に作成されたすべてのサービスアカウントを表示するには、Google Cloud コンソールで IAM と管理 > IAM に移動し、Google 提供のロール付与を含めるチェックボックスを選択します。このサービスアカウントは、プロジェクト ID と「cloudbuild」という単語で始まるメールアドレスで識別できます。例:
<project-id>@cloudbuild.gserviceaccount.comサービスアカウントに以下のロールが付与されていることを確認します。ロールを追加する必要がある場合は、Cloud Build サービスアカウントにロールを追加するに記載されている手順に従ってください。-
Cloud Build サービスアカウント
-
Compute インスタンス管理者
-
サービスアカウントユーザー
-
-
Cloud Compute サービスアカウント: このサービスアカウントは、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 Crypto Operatorには次の権限が必要です。-
cloudkms.cryptoKeys.get
-
cloudkms.cryptoKeys.list
-
cloudkms.keyRings.get
-
cloudkms.keyRings.list
-
cloudkms.cryptoKeyVersions.useToDecrypt
-
cloudkms.cryptoKeyVersions.useToEncrypt
注:新しいサービスアカウントを作成する際に利用可能なロールの完全なリストを取得するには、すべてのAPIを有効にしてください。 -
-
続行をクリックします
-
このサービスアカウントへのユーザーアクセスを許可ページで、このサービスアカウントでアクションを実行するためのアクセス権を付与するユーザーまたはグループを追加します。
-
完了をクリックします。
-
IAMメインコンソールに移動します。
-
作成されたサービスアカウントを特定します。
-
ロールが正常に割り当てられていることを確認します。
考慮事項:
サービスアカウントを作成する際は、以下を考慮してください。
-
このサービスアカウントにプロジェクトへのアクセスを許可およびこのサービスアカウントへのユーザーアクセスを許可のステップはオプションです。これらのオプションの構成ステップをスキップすることを選択した場合、新しく作成されたサービスアカウントはIAMと管理 > IAMページに表示されません。
-
サービスアカウントに関連付けられたロールを表示するには、オプションの手順をスキップせずにロールを追加します。このプロセスにより、構成されたサービスアカウントにロールが表示されるようになります。
Citrix Cloudサービスアカウントキー
Citrix DaaS で接続を作成するには、Citrix Cloud サービスアカウントキーが必要です。キーは資格情報ファイル (.json) に含まれています。キーを作成すると、ファイルは自動的にダウンロードされ、ダウンロードフォルダーに保存されます。キーを作成するときは、キータイプを JSON に設定してください。そうしないと、Web Studio はそれを解析できません。
サービスアカウントキーを作成するには、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ページで、Project IDとcloudbuildという単語で始まるメールアドレスで識別できるCloud Buildサービスアカウントを見つけます。例:
<project-id>@cloudbuild.gserviceaccount.com -
鉛筆アイコンを選択して、Cloud Buildアカウントの役割を編集します。
-
選択したプリンシパルオプションの「Edit access to "project-id" page」で、ADD ANOTHER ROLEを選択して必要な役割をCloud Buildサービスアカウントに1つずつ追加し、SAVEを選択します。注:役割の完全なリストを取得するには、すべてのAPIを有効にします。
April 29, 2024 以降
Citrix Cloudは、Google Cloudプロジェクト内で2つの異なるサービスアカウントを使用します。
-
Citrix Cloud Service Account: このサービスアカウントにより、Citrix CloudはGoogleプロジェクトにアクセスし、マシンをプロビジョニングおよび管理できます。このサービスアカウントは、Google Cloudによって生成されたキーを使用してGoogle Cloudに対して認証を行います。このサービスアカウントは手動で作成する必要があります。このサービスアカウントは、メールアドレスで識別できます。例:
<my-service-account>@<project-id>.iam.gserviceaccount.com。 -
Cloud Compute Service Account: このサービスアカウントは、Enable Google Cloud APIsに記載されているすべてのAPIを有効にすると自動的にプロビジョニングされます。自動的に作成されたすべてのサービスアカウントを表示するには、Google CloudコンソールでIAM & Admin > IAMに移動し、Include Google-provided role grantsチェックボックスをオンにします。このアカウントには、操作を実行するためのIAM基本編集者ロールがあります。ただし、より詳細な制御を行うためにデフォルトの権限を削除する場合は、次の権限を必要とするStorage Adminロールを追加する必要があります。
-
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 エディター
-
サービスアカウントユーザー
-
クラウド データストア ユーザー
-
クラウド KMS クリプト オペレーター
Cloud KMS Crypto Operator には、次の権限が必要です。-
cloudkms.cryptoKeys.get
-
cloudkms.cryptoKeys.list
-
cloudkms.keyRings.get
-
cloudkms.keyRings.list
注:新しいサービスアカウントを作成する際に利用可能なロールの完全なリストを取得するには、すべてのAPIを有効にしてください。 -
-
続行をクリックします
-
このサービスアカウントへのユーザーアクセスを許可ページで、ユーザーまたはグループを追加して、このサービスアカウントでのアクションを実行するアクセス権を付与します。
-
完了をクリックします。
-
IAMメインコンソールに移動します。
-
作成されたサービスアカウントを特定します。
-
役割が正常に割り当てられていることを確認します。
考慮事項:
サービスアカウントを作成する際は、次の点を考慮してください。
-
このサービスアカウントにプロジェクトへのアクセス権を付与するおよびこのサービスアカウントにユーザーアクセス権を付与するの手順はオプションです。これらのオプションの構成手順をスキップすることを選択した場合、新しく作成されたサービスアカウントはIAMと管理 > IAMページに表示されません。
-
サービスアカウントに関連付けられた役割を表示するには、オプションの手順をスキップせずに役割を追加します。このプロセスにより、構成されたサービスアカウントに役割が表示されるようになります。
Citrix Cloudサービスアカウントキー
Citrix DaaSで接続を作成するには、Citrix Cloudサービスアカウントキーが必要です。キーは資格情報ファイル(.json)に含まれています。キーを作成すると、ファイルは自動的にダウンロードされ、ダウンロードフォルダーに保存されます。キーを作成する際は、キーの種類をJSONに設定してください。そうしないと、Web Studioはそれを解析できません。
サービスアカウントキーを作成するには、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日後にコンテンツを削除するオプションが設定されています。このプロセスでは、接続に使用されるサービスアカウントに、Google Cloudの権限が storage.buckets.update に設定されている必要があります。サービスアカウントにこの権限がない場合、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アクセス(/en-us/citrix-virtual-apps-desktops/2503/media/gcp-private-access.png)
詳細については、「Configuring Private Google Access」を参照してください。
重要:
ネットワークがVMのインターネットアクセスを防止するように構成されている場合、VMが接続されているサブネットに対してPrivate Googleアクセスを有効にすることに関連するリスクを組織が負うことを確認してください。
次のステップ
-
Google Cloud 環境での接続の作成と管理については、「Google Cloud 環境への接続」を参照してください。
詳細情報
-
接続とリソースの作成および管理(/ja-jp/citrix-virtual-apps-desktops/2503/install-configure/connections.html)
-
マシンカタログの作成(/ja-jp/citrix-virtual-apps-desktops/2503/install-configure/machine-catalogs-create.html)