Citrix Virtual Apps and Desktops

グーグル クラウド 環境

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

必要条件

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

グーグルクラウド API を有効にする

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

  • コンピュートエンジン API
  • Cloud Resource Manager API
  • Identity and Access Management (IAM) API
  • クラウド ビルド API

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

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

    API とサービス ダッシュボードの選択画像(/ja-jp/citrix-virtual-apps-desktops/2203-ltsr/media/gcp-api-service-select-dashboard.png)

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

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

      API とサービス ライブラリの画像(/ja-jp/citrix-virtual-apps-desktops/2203-ltsr/media/gcp-api-library.png)

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

    3. 検索結果から、Compute Engine APIを選択します。

    4. Compute Engine APIページで、有効にするを選択します。

  3. クラウド リソース マネージャー API を有効にします。

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

    2. 検索ボックスに クラウド リソース マネージャー と入力します。

    3. 検索結果から、クラウド リソース マネージャー API を選択します。

    4. Cloud Resource Manager APIページで、有効にするを選択します。API のステータスが表示されます。

  4. 同様に、ID およびアクセス管理 (IAM) APICloud 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 は、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 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 提供のロール付与を含めるチェックボックスを選択します。

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

    サービスアカウントに以下のロールが付与されていることを確認します。ロールを追加する必要がある場合は、Cloud Build サービスアカウントにロールを追加するに記載されている手順に従ってください。

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

    • リソースマネージャー.プロジェクト.取得
    • ストレージオブジェクトの作成
    • ストレージオブジェクトの取得
    • ストレージ.オブジェクト.リスト

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

Citrix Cloud サービスアカウントを作成する

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

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

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

    • コンピュート管理者
    • ストレージ管理者
    • クラウドビルド編集者
    • サービスアカウントユーザー
    • クラウドデータストアユーザー
    • Cloud KMS 暗号化オペレーター

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

    • クラウドKMS.クリプトキーズ.ゲット
    • cloudkms.暗号鍵.リスト
    • cloudkms.キーリング.取得
    • クラウドKMS.キーリング.リスト

    注:

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

  5. CONTINUE をクリックします
  6. Grant users access to this service account ページで、ユーザーまたはグループを追加して、このサービスアカウントでアクションを実行するアクセス権を付与します。
  7. DONE をクリックします。
  8. IAMメインコンソールに移動します。
  9. 作成されたサービスアカウントを特定します。
  10. ロールが正常に割り当てられていることを確認します。

考慮事項:

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

  • Grant this service account access to project および Grant users access to this service account の手順はオプションです。これらのオプションの構成手順をスキップすることを選択した場合、新しく作成されたサービスアカウントは IAM & Admin > IAM ページに表示されません。
  • サービスアカウントに関連付けられたロールを表示するには、オプションの手順をスキップせずにロールを追加します。このプロセスにより、構成されたサービスアカウントにロールが表示されるようになります。

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

Citrix DaaSで接続を作成するには、Citrix Cloudサービスアカウントキーが必要です。キーは資格情報ファイル(.json)に含まれています。キーを作成すると、ファイルは自動的にダウンロードされ、Downloads フォルダーに保存されます。キーを作成する際は、キータイプを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ページで、プロジェクトIDcloudbuildという単語で始まるメールアドレスで識別できるCloud Buildサービスアカウントを見つけます。

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

  3. 鉛筆アイコンを選択して、Cloud Buildアカウントの役割を編集します。
  4. 選択したプリンシパルオプションの「Edit access to “project-id” page」で、ADD ANOTHER ROLEを選択して、必要な役割をCloud Buildサービスアカウントに1つずつ追加し、SAVEを選択します。

    注:

    すべての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サービスアカウント: このサービスアカウントは、Enable Google Cloud APIsで言及されているすべてのAPIを有効にすると自動的にプロビジョニングされます。自動的に作成されたすべてのサービスアカウントを表示するには、Google CloudコンソールでIAM & Admin > IAMに移動し、Include Google-provided role grantsチェックボックスをオンにします。このアカウントには、操作を実行するためのIAM基本編集者ロールがあります。ただし、より詳細な制御を行うためにデフォルトの権限を削除した場合、次の権限を必要とするStorage Adminロールを追加する必要があります。

    • リソースマネージャー.プロジェクト.取得
    • ストレージ.オブジェクト.クリエイト
    • ストレージ.オブジェクト.ゲット
    • ストレージ オブジェクトの一覧表示

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

    サービスアカウントに以下のロールが付与されているか確認します。

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

Citrix Cloud サービスアカウントを作成する

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

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

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

    • コンピュート 管理者
    • ストレージ 管理者
    • クラウド ビルド エディター
    • サービスアカウントユーザー
    • クラウドデータストア ユーザー
    • Cloud KMS 暗号オペレーター

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

    • Cloud KMS 暗号キーの取得
    • cloudkms.暗号鍵.リスト
    • cloudkms.キーリング.取得
    • Cloud KMS.キーリング.リスト

    注:

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

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

留意事項:

