Google Cloud環境

最終公開日 : Nov 13, 2026
Citrix Virtual Apps and Desktops™では、Google Cloudでマシンをプロビジョニングおよび管理できます。この記事では、Machine Creation Services(MCS)を使用して、Citrix Virtual AppsまたはCitrix Virtual Desktopsサービス展開で仮想マシンをプロビジョニングする方法について説明します。

要件

  • Citrix Cloud™アカウント。この記事で説明されている機能は、Citrix Cloudでのみ利用可能です。
  • Citrix DaaSサブスクリプション。詳細については、「Get started」を参照してください。
  • Google Cloudプロジェクト。このプロジェクトには、マシンカタログに関連付けられているすべてのコンピューティングリソースが保存されます。既存のプロジェクトでも新規のプロジェクトでもかまいません。
  • Google Cloudプロジェクトで4つのAPIを有効にします。詳細については、「Enable Google Cloud APIs」を参照してください。
  • Google Cloudサービスアカウント。サービスアカウントはGoogle Cloudに認証し、プロジェクトへのアクセスを有効にします。詳細については、「Configure the Google Cloud service account」を参照してください。
  • Googleプライベートアクセスを有効にします。詳細については、「Enable-private-google-access」を参照してください。

Google Cloud APIを有効にする

Web Studioを介してGoogle Cloudの機能を使用するには、Google Cloudプロジェクトで次のAPIを有効にします。
  • コンピュート エンジン API
  • クラウド リソース マネージャー API
  • ID およびアクセス管理 (IAM) API
  • クラウド ビルド API
Google Cloudコンソールから、次の手順を実行します。
  1. 左上のメニューで、**「APIとサービス」>「ダッシュボード」**を選択します。
    APIとサービスダッシュボードの選択画像
  2. ダッシュボード画面で、Compute Engine APIが有効になっていることを確認します。 有効になっていない場合は、次の手順に従ってください。
    1. 「APIとサービス > ライブラリ」に移動します。
      APIとサービスライブラリの画像
    2. 検索ボックスに「Compute Engine」と入力します。
    3. 検索結果から「Compute Engine API」を選択します。
    4. 「Compute Engine API」ページで、「有効にする」を選択します。
  3. Cloud Resource Manager APIを有効にします。
    1. 「APIとサービス > ライブラリ」に移動します。
    2. 検索ボックスに「Cloud Resource Manager」と入力します。
    3. 検索結果から「Cloud Resource Manager API」を選択します。
    4. 「Cloud Resource Manager API」ページで、「有効にする」を選択します。APIのステータスが表示されます。
  4. 同様に、Identity and Access Management (IAM) APIとCloud Build APIを有効にします。
Google Cloud Shellを使用してAPIを有効にすることもできます。これを行うには:
  1. Googleコンソールを開き、Cloud Shellをロードします。
  2. 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 を有効にします。
  3. Cloud Shellがプロンプトを表示した場合、「承認」をクリックします。

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

