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 Google Cloud.
Agregar una conexión
Siga las instrucciones que se indican en Crear una conexión y recursos. Esta descripción es una guía para configurar una conexión de alojamiento:
-
En Administrar > Configuración, seleccione Alojamiento en el panel de la izquierda.
-
Seleccione Agregar conexión y recursos en la barra de acciones.
-
En la página Conexión, seleccione Crear una conexión y Herramientas de aprovisionamiento de Citrix y, a continuación, seleccione Siguiente.
- Tipo de conexión. Seleccione Google Cloud en el menú.
- Nombre de la conexión. Escriba un nombre para la conexión.
-
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.
-
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
\ / ; : # . * ? = < > | [ ] { } " ' ( ) ' )
.
- El nombre de conexión puede contener entre 1 y 64 caracteres, y no puede contener solo espacios en blanco o los caracteres
-
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.
URL de dispositivo de punto final del servicio
Debe tener acceso a las siguientes URL:
https://oauth2.googleapis.com
https://cloudresourcemanager.googleapis.com
https://compute.googleapis.com
https://storage.googleapis.com
https://cloudbuild.googleapis.com
Proyectos de Google Cloud
Existen básicamente dos tipos de proyectos de Google Cloud:
- Proyecto de Provisioning: En este caso, la cuenta de administrador actual es propietaria de las máquinas aprovisionadas del proyecto. Este tipo de proyecto se conoce también como proyecto local.
- Proyecto de nube privada virtual (VPC) compartida: Proyecto en el que las máquinas creadas en el proyecto de aprovisionamiento utilizan la VPC del proyecto de VPC compartida. La cuenta de administrador utilizada para el proyecto de aprovisionamiento tiene permisos limitados en este proyecto, específicamente, solo permisos para usar la nube VPC.
Crear un entorno seguro para el tráfico administrado de GCP
Puede permitir 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 lograrlo, puede optar por una de estas acciones:
-
Incluya estas reglas de entrada de controles de servicio de VPC para la cuenta de servicio de Cloud Build. Si hace este paso, no siga los pasos que se indican a continuación con los que crear un entorno seguro para el tráfico administrado por GCP.
Ingress Rule 1 From: Identities: <ProjectID>@cloudbuild.gserviceaccount.com Source > All sources allowed To: Projects = All projects Services = Service name: All services <!--NeedCopy-->
-
Si utiliza una agrupación de trabajadores privados, agregue
UsePrivateWorkerPool
aCustomProperties
. Para obtener información sobre la agrupación de trabajadores privados, consulte Private pools overview.
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
ygcr.io
como se describe en la Configuración de DNS. -
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.
-
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.
-
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-->
- Para la cuenta de servicio de Citrix Cloud, agregue los siguientes roles de IAM:
Habilitar la agrupación privada de trabajadores
Para habilitar la agrupación privada de trabajadores, defina las propiedades personalizadas de esta manera en la conexión de host:
- 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.
-
Ejecute los comandos siguientes:
Add-PSSnapin citrix*
cd XDHyp:\Connections\
dir
- Copie
CustomProperties
de la conexión a un bloc de notas. -
Adjunte el parámetro de propiedad
<Property xsi:type="StringProperty" Name="UsePrivateWorkerPool" Value="True"/>
. 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="UsePrivateWorkerPool" Value="True"/> </CustomProperties> <!--NeedCopy--> ```
- En la ventana de PowerShell, asigne una variable a las propiedades personalizadas modificadas. Por ejemplo:
$customProperty = '<CustomProperties…</CustomProperties>'
. - Ejecute
$gcpServiceAccount = "<ENTER YOUR SERVICE ACCOUNT EMAIL HERE>"
. - Ejecute
$gcpPrivateKey = "<ENTER YOUR SERVICE ACCOUNT PRIVATE KEY HERE AFTER REMOVING ALL INSTANCES OF \n >"
. - Ejecute
$securePassword = ConvertTo-SecureString $gcpPrivateKey -AsPlainText -Force
. -
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.
Nota:
GCP presentará cambios en el comportamiento predeterminado de los servicios de Cloud Build y en el uso de las cuentas de servicio a partir del 29 de abril de 2024. Para obtener más información, consulte Cambio de la cuenta de servicio de Cloud Build. Los proyectos de Google existentes con la API de Cloud Build habilitada antes del 29 de abril de 2024 no se ven afectados por este cambio. No obstante, si quiere mantener el comportamiento actual del servicio de Cloud Build a partir del 29 de abril, puede crear o aplicar una directiva de organización para inhabilitar la aplicación de restricciones antes de habilitar la API. Si establece la nueva directiva de organización, puede seguir usando los permisos existentes en esta sección y los elementos marcados en Antes del cambio de la cuenta de servicio de Cloud Build. De lo contrario, siga los permisos y elementos existentes que están marcados en Después del cambio de cuenta de servicio de Cloud Build.
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
-
(Antes del cambio de la cuenta de servicio de Cloud Build): 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:
-
(Después del cambio de la cuenta de servicio de Cloud Build): Permisos mínimos requeridos por el servicio Google Cloud Compute para la cuenta de servicio de Cloud Compute 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 (después del cambio de la cuenta de servicio de Cloud Build, es una cuenta de servicio de Cloud Compute)
- 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
- (Antes del cambio de la cuenta de servicio de Cloud Build): 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:
-
(Después del cambio de la cuenta de servicio de Cloud Build): Permisos adicionales requeridos por el servicio Google Cloud Compute para la nube VPC compartida con la cuenta de servicio de Cloud Compute 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
- Si está en el proceso de implementación inicial, consulte Crear catálogos de máquinas
- Para obtener información específica de Google Cloud Platform (GCP), consulte Crear un catálogo de Google Cloud Platform