サービスアカウントを作成する際は、以下の点に留意してください。

  • このサービスアカウントにプロジェクトへのアクセス権を付与する」および「このサービスアカウントにユーザーアクセス権を付与する」の手順はオプションです。これらのオプションの構成手順をスキップすることを選択した場合、新しく作成されたサービスアカウントは、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

  3. 鉛筆アイコンを選択して、サービスアカウントのプリンシパルへのアクセスを編集します。
  4. 選択したプリンシパルオプションの「Edit access to “project-id”」ページで、「ADD ANOTHER ROLE」を選択して、必要な役割をサービスアカウントに1つずつ追加し、最後に「SAVE」を選択します。

Cloud Computeサービスアカウントに役割を追加する

Cloud Computeサービスアカウントに役割を追加するには:

  1. グーグルクラウド コンソールで、IAM & Admin > IAM に移動します。
  2. IAMページで、Project IDと「compute」という単語で始まるメールアドレスで識別できるCloud Computeサービスアカウントを見つけます。

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

  3. 鉛筆アイコンを選択して、Cloud Buildアカウントの役割を編集します。
  4. 選択したプリンシパルオプションの「Edit access to “project-id” page」で、「ADD ANOTHER ROLE」を選択して、必要な役割をCloud Buildサービスアカウントに1つずつ追加し、最後に「SAVE」を選択します。

    注:

    すべてのAPIを有効にして、役割の完全なリストを取得します。

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

Citrix DaaSは、Google Cloud serviceのクラウドビルド失敗の報告プロセスを改善します。このサービスは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ネットワーク構成にアクセスします。
  2. サブネットの詳細画面で、プライベートGoogleアクセスをオンにします。

プライベートGoogleアクセス

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

重要:

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

接続を追加する

接続とリソースを作成するのガイダンスに従ってください。以下の説明では、ホスティング接続の設定について説明します。

  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 で確立されている命名規則を使用してください。詳細については、「バケットとオブジェクトの命名ガイドライン」を参照してください。

マシンカタログの作成」のガイダンスに従ってください。現在、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 Cloud リソースの一元的な制御、使用、管理を提供するため、大規模なインストールに適したオプションです。詳細については、「Google ドキュメントサイト」を参照してください。

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

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

必要な新しい権限

ホスト接続を作成する際には、特定の権限を持つGoogle Cloudサービスアカウントが必要です。これらの追加権限は、共有VPCベースのホスト接続の作成に使用されるすべてのサービスアカウントに付与する必要があります。

ヒント:

これらの追加権限は、Citrix DaaSにとって新しいものではありません。これらはローカル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ファイアウォール規則によって実現されます。Google CloudローカルVCPを使用する場合、MCSはこのファイアウォールをローカルネットワークに作成し、マスタリング用のマシンに適用します。マスタリングが完了すると、ファイアウォール規則はイメージから削除されます。

共有VPCを使用するために必要な新しい権限の数を最小限に抑えることをお勧めします。共有VPCはより上位の企業リソースであり、通常、より厳格なセキュリティプロトコルが導入されています。このため、共有VPCリソース上のホストプロジェクトに、インバウンド用とアウトバウンド用のファイアウォール規則のペアを作成します。それらに最高の優先順位を割り当てます。次の値を使用して、これらの各規則に新しいターゲットタグを適用します。

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ロールには、次の権限を含めます。

  • コンピューティング.ファイアウォール.一覧表示
  • コンピューティング.ネットワーク.一覧表示
  • コンピューティング.サブネットワーク.一覧表示
  • コンピューティング.サブネットワーク.使用

プロジェクトレベルのIAMロールを作成するには:

  1. Google Cloudコンソールで、IAMと管理 > ロールに移動します。
  2. ロールページで、ロールを作成を選択します。
  3. ロールを作成ページで、ロール名を指定します。権限を追加を選択します。
    1. 権限を追加ページで、ロールに権限を個別に追加します。権限を追加するには、テーブルをフィルタリングフィールドに権限の名前を入力します。権限を選択し、追加を選択します。
    2. 作成」を選択します。

サブネットレベルのIAMロール。このロールは、「ロールを作成」を選択した後、権限compute.subnetworks.listcompute.subnetworks.useの追加を省略します。このIAMアクセスレベルの場合、権限compute.firewalls.listcompute.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コンソールのナビゲーションペイン(/ja-jp/citrix-virtual-apps-desktops/2203-ltsr/media/gcp-console-navigation-pane.png)

画面のプロジェクト情報領域の下にあるプロジェクト番号を見つけます。

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単一テナントノードの予約

sole-tenant node を予約するには、Google Cloud の ドキュメント を参照してください。

重要:

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

VDA マスターイメージの作成

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

注:

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

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

ノードアフィニティラベルを設定するには:

  1. グーグル クラウド コンソールで、コンピューティング エンジン > 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 CustomPropertiesCryptoKeyIdプロパティを指定します。例:

'<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>'
<!--NeedCopy-->

cryptoKeyIdは次の形式で指定する必要があります。

