Citrix DaaS

Conexión con entornos de Google Cloud

Crear y administrar conexiones y recursos describe los asistentes que crean una conexión. La siguiente información incluye detalles específicos de los entornos de Google Cloud.

Nota:

Antes de crear una conexión con Google Cloud, debe terminar de configurar su cuenta de Google Cloud como ubicación de recursos. Consulte Entornos de virtualización de Google Cloud.

Agregar una conexión

En la interfaz de Configuración completa, siga las instrucciones de Crear y administrar conexiones y recursos. Esta descripción es una guía para configurar una conexión de alojamiento:

  1. En Administrar > Configuración completa, seleccione Alojamiento en el panel de la izquierda.
  2. Seleccione Agregar conexión y recursos en la barra de acciones.
  3. En la página Conexión, seleccione Crear una conexión y Herramientas de aprovisionamiento de Citrix y, a continuación, seleccione Siguiente.

    • Nombre de zona. Seleccione una zona (equivalente a una ubicación de recursos) en la que quiere que residan los recursos del host. Las zonas se crean automáticamente cuando se crea una ubicación de recursos y se le agrega un Cloud Connector. Para obtener más información, consulte Zonas.
    • Tipo de conexión. Seleccione Google Cloud Platform en el menú.
    • Clave de cuenta de servicio. Importe la clave contenida en el archivo de credenciales de Google (JSON). Puede pegar la clave del archivo de credenciales o buscar el archivo de credenciales. Para pegar la clave:
      1. Localice su archivo de credenciales
      2. Abra el archivo con el Bloc de notas (o cualquier editor de texto)
      3. Copie el contenido.
      4. Vuelva a la página Conexión, seleccione Agregar clave, pegue el contenido y, a continuación, seleccione Listo.
    • ID de cuenta de servicio. El campo se completa automáticamente con la información de la clave de la cuenta de servicio.
    • Nombre de la conexión. Escriba un nombre para la conexión.
    • Redirigir tráfico a través de Citrix Cloud Connectors. Para redirigir solicitudes de API a través de un Citrix Cloud Connector disponible, marque esta casilla. También puede marcar la casilla Habilitar Google Cloud Build para usar agrupaciones privadas para obtener un nivel de seguridad adicional.

      Como alternativa, puede habilitar esta función mediante PowerShell. Para obtener más información, consulte Crear un entorno seguro para el tráfico administrado de GCP.

    Nota:

    Esta opción solo está disponible cuando hay Citrix Cloud Connectors activos en la implementación. Actualmente, esta función no es compatible con Connector Appliances.

    • Crear máquinas virtuales usando. Seleccione un método para crear máquinas virtuales.
  4. En la página Región, seleccione un nombre de proyecto en el menú, seleccione una región que contenga los recursos que quiere utilizar y, a continuación, seleccione Siguiente.

  5. En la página Red, escriba un nombre para los recursos, seleccione una red virtual en el menú, seleccione un subconjunto y, a continuación, seleccione Siguiente. El nombre de los recursos ayuda a identificar esta combinación de región y red. Las redes virtuales con el sufijo (Shared) (Compartida) anexado a su nombre representan VPC compartidas. Si configura un rol de IAM a nivel de subred para una VPC compartida, solo aparecerán subredes específicas de la VPC compartida en la lista de subredes.

    Nota:

    • El nombre de conexión puede contener entre 1 y 64 caracteres, y no puede contener solo espacios en blanco o los caracteres \ / ; : # . * ? = < > | [ ] { } " ' ( ) ' ).
  6. En la página Resumen, confirme la información y seleccione Finalizar para salir de la ventana Agregar conexión y recursos.

Después de crear la conexión y los recursos, podrá verlos. Para configurar la conexión, selecciónela y, a continuación, seleccione la opción correspondiente en la barra de acciones.

Del mismo modo, puede eliminar, cambiar el nombre o probar los recursos creados en la conexión. Para ello, seleccione el recurso de la conexión y, a continuación, seleccione la opción correspondiente de la barra de acciones.

Crear un entorno seguro para el tráfico administrado de GCP