注:
CP は、Cloud Build Service のデフォルトの動作とサービスアカウントの使用に関して、April 29, 2024 以降に変更を導入します。詳細については、「Cloud Build Service Account Change」(https://cloud.google.com/build/docs/cloud-build-service-account-updates) を参照してください。April 29, 2024 より前に Cloud Build API が有効になっている既存の Google プロジェクトは、この変更の影響を受けません。ただし、April 29 以降も既存の Cloud Build Service の動作を維持したい場合は、Cloud Build API を有効にする前に、制約の適用を無効にする組織ポリシーを作成または適用できます。その結果、以下のコンテンツは「Before April 29, 2024」(#before-april-29-2024) と「After April 29, 2024」(#after-april-29-2024) の2つに分かれています。新しい組織ポリシーを設定した場合は、「Before April 29, 2024」(#before-april-29-2024) のセクションに従ってください。

April 29, 2024より前

Citrix Cloudは、Google Cloudプロジェクト内で3つの個別のサービスアカウントを使用します。
  • Citrix Cloudサービスアカウント: このサービスアカウントにより、Citrix CloudはGoogleプロジェクトにアクセスし、マシンをプロビジョニングおよび管理できます。このサービスアカウントは、Google Cloudによって生成されたキーを使用してGoogle Cloudに認証します。
    ここに概説されているように、このサービスアカウントを手動で作成する必要があります。詳細については、Citrix Cloudサービスアカウントの作成を参照してください。
    このサービスアカウントは、メールアドレスで識別できます。例: <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 Instance 管理者
    • サービスアカウントユーザー
  • 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 KMS 暗号オペレーター
    Cloud KMS 暗号オペレーターには、以下の権限が必要です。
    • cloudkms.cryptoKeys.get
    • cloudkms.cryptoKeys.list
    • cloudkms.keyRings.get
    • cloudkms.keyRings.list
    注:
    新しいサービスアカウントを作成する際に利用可能なロールの完全なリストを取得するには、すべてのAPIを有効にしてください。
  5. CONTINUEをクリックします。
  6. このサービスアカウントへのユーザーアクセスを許可ページで、このサービスアカウントでアクションを実行するアクセス権を付与するために、ユーザーまたはグループを追加します。
  7. DONEをクリックします。
  8. IAMメインコンソールに移動します。
  9. 作成されたサービスアカウントを特定します。
  10. ロールが正常に割り当てられていることを検証します。
考慮事項:
サービスアカウントを作成する際は、以下を考慮してください。
  • このサービスアカウントにプロジェクトへのアクセスを許可およびこのサービスアカウントへのユーザーアクセスを許可の手順はオプションです。これらのオプションの構成手順をスキップすることを選択した場合、新しく作成されたサービスアカウントは、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 サービスアカウントにロールを追加するには、次の手順を実行します。
  1. Google Cloud コンソールで、IAM と管理 > IAM に移動します。
  2. IAM > 権限ページで、作成したサービスアカウントを電子メールアドレスで特定し、見つけます。
    例: <my-service-account>@<project-id>.iam.gserviceaccount.com
  3. 鉛筆アイコンを選択して、サービスアカウントのプリンシパルへのアクセスを編集します。
  4. 選択したプリンシパルオプションの**「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を有効にして、ロールの完全なリストを取得します。

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基本編集者ロールがあります。ただし、より詳細な制御を行うためにデフォルトの権限を削除した場合、次の権限を必要とする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 サービスアカウントを作成するには、次の手順に従います。
  1. Google Cloud コンソールで、IAM と管理 > サービスアカウントに移動します。
  2. サービスアカウントページで、サービスアカウントを作成を選択します。
  3. サービスアカウントの作成ページで、必要な情報を入力し、作成して続行を選択します。
  4. 「このサービスアカウントにプロジェクトへのアクセスを許可する」ページで、「ロールを選択」ドロップダウンメニューをクリックし、必要なロールを選択します。さらにロールを追加する場合は、「+別のロールを追加」をクリックします。
    各アカウント(個人またはサービス)には、プロジェクトの管理を定義するさまざまなロールがあります。このサービスアカウントには、以下のロールを付与してください。
    • Compute 管理者
    • Storage管理者
    • Cloud Build編集者
    • サービスアカウントユーザー
    • クラウド データストア ユーザー
    • Cloud KMS 暗号オペレーター
    Cloud KMS 暗号オペレーターには、以下の権限が必要です。
    • cloudkms.cryptoKeys.get
    • cloudkms.cryptoKeys.list
    • cloudkms.keyRings.get
    • cloudkms.keyRings.list
    注:
    新しいサービスアカウントを作成する際に利用可能なロールの完全なリストを取得するには、すべてのAPIを有効にしてください。
  5. CONTINUEをクリックします。
  6. このサービスアカウントへのユーザーアクセスを許可ページで、このサービスアカウントでアクションを実行するアクセス権を付与するために、ユーザーまたはグループを追加します。
  7. DONEをクリックします。
  8. IAMメインコンソールに移動します。
  9. 作成されたサービスアカウントを特定します。
  10. ロールが正常に割り当てられていることを検証します。
考慮事項:
サービスアカウントを作成する際は、以下を考慮してください。
  • このサービスアカウントにプロジェクトへのアクセスを許可およびこのサービスアカウントへのユーザーアクセスを許可の手順はオプションです。これらのオプションの構成手順をスキップすることを選択した場合、新しく作成されたサービスアカウントは、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 サービスアカウントにロールを追加するには、次の手順を実行します。
  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 ページで、プロジェクト ID と compute という単語で始まるメールアドレスで識別できる Cloud Compute Service Account を見つけます。
  3. 鉛筆アイコンを選択して、Cloud Build アカウントのロールを編集します。
  4. 選択したプリンシパルオプションの**「"project-id"へのアクセスを編集」ページで、「別のロールを追加」を選択して、必要なロールをCloud Buildサービスアカウントに1つずつ追加し、「保存」**を選択します。
    注:
    すべてのAPIを有効にして、ロールの完全なリストを取得します。

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

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

プライベート Google アクセスを有効にする

VM のネットワークインターフェイスに外部 IP アドレスが割り当てられていない場合、パケットは他の内部 IP アドレスの宛先にのみ送信されます。プライベートアクセスを有効にすると、VM は Google API および関連サービスで使用される外部 IP アドレスのセットに接続します。
注:
プライベート Google アクセスが有効になっているかどうかにかかわらず、パブリック IP アドレスを持つ VM と持たない VM の両方が、特にサードパーティのネットワークアプライアンスが環境にインストールされている場合、Google Public API にアクセスできる必要があります。
MCSプロビジョニングのために、サブネット内のVMがパブリックIPアドレスなしでGoogle APIにアクセスできるようにするには、次の手順を実行します。
  1. Google Cloudで、VPC network configurationにアクセスします。
  2. サブネットの詳細画面で、「Private Googleアクセス」をオンにします。
プライベートGoogleアクセス
詳細については、「Configuring Private Google Access」を参照してください。
重要:
ネットワークがVMのインターネットアクセスを防止するように構成されている場合、VMが接続されているサブネットに対してPrivate Googleアクセスを有効にすることに関連するリスクを組織が負うことを確認してください。

接続の追加

「接続とリソースの作成」(/ja-jp/citrix-virtual-apps-desktops/2203-ltsr/manage-deployment/connections.html)のガイダンスに従ってください。次の説明は、ホスティング接続の設定について説明しています。
  1. 管理 > 構成から、左側のペインでホスティングを選択します。
  2. アクションバーで**「接続とリソースの追加」**を選択します。
  3. **「接続」ページで、「新しい接続の作成」と「Citrix provisioning™ tools」を選択し、「次へ」**を選択します。
    • 接続の種類。メニューからGoogle Cloudを選択します。
    • 接続名。接続の名前を入力します。
  4. 「リージョン」ページで、メニューからプロジェクト名を選択し、使用するリソースを含むリージョンを選択してから、「次へ」を選択します。
  5. 「ネットワーク」ページで、リソースの名前を入力し、メニューから仮想ネットワークを選択し、サブセットを選択してから、「次へ」を選択します。リソース名は、リージョンとネットワークの組み合わせを識別するのに役立ちます。名前に「(Shared)」サフィックスが付いている仮想ネットワークは、共有VPCを表します。共有VPCのサブネットレベルのIAMロールを構成した場合、共有VPCの特定のサブネットのみがサブネットリストに表示されます。
    注:
    • リソース名には1~64文字を含めることができ、空白のみ、または文字\ / ; : # . * ? = < > | [ ] { } " ' ( ) ' )を含めることはできません。
  6. 「概要」ページで情報を確認し、「完了」を選択して「接続とリソースの追加」ウィンドウを終了します。
接続とリソースを作成すると、作成した接続とリソースが一覧表示されます。接続を構成するには、接続を選択し、アクションバーで該当するオプションを選択します。
同様に、接続の下に作成されたリソースを削除、名前変更、またはテストできます。これを行うには、接続の下のリソースを選択し、アクションバーで該当するオプションを選択します。

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

ヒント:
永続ディスクは、仮想ディスクを指すGoogle Cloudの用語です。
マスターVMインスタンスを準備するには、計画しているマシンカタログ内のクローンVDAインスタンスに必要な構成と一致するプロパティを持つVMインスタンスを作成および構成します。この構成は、インスタンスのサイズとタイプにのみ適用されるわけではありません。メタデータ、タグ、GPU割り当て、ネットワークタグ、サービスアカウントのプロパティなどのインスタンス属性も含まれます。
マスタリングプロセスの一環として、MCSはマスターVMインスタンスを使用してGoogle Cloudのインスタンステンプレートを作成します。このインスタンステンプレートは、マシンカタログを構成するクローンVDAインスタンスの作成に使用されます。クローンインスタンスは、インスタンステンプレートが作成されたマスターVMインスタンスのプロパティ(VPC、サブネット、永続ディスクのプロパティを除く)を継承します。
マスターVMインスタンスのプロパティを要件に合わせて構成したら、インスタンスを起動し、そのインスタンスの永続ディスクを準備します。
ディスクのスナップショットを手動で作成することをお勧めします。そうすることで、意味のある命名規則を使用してバージョンを追跡し、マスターイメージの以前のバージョンを管理するためのより多くのオプションが得られ、マシンカタログ作成の時間を節約できます。独自のスナップショットを作成しない場合、MCSは一時的なスナップショットを作成します(これはプロビジョニングプロセスの終了時に削除されます)。

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

注:
マシンカタログを作成する前に、リソースを作成してください。マシンカタログを構成する際は、Google Cloud が定めた命名規則を使用してください。詳細については、バケットとオブジェクトの命名ガイドラインを参照してください。
「マシンカタログの作成」(/ja-jp/citrix-virtual-apps-desktops/2203-ltsr/install-configure/machine-catalogs-create.html)のガイダンスに従ってください。現在、StudioはGoogle Cloudカタログの作成をサポートしていません。代わりにPowerShellを使用してください。

マシンカタログの管理

カタログにマシンを追加したり、マシンを更新したり、更新をロールバックしたりするには、「マシンカタログの管理」を参照してください。

電源管理

Citrix DaaSでは、Google Cloudマシンの電源管理が可能です。ナビゲーションペインの検索ノードを使用して、電源管理したいマシンを見つけます。以下の電源操作が利用可能です。
  • 削除
  • 起動
  • 再起動
  • 強制再起動
  • シャットダウン
  • 強制シャットダウン
  • デリバリーグループに追加
  • タグの管理
  • メンテナンスモードをオンにする
Autoscaleを使用してGoogle Cloudマシンを電源管理することもできます。これを行うには、Google Cloudマシンをデリバリーグループに追加し、そのデリバリーグループでAutoscaleを有効にします。Autoscaleの詳細については、「Autoscale」を参照してください。

偶発的なマシン削除からの保護

Citrix DaaSでは、偶発的な削除を防ぐために、Google Cloud上のMCSリソースを保護できます。プロビジョニングされたVMを構成するには、deletionProtectionフラグをTRUEに設定します。
デフォルトでは、MCSまたはGoogle Cloudプラグインを介してプロビジョニングされたVMは、InstanceProtectionが有効な状態で作成されます。この実装は、永続カタログと非永続カタログの両方に適用されます。非永続カタログは、インスタンスがテンプレートから再作成されるときに更新されます。既存の永続マシンについては、Google Cloudコンソールでフラグを設定できます。フラグの設定の詳細については、「Googleドキュメントサイト」を参照してください。永続カタログに追加される新しいマシンは、deletionProtectionが有効な状態で作成されます。
deletionProtectionフラグを設定したVMインスタンスを削除しようとすると、リクエストは失敗します。ただし、compute.instances.setDeletionProtection権限が付与されているか、IAMのCompute Adminロールが割り当てられている場合は、フラグをリセットしてリソースを削除できるようにすることができます。

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

Google Cloudへの接続を作成し、その後Google Cloudマシンを含むカタログを作成できます。その後、Citrix DaaSを介して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クラウド資産の一元的な制御、使用、管理を提供するため、大規模なインストールに適したオプションです。詳細については、Googleドキュメントサイトを参照してください。
この機能により、Machine Creation Services™ (MCS) は、共有VPCに展開されたマシンカタログのプロビジョニングと管理をサポートします。このサポートは、現在ローカルVPCで提供されているサポートと機能的に同等ですが、2つの点で異なります。
  1. ホスト接続の作成に使用されるサービスアカウントに追加の権限を付与する必要があります。このプロセスにより、MCSは共有VPCリソースにアクセスして使用できるようになります。
  2. 2つのファイアウォールルールを作成する必要があります。1つはイングレス用、もう1つはエグレス用です。これらのファイアウォールルールは、イメージマスタリングプロセス中に使用されます。

必要な新しい権限

ホスト接続を作成する際には、特定の権限を持つGoogle Cloudサービスアカウントが必要です。これらの追加権限は、共有VPCベースのホスト接続の作成に使用されるすべてのサービスアカウントに付与する必要があります。
ヒント:
これらの追加権限は、Citrix DaaSにとって新しいものではありません。これらはローカル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ローカルVCPを使用する場合、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ロールには、次の権限を含めます。
  • compute.firewalls.list
  • compute.networks.list
  • compute.subnetworks.list
  • compute.subnetworks.use
プロジェクトレベルのIAMロールを作成するには:
  1. Google Cloudコンソールで、IAMと管理 > ロールに移動します。
  2. 「ロール」ページで、「ロールを作成」を選択します。
  3. 「ロールを作成」ページで、ロール名を指定します。「権限を追加」を選択します。
    1. 権限の追加ページで、ロールに権限を個別に追加します。権限を追加するには、テーブルをフィルタリングフィールドに権限の名前を入力します。権限を選択し、追加を選択します。
    2. 「作成」を選択します。
サブネットレベルのIAMロール。このロールは、ロールを作成を選択した後に、権限compute.subnetworks.listとcompute.subnetworks.useの追加を省略します。このIAMアクセスレベルの場合、権限compute.firewalls.listとcompute.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 コンソールで、Compute Engine > 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 Developer Toolsのドキュメントを参照してください。
  2. インスタンスのVMインスタンスの詳細ページに移動し、ノードアフィニティフィールドにラベルが入力されていることを確認します。

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

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

プレビュー: 顧客管理の暗号化キー (CMEK) の使用

MCSカタログに顧客管理の暗号化キー (CMEK) を使用できます。この機能を使用する場合、Google Cloud Key Management ServiceのCryptoKey Encrypter/DecrypterロールをCompute Engineサービスエージェントに割り当てます。Citrix DaaSアカウントは、キーが保存されているプロジェクトで適切な権限を持っている必要があります。詳細については、Cloud KMSキーを使用してリソースを保護するを参照してください。
Compute Engine サービスエージェントは次の形式です: service-<Project _Number>@compute-system.iam.gserviceaccount.com。この形式は、デフォルトの Compute Engine サービスアカウントとは異なります。
注:
この Compute Engine サービスアカウントは、Google Console の「IAM 権限」表示に表示されない場合があります。そのような場合は、Cloud KMS キーを使用してリソースを保護する で説明されているように、gcloud コマンドを使用してください。

Citrix DaaS アカウントに権限を割り当てる

Google Cloud KMS の権限はさまざまな方法で構成できます。プロジェクトレベルの KMS 権限またはリソースレベルの KMS 権限のいずれかを付与できます。詳細については、権限とロール を参照してください。

プロジェクトレベルの権限

1つのオプションは、Citrix DaaS アカウントに Cloud KMS リソースを参照するためのプロジェクトレベルの権限を付与することです。これを行うには、カスタムロールを作成し、次の権限を追加します。
  • cloudkms.keyRings.list
  • cloudkms.keyRings.get
  • cloudkms.cryptokeys.list
  • cloudkms.cryptokeys.get
このカスタムロールをCitrix DaaSアカウントに割り当てます。これにより、インベントリ内の関連プロジェクトでリージョンキーを参照できるようになります。

リソースレベルの権限

もう1つのオプションであるリソースレベルの権限については、Google Cloudコンソールで、MCSプロビジョニングに使用するcryptoKeyを参照します。カタログプロビジョニングに使用するキーリングまたはキーにCitrix DaaSアカウントを追加します。
ヒント:
このオプションでは、Citrix DaaSアカウントにCloud KMSリソースに対するプロジェクトレベルのリスト権限がないため、インベントリでプロジェクトのリージョンキーを参照できません。ただし、以下で説明するように、ProvSchemeカスタムプロパティで正しいcryptoKeyIdを指定することで、CMEKを使用してカタログをプロビジョニングすることは可能です。

カスタムプロパティを使用したCMEKによるプロビジョニング

PowerShellでプロビジョニングスキームを作成する際に、ProvScheme CustomPropertiesでCryptoKeyIdプロパティを指定します。例:
'<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>'
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>'
このプロビジョニングスキームに関連するすべての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.
ヒント:
詳細については、「コンソールからキーリングを編集または削除する」を参照してください。

均一なバケットレベルのアクセス互換性

Citrix DaaS は、Google Cloud の uniform bucket-level access control policy と互換性があります。この機能は、ストレージバケットを含むリソースの操作を許可するために、サービスアカウントに権限を付与する IAM ポリシーの使用を強化します。uniform bucket level access control を使用すると、Citrix DaaS はアクセス制御リスト (ACL) を使用して、ストレージバケットまたはそこに保存されているオブジェクトへのアクセスを制御できます。Google Cloud の uniform bucket-level access の概要については、Uniform bucket-level access を参照してください。構成情報については、Require uniform bucket-level access を参照してください。

サービスエンドポイントURL

次のURLにアクセスできる必要があります。
  • https://oauth2.googleapis.com
  • https://cloudresourcemanager.googleapis.com
  • https://compute.googleapis.com
  • https://storage.googleapis.com
  • https://cloudbuild.googleapis.com

Google Cloudプロジェクト

Google Cloudプロジェクトには基本的に2つのタイプがあります。
  • プロビジョニングプロジェクト:この場合、現在の管理者アカウントがプロジェクト内のプロビジョニングされたマシンを所有します。このプロジェクトはローカルプロジェクトとも呼ばれます。
  • 共有VPCプロジェクト: プロビジョニングプロジェクトで作成されたマシンが、共有VPCプロジェクトのVPCを使用するプロジェクト。プロビジョニングプロジェクトに使用される管理者アカウントは、このプロジェクトで限られた権限、具体的にはVPCを使用する権限のみを持ちます。

必要なGCP権限

このセクションには、GCP権限の完全なリストが含まれています。機能が正しく動作するように、このセクションに記載されている権限の完全なセットを使用してください。
注:
GCPは、Cloud Build Servicesのデフォルトの動作とサービスアカウントの使用に関して、April 29, 2024以降に変更を導入します。詳細については、Cloud Build Service Account Changeを参照してください。April 29, 2024より前にCloud Build APIが有効になっている既存のGoogleプロジェクトは、この変更の影響を受けません。ただし、April 29以降も既存のCloud Build Serviceの動作を維持したい場合は、APIを有効にする前に、制約の適用を無効にする組織ポリシーを作成または適用できます。新しい組織ポリシーを設定した場合、このセクションの既存の権限と、Cloud Build Service Account Change前とマークされている項目を引き続き使用できます。そうでない場合は、既存の権限と、Cloud Build Service Account Change後とマークされている項目に従ってください。

ホスト接続の作成

  • プロビジョニングプロジェクトのCitrix Cloudサービスアカウントに必要な最小限の権限:
    compute.instanceTemplates.list
    compute.instances.list
    compute.networks.list
    compute.projects.get
    compute.regions.list
    compute.subnetworks.list
    compute.zones.list
    resourcemanager.projects.get
    次の Google 定義ロールには、上記にリストされている権限があります:
    • Compute 管理者
    • クラウド データストア ユーザー
  • 共有 VPC プロジェクト内の Citrix Cloud サービスアカウントの共有 VPC に必要な追加の権限:
    compute.networks.list
    compute.subnetworks.list
    resourcemanager.projects.get
    次の Google 定義ロールには、上記にリストされている権限があります:
    • コンピュート ネットワーク ユーザー

VM の電源管理

電源管理のみのカタログの場合に、プロビジョニングプロジェクト内のCitrix Cloudサービスアカウントに必要な最小限の権限:
compute.instanceTemplates.list
compute.instances.list
compute.instances.get
compute.instances.reset
compute.instances.resume
compute.instances.start
compute.instances.stop
compute.instances.suspend
compute.networks.list
compute.projects.get
compute.regions.list
compute.subnetworks.list
compute.zones.list
resourcemanager.projects.get
compute.zoneOperations.get
次の Google 定義ロールには、上記にリストされている権限があります:
  • Compute 管理者
  • クラウド データストア ユーザー

仮想マシンの作成、更新、または削除

  • プロビジョニングプロジェクトのCitrix Cloudサービスアカウントに必要な最小限の権限:
    cloudbuild.builds.create
    cloudbuild.builds.get
    cloudbuild.builds.list
    compute.acceleratorTypes.list
    compute.diskTypes.get
    compute.diskTypes.list
    compute.disks.create
    compute.disks.createSnapshot
    compute.disks.delete
    compute.disks.get
    compute.disks.list
    compute.disks.setLabels
    compute.disks.use
    compute.disks.useReadOnly
    compute.firewalls.create
    compute.firewalls.delete
    compute.firewalls.list
    compute.globalOperations.get
    compute.images.create
    compute.images.delete
    compute.images.get
    compute.images.list
    compute.images.setLabels
    compute.images.useReadOnly
    compute.instanceTemplates.create
    compute.instanceTemplates.delete
    compute.instanceTemplates.get
    compute.instanceTemplates.list
    compute.instanceTemplates.useReadOnly
    compute.instances.attachDisk
    compute.instances.create
    compute.instances.delete
    compute.instances.detachDisk
    compute.instances.get
    compute.instances.list
    compute.instances.reset
    compute.instances.resume
    compute.instances.setDeletionProtection
    compute.instances.setLabels
    compute.instances.setMetadata
    compute.instances.setServiceAccount
    compute.instances.setTags
    compute.instances.start
    compute.instances.stop
    compute.instances.suspend
    compute.machineTypes.get
    compute.machineTypes.list
    compute.networks.list
    compute.networks.updatePolicy
    compute.nodeGroups.list
    compute.nodeTemplates.get
    compute.projects.get
    compute.regions.list
    compute.snapshots.create
    compute.snapshots.delete
    compute.snapshots.list
    compute.snapshots.get
    compute.snapshots.setLabels
    compute.snapshots.useReadOnly
    compute.subnetworks.get
    compute.subnetworks.list
    compute.subnetworks.use
    compute.zoneOperations.get
    compute.zoneOperations.list
    compute.zones.get
    compute.zones.list
    iam.serviceAccounts.actAs
    resourcemanager.projects.get
    storage.buckets.create
    storage.buckets.delete
    storage.buckets.get
    storage.buckets.list
    storage.buckets.update
    storage.objects.create
    storage.objects.delete
    storage.objects.get
    storage.objects.list
    compute.networks.get
    compute.resourcePolicies.use
    次の Google 定義ロールには、上記にリストされている権限があります:
    • Compute 管理者
    • Storage管理者
    • Cloud Build編集者
    • サービスアカウントユーザー
    • クラウド データストア ユーザー
  • 共有VPCプロジェクトのVPCとサブネットワークを使用してホスティングユニットを作成するために、共有VPCプロジェクト内のCitrix Cloudサービスアカウントの共有VPCに追加で必要な権限:
    compute.firewalls.list
    compute.networks.list
    compute.projects.get
    compute.regions.list
    compute.subnetworks.get
    compute.subnetworks.list
    compute.subnetworks.use
    compute.zones.list
    resourcemanager.projects.get
    次の Google 定義ロールには、上記にリストされている権限があります:
    • コンピュート ネットワーク ユーザー
    • クラウド データストア ユーザー
  • (Cloud Buildサービスアカウント変更前): Google Cloud Buildサービスが準備指示ディスクをMCSにダウンロードする際に、プロビジョニングプロジェクトのCloud Buildサービスアカウントに必要となる最小限の権限:
  • (Cloud Buildサービスアカウント変更後): Google Cloud Computeサービスが準備指示ディスクをMCSにダウンロードする際に、プロビジョニングプロジェクトのCloud Computeサービスアカウントに必要となる最小限の権限:
    compute.disks.create
    compute.disks.delete
    compute.disks.get
    compute.disks.list
    compute.disks.setLabels
    compute.disks.use
    compute.disks.useReadOnly
    compute.images.get
    compute.images.list
    compute.images.useReadOnly
    compute.instances.create
    compute.instances.delete
    compute.instances.get
    compute.instances.getSerialPortOutput
    compute.instances.list
    compute.instances.setLabels
    compute.instances.setMetadata
    compute.instances.setServiceAccount
    compute.machineTypes.list
    compute.networks.get
    compute.networks.list
    compute.projects.get
    compute.subnetworks.list
    compute.subnetworks.use
    compute.subnetworks.useExternalIp
    compute.zoneOperations.get
    compute.zones.list
    iam.serviceAccounts.actAs
    logging.logEntries.create
    pubsub.topics.publish
    resourcemanager.projects.get
    source.repos.get
    source.repos.list
    storage.buckets.create
    storage.buckets.get
    storage.buckets.list
    storage.objects.create
    storage.objects.delete
    storage.objects.get
    storage.objects.list
    次の Google 定義ロールには、上記にリストされている権限があります:
    • Cloud Build サービスアカウント (Cloud Build サービスアカウント変更後はCloud Compute サービスアカウント)
    • Compute Instance 管理者
    • サービスアカウントユーザー
  • MCSに準備指示ディスクをダウンロードする際に、Google Cloud BuildサービスによってプロビジョニングプロジェクトのCloud Compute サービスアカウントに必要とされる最小限の権限:
    resourcemanager.projects.get
    storage.objects.create
    storage.objects.get
    storage.objects.list
    次の Google 定義ロールには、上記にリストされている権限があります:
    • コンピュート ネットワーク ユーザー
    • ストレージアカウントユーザー
    • クラウド データストア ユーザー
  • (Cloud Buildサービスアカウント変更前): Google Cloud Buildサービスが準備指示ディスクをMCSにダウンロードする際に、プロビジョニングプロジェクトのCloud Buildサービスアカウントの共有VPCに必要となる追加の権限:
  • (Cloud Buildサービスアカウント変更後): Google Cloud Computeサービスが準備指示ディスクをMCSにダウンロードする際に、プロビジョニングプロジェクトのCloud Computeサービスアカウントの共有VPCに必要となる追加の権限:
    compute.firewalls.list
    compute.networks.list
    compute.subnetworks.list
    compute.subnetworks.use
    resourcemanager.projects.get
    次の Google 定義ロールには、上記にリストされている権限があります:
    • コンピュート ネットワーク ユーザー
    • ストレージアカウントユーザー
    • クラウド データストア ユーザー
  • プロビジョニングプロジェクトのCitrix CloudサービスアカウントのCloud Key Management Service (KMS) に必要な追加権限:
    cloudkms.cryptoKeys.get
    cloudkms.cryptoKeys.list
    cloudkms.keyRings.get
    cloudkms.keyRings.list
    次の Google 定義ロールには、上記にリストされている権限があります:
    • Compute KMS 閲覧者

一般的な権限

以下は、MCSでサポートされているすべての機能について、プロビジョニングプロジェクトのCitrix Cloudサービスアカウントの権限です。これらの権限は、今後最高の互換性を提供します:
resourcemanager.projects.get
cloudbuild.builds.create
cloudbuild.builds.get
cloudbuild.builds.list
compute.acceleratorTypes.list
compute.diskTypes.get
compute.diskTypes.list
compute.disks.create
compute.disks.createSnapshot
compute.disks.delete
compute.disks.get
compute.disks.setLabels
compute.disks.use
compute.disks.useReadOnly
compute.firewalls.create
compute.firewalls.delete
compute.firewalls.list
compute.globalOperations.get
compute.images.create
compute.images.delete
compute.images.get
compute.images.list
compute.images.setLabels
compute.images.useReadOnly
compute.instanceTemplates.create
compute.instanceTemplates.delete
compute.instanceTemplates.get
compute.instanceTemplates.list
compute.instanceTemplates.useReadOnly
compute.instances.attachDisk
compute.instances.create
compute.instances.delete
compute.instances.detachDisk
compute.instances.get
compute.instances.list
compute.instances.reset
compute.instances.resume
compute.instances.setDeletionProtection
compute.instances.setLabels
compute.instances.setMetadata
compute.instances.setTags
compute.instances.start
compute.instances.stop
compute.instances.suspend
compute.instances.update
compute.instances.updateAccessConfig
compute.instances.updateDisplayDevice
compute.instances.updateSecurity
compute.instances.updateShieldedInstanceConfig
compute.instances.updateShieldedVmConfig
compute.machineTypes.get
compute.machineTypes.list
compute.networks.list
compute.networks.updatePolicy
compute.nodeGroups.list
compute.nodeTemplates.get
compute.projects.get
compute.regions.list
compute.snapshots.create
compute.snapshots.delete
compute.snapshots.list
compute.snapshots.get
compute.snapshots.setLabels
compute.snapshots.useReadOnly
compute.subnetworks.get
compute.subnetworks.list
compute.subnetworks.use
compute.subnetworks.useExternalIp
compute.zoneOperations.get
compute.zoneOperations.list
compute.zones.get
compute.zones.list
resourcemanager.projects.get
storage.buckets.create
storage.buckets.delete
storage.buckets.get
storage.buckets.list
storage.buckets.update
storage.objects.create
storage.objects.delete
storage.objects.get
storage.objects.list
cloudkms.cryptoKeys.get
cloudkms.cryptoKeys.list
cloudkms.keyRings.get
cloudkms.keyRings.list
compute.disks.list
compute.instances.setServiceAccount
compute.networks.get
compute.networks.use
compute.networks.useExternalIp
iam.serviceAccounts.actAs
compute.resourcePolicies.use

詳細情報