projectId:location:keyRingName:cryptoKeyName

たとえば、リージョンus-east1のキーリングmy-example-key-ringにあるキーmy-example-keyと、ID my-example-project-1のプロジェクトを使用したい場合、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>'
<!--NeedCopy-->

このプロビジョニングスキームに関連するすべての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.
<!--NeedCopy-->

ヒント:

詳細については、コンソールからのキーリングの編集または削除を参照してください。

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

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

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

以下のURLにアクセスできる必要があります。

  • https://oauth2.googleapis.com
  • https://cloudresourcemanager.googleapis.com
  • https://compute.googleapis.com
  • https://storage.googleapis.com
  • https://cloudbuild.googleapis.com

グーグル クラウド プロジェクト

Google Cloud プロジェクトには基本的に2つのタイプがあります。

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

必要なGCP権限

このセクションには、GCP権限の完全なリストが含まれています。機能が正しく動作するように、このセクションに記載されている権限の完全なセットを使用してください。

注:

GCPは、2024年4月29日以降、Cloud Build Servicesのデフォルトの動作とサービスアカウントの使用に変更を導入します。詳細については、Cloud Build Service Account Changeを参照してください。2024年4月29日より前にCloud Build APIが有効になっている既存のGoogleプロジェクトは、この変更の影響を受けません。ただし、4月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
     <!--NeedCopy-->
    

    以下のGoogle定義ロールには、上記にリストされている権限が含まれています:

    • コンピュート管理者
    • クラウド データストア ユーザー
  • 共有VPCプロジェクトにおけるCitrix Cloudサービスアカウントの共有VPCに必要な追加の権限:

     compute.networks.list
     compute.subnetworks.list
     resourcemanager.projects.get
     <!--NeedCopy-->
    

    以下の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
<!--NeedCopy-->

以下のGoogle定義ロールには、上記にリストされている権限が含まれています:

  • コンピュート管理者
  • クラウド データストア ユーザー

VM の作成、更新、または削除

  • プロビジョニングプロジェクト内の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
    
     <!--NeedCopy-->
    

    以下のGoogle定義ロールには、上記にリストされている権限があります:

    • コンピューティング管理者
    • ストレージ管理者
    • クラウドビルド エディター
    • サービスアカウントユーザー
    • クラウドデータストア ユーザー
  • 共有VPCプロジェクト内のCitrix Cloudサービスアカウントが、共有VPCプロジェクトのVPCとサブネットワークを使用してホスティングユニットを作成するために、共有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
     <!--NeedCopy-->
    

    以下の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
     <!--NeedCopy-->
    

    以下のGoogle定義ロールは、上記にリストされている権限を持っています。

    • Cloud Build サービスアカウント(Cloud Build サービスアカウントの変更後、Cloud Compute サービスアカウントになります)
    • コンピューティングインスタンス管理者
    • サービスアカウントユーザー
  • MCSに準備指示ディスクをダウンロードする際にGoogle Cloud Buildサービスによって必要とされる、プロビジョニングプロジェクト内のCloud Compute Service Accountに必要な最小限の権限:

     resourcemanager.projects.get
     storage.objects.create
     storage.objects.get
     storage.objects.list
     <!--NeedCopy-->
    

    以下のGoogle定義ロールは、上記にリストされている権限を持っています。

    • コンピューティングネットワークユーザー
    • ストレージアカウントユーザー
    • クラウド データストア ユーザー
  • (Cloud Build Service Accountの変更前): MCSに準備指示ディスクをダウンロードする際にGoogle Cloud Buildサービスによって必要とされる、プロビジョニングプロジェクト内のCloud Build Service Account用のShared VPCに必要な追加の権限:
  • (Cloud Build Service Accountの変更後): MCSに準備指示ディスクをダウンロードする際にGoogle Cloud Computeサービスによって必要とされる、プロビジョニングプロジェクト内のCloud Compute Service Account用のShared VPCに必要な追加の権限:

     compute.firewalls.list
     compute.networks.list
     compute.subnetworks.list
     compute.subnetworks.use
     resourcemanager.projects.get
     <!--NeedCopy-->
    

    以下のGoogle定義ロールは、上記にリストされている権限を持っています。

    • コンピューティングネットワークユーザー
    • ストレージアカウントユーザー
    • クラウドデータストア ユーザー
  • プロビジョニングプロジェクトにおけるCitrix CloudサービスアカウントのCloud Key Management Service (KMS) に必要な追加の権限:

     cloudkms.cryptoKeys.get
     cloudkms.cryptoKeys.list
     cloudkms.keyRings.get
     cloudkms.keyRings.list
     <!--NeedCopy-->
    

    以下のGoogle定義のロールには、上記にリストされている権限があります:

    • コンピュート KMS ビューア

一般的な権限

以下は、プロビジョニングプロジェクトにおけるCitrix Cloudサービスアカウントの、MCSでサポートされているすべての機能に対する権限です。これらの権限は、今後最高の互換性を提供します:

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
<!--NeedCopy-->

詳細情報