Configura los Controles del servicio de VPC y los clústeres privados

En esta página, se describe cómo funcionan los Controles del servicio de VPC y los clústeres privados, y cómo configurarlos en Cloud Workstations.

Controles del servicio de VPC

Los Controles del servicio de VPC proporcionan seguridad adicional para tus estaciones de trabajo con el objetivo de ayudar a mitigar el riesgo de robo de datos. Mediante los Controles del servicio de VPC, puedes agregar proyectos a los perímetros de servicio que pueden ayudar a proteger los recursos y servicios de las solicitudes que se originan fuera del perímetro.

Estos son los requisitos para usar Cloud Workstations en un perímetro de servicio de VPC:

  • Para ayudar a proteger Cloud Workstations, debes restringir la API de Compute Engine en tu perímetro de servicio cada vez que restrinjas la API de Cloud Workstations.
  • Asegúrate de que la API de Google Cloud Storage, la API de Google Container Registry y la API de Artifact Registry sean accesible mediante VPC en tu perímetro de servicio. Esto es necesario para extraer imágenes a tu estación de trabajo. También te recomendamos que permitas que se pueda acceder a la API de Cloud Logging y a la API de Cloud Error Reporting en tu perímetro de servicio, aunque no es obligatorio para usar Cloud Workstations.

  • Asegúrate de que el clúster de tu estación de trabajo sea privado. La configuración de un clúster privado evita conexiones a tus estaciones de trabajo desde fuera del perímetro de servicio de VPC. El servicio Cloud Workstations evita la creación de clústeres públicos en un perímetro de servicio de VPC.
  • Asegúrate de desactivar las direcciones IP públicas en la configuración de tu estación de trabajo. Si no lo haces, se generarán VM con direcciones IP públicas en tu proyecto. Te recomendamos que uses la restricción de la política de la organización constraints/compute.vmExternalIpAccess para desactivar las direcciones IP públicas para todas las VMs en tu perímetro de servicio de VPC. Para obtener más información, consulta Restringe direcciones IP externas a VMs específicas.

Para obtener más información sobre los perímetros de servicio, consulta Configuración y detalles del perímetro de servicio.

Arquitectura

Cuando configuras un clúster de estación de trabajo como privado, el plano de control del clúster de la estación de trabajo solo tiene una dirección IP interna. Esto significa que los clientes de la Internet pública no pueden conectarse a las estaciones de trabajo que pertenecen al clúster de la estación de trabajo. Para usar un clúster privado, debes conectarlo de forma manual a tu red de nube privada virtual (VPC) a través de un extremo de Private Service Connect.

Los parámetros de configuración con clústeres privados requieren dos extremos de PSC:

  • De forma predeterminada, Cloud Workstations crea un extremo de PSC independiente para conectar el plano de control a las VMs de la estación de trabajo.

  • Debes crear un extremo de PSC adicional para clústeres privados. Para conectarte desde tu máquina local a una estación de trabajo en un clúster privado, tu máquina local debe estar conectada a tu red de VPC. Usa Cloud VPN o Cloud Interconnect para conectar la red externa en la que ejecutas la máquina a la red de VPC. Este extremo de PSC adicional debe crearse en la misma red a la que se conecta tu red externa con Cloud VPN o Cloud Interconnect.

En el siguiente diagrama, se ilustra un ejemplo de la arquitectura de un clúster privado:

Figura 1: Clústeres privados

Antes de comenzar

Antes de comenzar, asegúrate de completar estos pasos de configuración obligatorios:

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  5. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  6. Habilita Cloud Workstations API.

    Habilita la API

  7. Asegúrate de tener un rol de IAM de Administrador de Cloud Workstations en el proyecto para que puedas crear parámetros de configuración de estaciones de trabajo. Para verificar tus roles de IAM en la consola de Google Cloud, ve a la página IAM:

    Ir a IAM

  8. Si se aplica la restricción de la política de la organización constraints/compute.trustedimageProjects, debes agregar el proyecto del que proviene la imagen a la lista de entidades permitidas.
    • Sin la virtualización anidada, debes otorgar permiso a tu proyecto para usar las imágenes de VM de Compute Engine del proyecto cos-cloud.
    • Con la virtualización anidada, debes otorgar permiso a tu proyecto para usar las imágenes de VM de Compute Engine del proyecto ubuntu-os-gke-cloud.

    Para obtener más información, consulta Establece restricciones de acceso a imágenes.

  9. Opcional: Habilita la API de Container File System para permitir un inicio más rápido de la estación de trabajo.

    Habilitar la API de Container File System

    Para obtener más información, consulta Reduce el tiempo de inicio de la estación de trabajo con la transmisión de imágenes.

Crear un clúster privado

Sigue estos pasos para crear un clúster privado:

  1. En la consola de Google Cloud, ve a la página Cloud Workstations.

    Ir a Cloud Workstations

  2. Navega a la página Administración de clústeres de la estación de trabajo.

  3. Haz clic en Crear.

  4. Ingresa el Nombre y selecciona una Región para el clúster de tu estación de trabajo.

  5. En la sección Herramientas de redes, selecciona Redes de este proyecto.

  6. Selecciona una Red y una Subred.

  7. En Tipo de puerta de enlace, selecciona Puerta de enlace privada.

  8. Opcional: Especifica uno o más proyectos adicionales que alojen el extremo de Private Service Connect que habilita el acceso HTTP a tu clúster privado. De forma predeterminada, este extremo solo se puede crear en el proyecto del clúster de la estación de trabajo y el proyecto host de la red de VPC (si es diferente). Si es necesario, estos proyectos también se pueden especificar después de crear el clúster.

  9. Haz clic en Crear.

