Habilitar el acceso privado a servicios

Como productor de servicios, puedes permitir que los consumidores de servicios aprovisionen recursos con direcciones IP privadas (RFC 1918) o públicas. Si los consumidores de servicios quieren usar direcciones IP privadas, deben usar el acceso a servicios privados. Sin embargo, los consumidores de servicios solo pueden usar el acceso a servicios privados si tu servicio gestionado lo ofrece. Para ofrecer conectividad privada, debes completar un proceso de incorporación único.

El proceso de incorporación requiere que uses la API Service Networking y las unidades de arrendamiento. Para obtener instrucciones detalladas paso a paso, ponte en contacto con tu representante de Google.

Información general

En las secciones siguientes se describen los componentes y la topología de red general necesarios para habilitar el acceso a servicios privados en tu servicio gestionado.

Unidades de cliente

Cuando un consumidor de servicios habilita tu servicio gestionado, el servicio crea una unidad de cliente para formalizar una relación entre tu organización y el proyecto del consumidor de servicios. Google Cloud Las unidades de arrendamiento aíslan los recursos y los costes de facturación entre diferentes consumidores de servicios.

Por cada consumidor de servicios, tendrás dos unidades de arrendamiento. Una para tu servicio gestionado y otra para el servicio de gestión de acceso privado. El servicio gestionado es el servicio externo que ofreces a los consumidores de servicios, y el servicio de gestión de acceso privado gestiona las conexiones privadas con las redes de VPC de los consumidores de servicios. Estas unidades de arrendamiento deben pertenecer a la mismaGoogle Cloud organización en la que se encuentra tu servicio gestionado.

Redes de servicios

Service Networking automatiza la configuración de la conectividad privada (mediante el emparejamiento entre redes VPC) entre tú y el consumidor del servicio. Habilita y usa Service Networking en el mismo proyecto en el que has creado el servicio de gestión de acceso privado. Este es un proyecto diferente del que contiene tu servicio gestionado.

Cuando un consumidor de servicios crea una conexión privada con tu servicio gestionado, Service Networking crea un proyecto host de VPC compartida y una red de VPC compartida. El proyecto host y la red se crean en una carpeta Google Cloud predesignada Google Cloud de tu organización. Este nombre de carpeta se especifica durante el proceso de incorporación. El proyecto y la red están incluidos en una unidad de arrendamiento, por lo que están aislados y solo puede usarlos ese consumidor de servicios.

Una vez que Service Networking crea la red de VPC compartida, crea automáticamente una conexión de emparejamiento entre redes VPC entre la red de VPC compartida y la red de VPC especificada por el consumidor del servicio.

Los consumidores de servicios también deben proporcionar un intervalo de direcciones IP asignado cuando creen la conexión privada. Esta asignación reserva direcciones IP que solo puedes usar tú, el productor de servicios. Por ejemplo, cuando un consumidor de servicios aprovisiona un recurso, se usa Service Networking para crear subredes en la red de VPC compartida. En el caso del intervalo de direcciones IP de la subred, Service Networking selecciona automáticamente un intervalo del intervalo asignado. Este proceso evita colisiones entre la red de VPC compartida y la red de VPC del consumidor de servicios.

Proyectos de servicio de VPC compartida

Cuando tu servicio aprovisiona por primera vez el recurso de un consumidor de servicios, tu servicio gestionado lo aprovisiona en un proyecto de servicio de VPC compartida, que está asociado al proyecto host de Service Networking. Esta relación de VPC compartida permite que los recursos del proyecto de servicio usen subredes de la red de VPC compartida.

Tu servicio gestionado crea el proyecto de servicio en una unidad de arrendamiento y en una carpeta predefinida, que se especifican durante el proceso de incorporación. La carpeta y la unidad de arrendamiento están relacionadas con tu servicio gestionado y son diferentes de las que usa Service Networking.

Topología de red

En el siguiente ejemplo se muestra un consumidor de servicios que tiene conectividad privada con un productor de servicios. El consumidor del servicio ha aprovisionado dos recursos en regiones diferentes. Como cada recurso está en una región diferente, se encuentra en una subred distinta.