Puede permitir solo el acceso privado a Google en sus proyectos de Google Cloud. Esta implementación mejora la seguridad a la hora de gestionar datos confidenciales. Para hacerlo:

  1. Instale Cloud Connectors en la VPC donde quiera aplicar los controles de servicio de la VPC. Consulte VPC Service Controls para obtener más información.
  2. Agregue ProxyHypervisorTrafficThroughConnector a CustomProperties en el caso de una implementación de Citrix Cloud. Si utiliza una agrupación de trabajadores privados, agregue UsePrivateWorkerPool a CustomProperties. Para obtener información sobre la agrupación de trabajadores privados, consulte Private pools overview.

Nota:

Actualmente, esta función no es compatible con Connector Appliance.

Requisitos para crear un entorno seguro para el tráfico administrado de GCP

Los requisitos para crear un entorno seguro para el tráfico administrado de GCP son los siguientes:

  • Asegúrese de que la conexión de alojamiento esté en modo de mantenimiento al actualizar las propiedades personalizadas.
  • Para usar agrupaciones de trabajadores privados, se requieren los siguientes cambios:
    • Para la cuenta de servicio de Citrix Cloud, agregue los siguientes roles de IAM:
      • Cuenta de servicio de Cloud Build
      • Administrador de instancias de proceso
      • Usuario de cuenta de servicio
      • Creador de tokens de cuentas de servicio
      • Propietario de agrupación de trabajadores de Cloud Build
    • Cree la cuenta de servicio de Citrix Cloud en el mismo proyecto que usa para crear una conexión de alojamiento.
    • Configure las zonas DNS para private.googleapis.com y gcr.io como se describe en la Configuración de DNS.

      Zonas DNS para private-googleapis-com

      Zonas DNS para gcr.io

    • Configure la traducción de direcciones de red (NAT) privada o utilice una conexión de servicio privada. Para obtener más información, consulte Access Google APIs through endpoints.

      Private Service Connect

    • Si usa una VPC emparejada, cree una zona de Cloud DNS que conecte a la VPC emparejada. Para obtener más información, consulte Create a peering zone.

      Create a peering zone

    • En los controles de servicio de VPC, configure las reglas de salida para que las API y las máquinas virtuales puedan comunicarse con Internet. Las reglas de entrada son opcionales. Por ejemplo:

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

Habilitar el proxy

Para habilitar el proxy, defina las propiedades personalizadas de esta manera en la conexión de host:

  1. Abra una ventana de PowerShell desde el host del Delivery Controller o utilice el SDK de PowerShell remoto. Para obtener más información sobre el SDK de PowerShell remoto, consulte SDK y API.
  2. Ejecute los comandos siguientes:

    1. Add-PSSnapin citrix*
    2. cd XDHyp:\Connections\
    3. dir
  3. Copie CustomProperties de la conexión a un bloc de notas.
  4. Anexe la configuración de la propiedad de la siguiente manera:

    • En caso de implementación en la nube (con agrupaciones públicas): Anexe la configuración de la propiedad <Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True"/> a CustomProperties para habilitar el proxy. Por ejemplo:

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

      Permita la regla de entrada de la cuenta de servicio de Cloud Build en el perímetro de servicio de la VPC. Por ejemplo:

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

      Para obtener información sobre el perímetro de servicio de la VPC, consulte Service perimeter details and configuration.

    • En el caso de una agrupación de trabajadores privados en una implementación en la nube, anexe la configuración de propiedad <Property xsi:type="StringProperty" Name="ProxyHypervisorTrafficThroughConnector" Value="True"/> y <Property xsi:type="StringProperty" Name="UsePrivateWorkerPool" Value="True"/> a CustomProperties para habilitar el proxy. Por ejemplo:

       <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. En la ventana de PowerShell, asigne una variable a las propiedades personalizadas modificadas. Por ejemplo: $customProperty = '<CustomProperties…</CustomProperties>'.
  6. Ejecute $gcpServiceAccount = "<ENTER YOUR SERVICE ACCOUNT EMAIL HERE>".
  7. Ejecute $gcpPrivateKey = "<ENTER YOUR SERVICE ACCOUNT PRIVATE KEY HERE AFTER REMOVING ALL INSTANCES OF \n >".
  8. Ejecute $securePassword = ConvertTo-SecureString $gcpPrivateKey -AsPlainText -Force.
  9. Ejecute lo siguiente para actualizar una conexión de host existente:

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