Habilitar la conectividad del clúster privado

Los clientes no pueden conectarse a estaciones de trabajo en clústeres de estaciones de trabajo privadas desde la Internet pública. Los clientes deben estar en una red que se conecte al clúster de la estación de trabajo mediante Private Service Connect (PSC). Sigue los pasos de esta sección para conectarte a una estación de trabajo:

  1. Crea un extremo de PSC que se oriente al adjunto de servicio de tu estación de trabajo.

  2. Crea una zona del DNS privada.

  3. Usa Cloud DNS para crear un registro DNS que asigne el nombre de host de tu clúster al extremo de PSC.

Crear un extremo de Private Service Connect

Sigue estos pasos para crear un extremo de PSC:

  1. En la consola de Google Cloud, ve a Private Service Connect.

    Ir a Private Service Connect

  2. Haz clic en la pestaña Extremos conectados y, luego, en addConectar extremo.

  3. En Destino, selecciona Servicio publicado.

  4. En el campo Servicio de destino, ingresa el URI del adjunto de servicio que se creó para el clúster de la estación de trabajo. Para encontrar esto, navega al clúster de tu estación de trabajo en la consola y busca el campo URI del adjunto de servicio en Configuración de red.

  5. En el campo Extremo, ingresa un nombre de extremo.

  6. Selecciona una Red para el extremo y, luego, una Subred. Esta debe ser la red que deseas usar para conectarte a tus estaciones de trabajo y debe ser la misma a la que se conecta tu red externa con Cloud VPN o Cloud Interconnect.

  7. Selecciona una dirección IP para el extremo.

    Si necesitas una nueva dirección IP, selecciona Crear dirección IP:

    1. Ingresa un nombre y una descripción opcional para la dirección IP.
    2. Para una dirección IP estática, selecciona Asignar automáticamente. Para una Dirección IP personalizada, selecciona Permitirme elegir y, luego, ingresa la dirección IP que deseas usar.
    3. En Propósito, selecciona No compartido.
    4. Haz clic en Reservar.
  8. Selecciona un espacio de nombres de la lista desplegable o crea un espacio de nombres nuevo. La Región se propaga en función de la subred seleccionada.

  9. Haz clic en Agregar extremo.

  10. Copia la dirección IP del extremo para poder usarla en la próxima sección de Crea una zona DNS privada y un registro DNS.

Crea una zona de DNS privada

Sigue estos pasos a fin de crear una zona DNS privada para este clúster de estación de trabajo con el nombre de DNS configurado como tu clusterHostname, que puedes encontrar si navegas al clúster de tu estación de trabajo en la consola.

  1. En la consola de Google Cloud, ve a la página Crear una zona del DNS.

    Ir a Crea una zona del DNS

  2. En Tipo de zona, selecciona Privada.

  3. Ingresa un nombre de zona, como private-workstations-cluster-zone.

  4. Ingresa un sufijo de nombre de DNS para la zona privada. En todos los registros de la zona, se comparte este sufijo. Establece este nombre como tu clusterHostname.

    Para encontrar tu clusterHostname, navega a la página Cloud Workstations  > Administración de clústeres en la consola de Google Cloud y, luego, haz clic en el clúster de tu estación de trabajo para ver el nombre de host.

  5. Opcional: Agrega una descripción.

  6. En Opciones, selecciona Predeterminada (privada).

  7. Selecciona la red en la que creaste el extremo de PSC en la sección anterior, ya que la dirección IP solo es válida en esa red.

  8. Haz clic en Crear.

Si quieres obtener más información sobre las zonas del DNS privado, consulta la documentación de Cloud DNS sobre cómo crear una zona privada y las Prácticas recomendadas para las zonas privadas de Cloud DNS.

Crea un registro DNS

Para agregar un registro que asigne *.<clusterHostname> a la dirección IP reservada cuando creaste el extremo de Private Service Connect, sigue estos pasos:

  1. En la consola de Google Cloud, ve a la página Zonas de Cloud DNS.

    Ir a Zonas de Cloud DNS

  2. Haz clic en el nombre de la zona administrada a la que deseas agregar el registro.

  3. En la página Detalles de la zona, haz clic en Agregar estándar.

  4. En la página Crear conjunto de registros, en el campo Nombre de DNS, ingresa *.<clusterHostname>.

  5. En el campo Dirección IP, ingresa la dirección IP que reservaste para el extremo de Private Service Connect en la sección anterior.

  6. Haz clic en Crear.

  7. Ahora tu red de VPC debería estar conectada al clúster de la estación de trabajo, y puedes conectarte a estaciones de trabajo mediante esta red.

Habilita la resolución de DNS local

Para usar el editor predeterminado basado en el navegador en tu estación de trabajo, usa un navegador de una máquina conectada a la red de VPC. Puedes usar Cloud VPN o Cloud Interconnect para conectarte desde la red externa en la que ejecutas el navegador a la red de VPC.

Para conectarte desde una red externa, debes configurar el DNS en ella. Al igual que en los pasos anteriores, puedes crear una zona del DNS para clusterHostname y agregar un registro que asigne *.<clusterHostname> a la dirección IP reservada cuando creaste el extremo de Private Service Connect. Como alternativa, puedes configurar zonas de reenvío de DNS o políticas del servidor DNS para permitir búsquedas de nombres de DNS entre tus entornos locales y de Google Cloud.

Es posible que también debas agregar *cloudworkstations.dev a la lista de entidades permitidas de tu infraestructura local.

¿Qué sigue?