Descripción general de Service Networking para productores de servicios (haz clic en la imagen para ampliarla)
  • Hay dos proyectos de Endpoints: uno para el servicio gestionado y otro para el servicio de gestión de acceso privado. Deben pertenecer a la misma organización. Google Cloud

  • En la Google Cloud organización, hay dos carpetas, una para cada uno de los servicios de Endpoints. La carpeta de servicio de gestión de acceso privado contiene un proyecto del host de VPC compartida para la conexión privada. La carpeta de servicios gestionados contiene un proyecto de servicio para los recursos del consumidor del servicio.

    • En cada carpeta, los proyectos relacionados con el consumidor del servicio se encuentran en unidades de arrendamiento. Ambas unidades de arrendamiento están asociadas a consumer-project-a.
  • Los consumidores de servicios deben iniciar la conexión privada (que también es una conexión de emparejamiento entre redes de VPC). Deben proporcionar un intervalo de direcciones IP asignado para la conexión privada desde la que proceden las direcciones IP de la subred. Para obtener más información sobre los pasos que debe seguir el consumidor del servicio, consulta Configurar acceso a servicios privados.

    • Si ofrece varios servicios, los consumidores de servicios solo necesitan una conexión privada. Todo el tráfico hacia y desde el consumidor de servicios pasa por el proyecto del host de la VPC compartida.
  • En un solo proyecto de consumidor de servicios, varias redes de VPC pueden conectarse de forma privada a tus servicios. Para ello, se necesita un proyecto host de VPC compartida por cada red de VPC conectada. Sin embargo, todos esos proyectos pueden estar incluidos en la misma unidad de arrendamiento consumer-project-a.

  • En el proyecto host, debes configurar reglas de cortafuegos y rutas para habilitar la conectividad con los nuevos recursos. Como otros servicios pueden usar la misma red de VPC compartida, estas reglas pueden permitir o denegar la conectividad entre tus diferentes servicios.

Proceso de incorporación

La siguiente lista es un resumen general del proceso de incorporación. Debe completar este proceso para cada servicio gestionado que ofrezca conectividad privada. Ponte en contacto con tu representante de Google para obtener más información.

  1. Crea un servicio de gestión de intercambio de tráfico entre redes.

    Se trata de un servicio gestionado que un productor de servicios crea a través de la API Service Management y Endpoints. Para obtener más información, ponte en contacto con tu representante de Google.

  2. Proporcione la siguiente información de configuración a su representante de Google:

    • Intervalo mínimo de direcciones IP que deben asignar los consumidores de servicios cuando se conectan contigo. Se especifica como una longitud de prefijo IPv4. Si ofrece varios servicios, puede que quiera que los usuarios asignen un intervalo de direcciones IP más amplio, como /16.
    • El ID de la carpeta en la que tu servicio de gestión de acceso privado crea proyectos de host de VPC compartida. Usa Resource Manager para encontrar el ID de la carpeta.
    • La cuenta de facturación asociada a la organización en la que tu servicio de gestión de acceso privado crea proyectos host de VPC compartida.
    • Las entidades (normalmente, se trata de IDs de cuentas de servicio) que gestionan las reglas de cortafuegos de red del proyecto host.
  3. Activa la API de Compute Engine.

    En cada proyecto host de la VPC compartida, activa la API compute.googleapis.com. Para ello, puedes usar las APIs de uso de servicios o la configuración del proyecto.

    Una vez que se hayan aprovisionado los recursos, configura las reglas de cortafuegos de la red de VPC compartida en el proyecto del host. Debes usar la identidad que proporcionaste durante el proceso de incorporación para acceder a la red de VPC. Si ofreces otros servicios, es posible que utilicen la misma red de VPC. No crees reglas que puedan permitir o denegar por error el tráfico a otros servicios.

  4. Informar a los consumidores del servicio.

    Informa a los consumidores del servicio de que deben establecer una conexión privada. Para obtener más información, consulta el artículo Configurar el acceso privado a servicios. Los consumidores de servicios deben proporcionar la siguiente información:

    • El nombre de su proyecto y de la red en la que quieren establecer la conectividad privada.
    • Región de Cloud en la que se debe aprovisionar el recurso.

Siguientes pasos