Citrix DaaS

Googleクラウド環境への接続

接続とリソースの作成と管理」では接続を作成するためのウィザードについて説明しています。以下の情報は、Googleクラウド環境に固有の詳細について説明しています。

注:

Googleクラウド環境への接続を作成する前に、まずGoogleクラウドアカウントをリソースの場所として設定する必要があります。「 Google Cloud仮想化環境」を参照してください。

接続の追加

[完全な構成]インターフェイスで、「Create and manage connections and resources」のガイダンスに従います。次の説明は、ホスト接続を設定する手順を示しています:

  1. [管理]>[完全な構成] の左側ペインで [ホスト] を選択します。
  2. 操作バーの [接続およびリソースの追加] を選択します。
  3. [接続] ページで、[新しい接続を作成する][Citrixプロビジョニングツール] を選択してから [次へ] を選択します。

    • ゾーン名。ホストリソースを配置するゾーン(リソースの場所に相当)を選択します。ゾーンは、リソースの場所を作成してCloud Connectorを追加すると自動的に作成されます。詳しくは、「ゾーン」を参照してください。
    • 接続の種類。メニューから [Google Cloud Platform] を選択します。
    • サービスアカウントキー。Google資格情報ファイル(.json)に含まれるキーをインポートします。インポートを行うには、資格情報ファイルからキーを貼り付ける方法と、資格情報ファイルを参照する方法があります。キーを貼り付けるには:
      1. 資格情報ファイルを見つけます
      2. メモ帳(または任意のテキストエディター)でファイルを開きます
      3. キーの値をコピーします。
      4. [接続] ページに戻り、[キーの追加] を選択し、キーの値を貼り付けてから [Done] を選択します。
    • サービスアカウントID。このフィールドには、サービスアカウントキーの情報が自動的に入力されます。
    • 接続名。接続名を入力します。
    • Citrix Cloud Connectorを介してトラフィックをルーティングします。このチェックボックスをオンにすると、利用可能なCitrix Cloud Connector経由でAPI要求をルーティングできます。セキュリティを強化するには、[Google Cloud Buildを有効にしてプライベートプールを使用する] チェックボックスをオンにします。

      また、PowerShellを使用してこの機能を有効にすることもできます。詳しくは、「GCP管理トラフィックのための安全な環境の作成」を参照してください。

    注:

    このオプションは、展開内にアクティブなCitrix Cloud Connectorがある場合にのみ使用できます。この機能は現時点ではConnector Applianceでサポートされていません。

    • 仮想マシンの作成ツール。仮想マシンの作成ツールを選択できます。
  4. [リージョン] ページで、メニューからプロジェクト名を選択し、使用するリソースを含むリージョンを選択して、[次へ] を選択します。

  5. [ネットワーク] ページで、リソースの名前を入力し、メニューから仮想ネットワークを選択し、サブセットを選択してから [次へ] を選択します。このリージョンとネットワークの組み合わせを識別するためのわかりやすいリソース名を指定してください。名前に (Shared) サフィックスが付加された仮想ネットワークは、共有VPCを表しています。共有VPCにサブネットレベルのIAM役割を設定する場合、共有VPCの特定のサブネットのみがサブネットリストに表示されます。

    注:

    • リソース名は1~64文字にし、空白スペースのみにしたり記号(\ / ; : # . * ? = < > | [ ] { } " ' ( ) ' ))を含めたりすることはできません。
  6. [概要] ページで情報を確認してから、[完了] を選択し、[接続およびリソースの追加] ウィンドウを終了します。

接続とリソースを作成すると、作成した接続とリソースが一覧表示されます。接続を構成するには、接続を選択してから、操作バーで該当するオプションを選択します。

同様に、接続の下で作成されたリソースを削除、名前変更、またはテストすることができます。これを行うには、接続の下のリソースを選択してから、操作バーで該当するオプションを選択します。

GCP管理トラフィックのための安全な環境の作成

自身のGoogle Cloudプロジェクトには、プライベートGoogleアクセスのみを許可できます。この実装により、機密データを処理するためのセキュリティが強化されます。これを行うには、以下の手順に従います:

  1. VPCサービスの制御を適用するVPCにCloud Connectorをインストールします。詳しくは、「VPCサービスの制御」を参照してください。
  2. Citrix Cloud環境の場合は、CustomPropertiesProxyHypervisorTrafficThroughConnectorを追加します。プライベートワーカープールを使用する場合は、CustomPropertiesUsePrivateWorkerPoolを追加します。プライベートワーカープールについて詳しくは、「 プライベートプールの概要」を参照してください。

注:

この機能は現時点ではConnector Applianceでサポートされていません。

GCP管理トラフィックのための安全な環境の作成要件

GCP管理トラフィックのための安全な環境の作成要件は以下のとおりです。

  • カスタムプロパティを更新するときは、ホスト接続がメンテナンスモードであることを確認する。
  • プライベートワーカープールを使用するには、以下の変更が必要です。
    • Citrix Cloud Servicesアカウントの場合、以下のIAMロールを追加します。
      • Cloud Buildサービスアカウント
      • コンピューティングインスタンス管理者
      • サービスアカウントユーザー
      • サービスアカウントトークン作成者
      • Cloud Buildワーカープールの所有者
    • ホスト接続の作成に使用するのと同じプロジェクトに、Citrix Cloud Servicesのアカウントを作成します。
    • DNS構成」の説明に従って、private.googleapis.comおよびgcr.io用のDNSゾーンを設定します。

      private-googleapis-comのDNSゾーン

      gcr.ioのDNSゾーン

    • プライベートネットワークアドレス変換 (NAT) を設定するか、プライベートサービス接続を使用します。詳しくは、「 エンドポイントからGoogle APIにアクセスする」を参照してください。

      プライベートサービス接続

    • ピアリングされたVPCを使用する場合は、ピアリングされたVPCにピアリングするCloud DNSゾーンを作成します。詳しくては、「ピアリングゾーンを作成する」を参照してください。

      ピアリングゾーンを作成する

    • VPCサービスの制御で、APIとVMがインターネットと通信できるように送信用の規則を設定します。送信用の規則はオプションです。例:

       Egress Rule 1
       From:
       Identities:ANY_IDENTITY
       To:
       Projects =
       All projects
       Service =
       Service name: All services
       <!--NeedCopy-->
      

プロキシを有効にする

このプロキシを有効にするには、ホスト接続でカスタムプロパティを次のように設定します。

  1. Delivery ControllerホストからPowerShellウィンドウを開くか、Remote PowerShell SDKを使用します。Remote PowerShell SDKについて詳しくは、「SDKおよびAPI」を参照してください。
  2. 次のコマンドを実行します:

    1. Add-PSSnapin citrix*
    2. cd XDHyp:\Connections\
    3. dir
  3. 接続のCustomPropertiesをメモ帳にコピーします。
  4. 以下のプロパティ設定を追加します。

    • クラウド環境の場合 (パブリックプールを使用): プロキシを有効にするには、プロパティ設定<Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True"/>CustomPropertiesに追加します。例:

       <CustomProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.citrix.com/2014/xd/machinecreation">
       <Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True"/>
       </CustomProperties>
       <!--NeedCopy-->
      

      VPCサービス境界でCloud Buildサービスアカウントの送信用規則を許可します。例:

       Ingress Rule 1
       From:
       Identities:
       <ProjectID>@cloudbuild.gserviceaccount.com
       Source > All sources allowed
       To:
       Projects =
       All projects
       Services =
       Service name: All services
       <!--NeedCopy-->
      

      VPCサービス境界について詳しくは、「サービス境界の詳細と構成」を参照してください。

    • クラウド環境のプライベートワーカープールの場合は、プロパティ設定<Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True"/><Property xsi:type="StringProperty" Name="UsePrivateWorkerPool" Value="True"/>CustomPropertiesに追加してプロキシを有効にします。例:

       <CustomProperties xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.citrix.com/2014/xd/machinecreation">
       <Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True"/>
       <Property xsi:type="StringProperty" Name="UsePrivateWorkerPool" Value="True"/>
       </CustomProperties>
       <!--NeedCopy-->
      
  5. PowerShellウィンドウで、変更したカスタムプロパティに変数を割り当てます。例: $customProperty = '<CustomProperties…</CustomProperties>'
  6. $gcpServiceAccount = "<ENTER YOUR SERVICE ACCOUNT EMAIL HERE>"を実行します。
  7. $gcpPrivateKey = "<ENTER YOUR SERVICE ACCOUNT PRIVATE KEY HERE AFTER REMOVING ALL INSTANCES OF \n >"を実行します。
  8. $securePassword = ConvertTo-SecureString $gcpPrivateKey -AsPlainText -Forceを実行します。
  9. 以下を実行して、既存のホスト接続を更新します。

    Set-Item -PassThru -Path @('XDHyp:\Connections\\<ENTER YOUR CONNECTION NAME HERE>') -SecurePassword $securePassword -UserName $gcpServiceAccount -CustomProperties $customProperty
    <!--NeedCopy-->
    

必要なGCP権限

このセクションでは、GCPの権限の完全な一覧が示されています。機能を正しく動作させるには、このセクションで示した権限の完全なセットを使用します。

ホスト接続の作成

  • プロビジョニングプロジェクトにおいて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定義の役割には、上に一覧表示された権限があります:

    • コンピューティング管理者
    • ストレージ管理者
    • 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
     <!--NeedCopy-->
    

    次のGoogle定義の役割には、上に一覧表示された権限があります:

    • コンピューティングネットワークユーザー
    • クラウドデータストアユーザー
  • 準備の指示ディスクをMCSにダウンロードするときに、プロビジョニングプロジェクトにおいてCloud BuildサービスアカウントでGoogle Cloud Buildサービスが必要とする最低限の権限:

     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サービスアカウント
    • コンピューティングインスタンス管理者
    • サービスアカウントユーザー
  • 準備の指示ディスクをMCSにダウンロードするときに、プロビジョニングプロジェクトにおいてCloud ComputeサービスアカウントでGoogle Cloud Buildサービスが必要とする最低限の権限:

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

    次のGoogle定義の役割には、上に一覧表示された権限があります:

    • コンピューティングネットワークユーザー
    • ストレージアカウントユーザー
    • クラウドデータストアユーザー
  • 準備の指示ディスクをMCSにダウンロードするときに、プロビジョニングプロジェクトにおいてCloud Buildサービスアカウントの共有VPCでGoogle Cloud Buildサービスが必要とする追加の権限:

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

    次のGoogle定義の役割には、上に一覧表示された権限があります:

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

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

    次のGoogle定義の役割には、上に一覧表示された権限があります:

    • コンピューティング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
<!--NeedCopy-->

次の手順

追加情報

Googleクラウド環境への接続