Permisos de GCP requeridos

En esta sección, se incluye la lista completa de permisos de GCP. Utilice el conjunto completo de permisos que se indica en la sección para que la funcionalidad opere correctamente.

Crear una conexión de host

  • Permisos mínimos requeridos para la cuenta de servicio de Citrix Cloud en el proyecto de Provisioning:

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

    Estos roles definidos por Google tienen los permisos que se indican anteriormente:

    • Administrador de procesos
    • Usuario de almacén de datos en la nube
  • Permisos adicionales requeridos para la nube VPC compartida con la cuenta de servicio de Citrix Cloud en el proyecto de nube VPC compartida:

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

    Estos roles definidos por Google tienen los permisos que se indican anteriormente:

    • Compute Network User

Administración de energía de las máquinas virtuales

Permisos mínimos requeridos para la cuenta de servicio de Citrix Cloud en el proyecto de Provisioning en el caso de catálogos solo con administración de energía:

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

Estos roles definidos por Google tienen los permisos que se indican anteriormente:

  • Administrador de procesos
  • Usuario de almacén de datos en la nube

Creación, actualización o eliminación de máquinas virtuales

  • Permisos mínimos requeridos para la cuenta de servicio de Citrix Cloud en el proyecto de Provisioning:

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

    Estos roles definidos por Google tienen los permisos que se indican anteriormente:

    • Administrador de procesos
    • Administrador de almacenamiento
    • Editor de compilaciones en la nube
    • Usuario de cuenta de servicio
    • Usuario de almacén de datos en la nube
  • Permisos adicionales requeridos para la nube VPC compartida con la cuenta de servicio de Citrix Cloud en el proyecto de nube VPC compartida a fin de crear una unidad de alojamiento mediante la VPC y la subred del proyecto de VPC compartida:

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

    Estos roles definidos por Google tienen los permisos que se indican anteriormente:

    • Compute Network User
    • Usuario de almacén de datos en la nube
  • Permisos mínimos requeridos por el servicio Google Cloud Build para la cuenta de servicio de Cloud Build en el proyecto de Provisioning al descargar el disco de instrucciones de preparación en MCS:

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

    Estos roles definidos por Google tienen los permisos que se indican anteriormente:

    • Cuenta de servicio de Cloud Build
    • Administrador de instancias de proceso
    • Usuario de cuenta de servicio
  • Permisos mínimos requeridos por el servicio Google Cloud Build para la cuenta de servicio de Cloud Compute en el proyecto de Provisioning al descargar el disco de instrucciones de preparación en MCS:

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

    Estos roles definidos por Google tienen los permisos que se indican anteriormente:

    • Compute Network User
    • Storage Account User
    • Usuario de almacén de datos en la nube
  • Permisos adicionales requeridos por el servicio Google Cloud Build para la nube VPC compartida con la cuenta de servicio de Cloud Build en el proyecto de Provisioning al descargar el disco de instrucciones de preparación en MCS:

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

    Estos roles definidos por Google tienen los permisos que se indican anteriormente:

    • Compute Network User
    • Storage Account User
    • Usuario de almacén de datos en la nube
  • Permisos adicionales requeridos para Cloud Key Management Service (KMS) con la cuenta de servicio de Citrix Cloud en el proyecto de Provisioning:

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

    Estos roles definidos por Google tienen los permisos que se indican anteriormente:

    • Compute KMS Viewer

Permisos generales

Estos son los permisos de la cuenta de servicio de Citrix Cloud en el proyecto Provisioning para todas las funciones disponibles en MCS. Estos permisos ofrecen la mejor compatibilidad en el futuro:

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

Qué hacer a continuación

Más información

Conexión con entornos de Google Cloud