En esta página, se describe cómo configurar el acceso a la red privada y enrutar el tráfico dentro de una red de Google Cloud .
Para configurar el acceso a la red privada, debes configurar tres proyectos:
- Es un proyecto que contiene una red de nube privada virtual (VPC) que se usará en la instancia de máquina virtual (VM) de destino o en el balanceador de cargas interno de destino.
- Es un proyecto que actúa como proyecto de servicio de Directorio de servicios.
- Es un proyecto para un producto Google Cloud con la configuración que invoca el acceso a la red privada. Un ejemplo de un producto Google Cloud que puede llamar a extremos con acceso a la red privada es Dialogflow CX.
Los artefactos de los proyectos pueden estar en el mismo proyecto o en proyectos diferentes.
Antes de comenzar
Antes de configurar el acceso a la red privada, completa los siguientes pasos:
En la consola de cada proyecto, en la página APIs & Services, haz clic en Habilitar APIs y servicios para habilitar las APIs que deseas usar, incluida la API de Service Directory. Google Cloud
Para vincular tu red de VPC a hosts locales, crea un túnel de Cloud VPN o una conexión de Cloud Interconnect.
Asegúrate de que el proyecto Google Cloud esté dentro del perímetro de Controles del servicio de VPC tanto del proyecto de red como del proyecto de Directorio de servicios para
servicedirectory.googleapis.com
.Obtén más información sobre los controles de servicio de VPC.
Configura el proyecto para la red de VPC
Para configurar el proyecto para la red de VPC, sigue estos pasos:
Crea una red de VPC o selecciona una existente que tenga una subred de solo IPv4 o de doble pila en la región que deseas usar. No se admiten las redes heredadas.
Crea las reglas de firewall de entrada necesarias.
Si el destino es una VM o un balanceador de cargas de red interno de transferencia, las reglas de firewall deben permitir el tráfico TCP desde el rango
35.199.192.0/19
a los puertos que usa el software que se ejecuta en las instancias de VM de destino.Si el destino es un balanceador de cargas de aplicaciones interno o un balanceador de cargas de red del proxy interno, las reglas de firewall deben permitir el tráfico TCP desde el rango
35.199.192.0/19
a la dirección IP y los puertos que usa el balanceador de cargas.
Para obtener más información sobre el rango
35.199.192.0/19
, consulta Rutas de acceso para Cloud DNS y el Directorio de servicios.Otorga el rol de servicio autorizado de Private Service Connect de Identity and Access Management (IAM) (
roles/servicedirectory.pscAuthorizedService
) al agente de servicio del producto Google Cloud que llamará al extremo.Para obtener más información sobre los roles y permisos, consulta Permisos y roles de Service Directory.
Configura el proyecto del Directorio de servicios
Para configurar el proyecto de Directorio de servicios, sigue estos pasos:
En la red de VPC, crea una VM o un balanceador de cargas interno.
Otorga el rol de visualizador de Service Directory de IAM (
roles/servicedirectory.viewer
) al agente de servicio del productoGoogle Cloud que llamará al extremo.Crea un espacio de nombres y un servicio del Directorio de servicios. Luego, crea un extremo para este servicio siguiendo los pasos de la siguiente sección.
Crea un extremo con acceso a la red privada
Para crear un extremo con acceso a la red privada configurado, sigue estos pasos:
Console
- En la consola de Google Cloud , ve a la página Espacios de nombres de Service Directory. Ir a Directorio de servicios Directory
- Haz clic en un espacio de nombres.
- Haz clic en un servicio.
- Haz clic en Agregar extremo.
- En Nombre del extremo, ingresa un nombre para el extremo.
- En Dirección IP, ingresa una dirección IPv4, como
192.0.2.0
. - En Puerto, ingresa un número de puerto, como
443
o80
. - Para habilitar el acceso a la red privada, en Red de VPC asociada, selecciona la opción requerida:
- Para elegir una red de la lista de redes disponibles, haz clic en Elegir de la lista y, luego, selecciona la red.
- Para especificar un proyecto y una red, haz clic en Especificar por el nombre de red y de proyecto y, luego, ingresa el número de proyecto y el nombre de la red.
- Haz clic en Crear.
gcloud
Usa el comando gcloud service-directory endpoints create
con el ID del proyecto y la ruta de acceso a la red especificados.
gcloud service-directory endpoints create ENDPOINT_NAME \ --project=PROJECT_ID \ --location=REGION \ --namespace=NAMESPACE_NAME \ --service=SERVICE_ID \ --address=IP_ADDRESS \ --port=PORT_NUMBER \ --network=NETWORK_PATH
Reemplaza lo siguiente:
ENDPOINT_NAME
: Un nombre para el extremo que estás creando en tu servicio, comomy-endpoint
PROJECT_ID
: El ID del proyectoREGION
: La región de Google Cloud que contiene el espacio de nombresNAMESPACE_NAME
: Es el nombre que le asignaste al espacio de nombres, comomy-namespace
.SERVICE_ID
: Es el ID del servicio.IP_ADDRESS
: Es la dirección IP del extremo, como192.0.2.0
.PORT_NUMBER
: Son los puertos en los que se ejecutan los extremos, por lo general,443
o80
.NETWORK_PATH
: Es la URL de la red, comoprojects/PROJECT_NUMBER/locations/global/networks/NETWORK_NAME
.
Configura el proyecto del producto Google Cloud
Para configurar el proyecto del producto Google Cloud , sigue estos pasos:
Configura tu producto Google Cloud para que llame al servicio del Directorio de servicios que creaste. Los pasos necesarios dependen del productoGoogle Cloud específico.
Casos de uso
En esta sección, se proporcionan ejemplos de casos de uso para configurar el acceso a la red privada.
Llama a un extremo HTTP cuando una red de VPC, una VM y Directorio de servicios se encuentran en el mismo proyecto
En este caso de uso, configurarás Dialogflow CX, un Google Cloud producto para el procesamiento del lenguaje natural, para llamar a un extremo HTTP en tu VM. Cuando llames al extremo, asegúrate de que el tráfico no se desvíe a la Internet pública.
En este caso de uso, crearás los siguientes artefactos en el mismo proyecto:
- Una red de VPC
- Una VM
- Un servicio del Directorio de servicios
- Dialogflow CX
En la Figura 1, se muestra cómo puedes permitir que la configuración de un servicio de Google de un proyecto realice una salida a una VM. La VM reside en una red de VPC del proyecto.
Configura tu red y la red objetivo
- Crea un proyecto, como
myproject
. Crea una red de VPC, como
vpc-1
.Cuando crees la red de VPC, en Modo de creación de subredes, selecciona Automático.
Crea una regla de firewall, como
firewall-1
.Cuando crees la regla de firewall, ingresa o selecciona los siguientes valores:
- En Red, selecciona
vpc-1
. - En Rangos de IPv4 de origen, ingresa
35.199.192.0/19
. - En Protocolos y puertos, selecciona TCP y, luego, ingresa
443
o80
.
- En Red, selecciona
En la región
us-central1
, crea una VM, comovm-1
.Cuando crees la VM, ingresa o selecciona los siguientes valores:
- En Networking > Network Interfaces, selecciona
vpc-1
. - En Firewall, selecciona Permitir tráfico HTTP.
Si deseas usar HTTPS, selecciona Permitir tráfico HTTPS. También asegúrate de instalar un certificado de seguridad de la capa de transporte (TLS) de la infraestructura de clave pública (PKI).
- En Networking > Network Interfaces, selecciona
En la región
us-central1
, crea un espacio de nombres, comonamespace-1
.En el espacio de nombres, registra un servicio de Directorio de servicios, como
sd-1
.Crea un extremo en
sd-1
. Para la dirección del extremo, usa la dirección IP interna devm-1
en el puerto443
. Para obtener más información, consulta Crea un extremo con acceso a la red privada.Otorga los siguientes roles de IAM al agente de servicio del productoGoogle Cloud que llamará al extremo:
- Rol de visualizador del Directorio de servicios (
roles/servicedirectory.viewer
) - Rol de servicio autorizado de Private Service Connect (
roles/servicedirectory.pscAuthorizedService
)
- Rol de visualizador del Directorio de servicios (
Opcional: Si quieres agregar más VMs, puedes configurar otra VM, como
vm-2
, y agregar su extremo, comoendpoint-2
.
Configura un Google Cloud producto
- Configura un Google Cloud producto, como "Cloud Scheduler, llámame cada minuto".
- Configura una solicitud HTTP.
- Especifica que las solicitudes deben pasar por redes privadas, como a través de
sd-1
. - Opcional: Configura los parámetros del Servicio de autoridad de certificación.
El producto Google Cloud ahora puede invocar la solicitud HTTP con sd-1
.
Llama a un extremo HTTP cuando una red de VPC compartida, una VM y Directorio de servicios se encuentran en proyectos diferentes
En este caso de uso, configurarás Dialogflow CX, un servicio de Google Cloudpara el procesamiento de lenguaje natural, para llamar a un extremo HTTP en tu VM. Cuando llames al extremo, asegúrate de que el tráfico no se desvíe a la Internet pública.
En este caso de uso, crearás los siguientes artefactos en diferentes proyectos:
- Una red de VPC compartida
- Una VM
- Un servicio del Directorio de servicios
- Dialogflow CX
Antes de crear los proyectos, ten en cuenta lo siguiente:
- Asegúrate de que la invocación de la API respete el perímetro de los Controles del servicio de VPC.
- Asegúrate de que la configuración del proyecto de servicio Google Cloud permita el tráfico de salida a una VM que resida en el proyecto de red de VPC.
- Es posible que el proyecto del productor no sea el mismo que el proyecto de Google Cloud servicio.
- Asegúrate de que se usen los perímetros de los Controles del servicio de VPC de ambos proyectos.
- El proyecto de Service Directory y el proyecto de red no necesitan estar conectados, pero ambos deben formar parte de los mismos Controles del servicio de VPC.
- En la red y el servicio, el firewall y IAM están inhabilitados de forma predeterminada.
En la figura 2, se muestra cómo puedes enviar tráfico con acceso a la red privada con los perímetros de los Controles del servicio de VPC aplicados.
Configura el proyecto de red
- Crea un proyecto, como
my-vpc-project
. Crea una red de VPC, como
vpc-1
.Cuando crees la red de VPC, en Modo de creación de subredes, selecciona Automático.
Crea una regla de firewall, como
firewall-1
.Cuando crees la regla, ingresa o selecciona los siguientes valores:
- En Red, selecciona
vpc-1
. - En Rangos de IPv4 de origen, ingresa
35.199.192.0/19
. - En Protocolos y puertos, selecciona TCP y, luego, ingresa
443
o80
.
- En Red, selecciona
En la región
us-central1
, crea una VM, comovm-1
.Cuando crees la VM, ingresa o selecciona los siguientes valores:
- En Networking > Network Interfaces, selecciona
vpc-1
. - En Firewall, selecciona Permitir tráfico HTTP.
Si deseas usar HTTPS, selecciona Permitir tráfico HTTPS. También asegúrate de instalar un certificado de seguridad de la capa de transporte (TLS) de la infraestructura de clave pública (PKI).
- En Networking > Network Interfaces, selecciona
Si usas los Controles del servicio de VPC, el perímetro de los Controles del servicio de VPC permite que Directorio de servicios se conecte tanto al proyecto de servicio como al proyecto de Directorio de servicios Directory. Google Cloud
Configura el proyecto del Directorio de servicios
Crea un proyecto, como
my-sd-project
.Necesitas un permiso de IAM adicional porque el proyecto de la red de VPC y el proyecto de Directorio de servicios son diferentes.
Desde el proyecto de red, otorga el rol de Vinculador de redes del Directorio de servicios (
roles/servicedirectory.networkAttacher
) al principal de IAM que crea el extremo de Directorio de servicios.Crea un extremo del Directorio de servicios que apunte a la VM en la red de VPC:
- En la región
us-central1
, crea un espacio de nombres, comonamespace-1
. - En el espacio de nombres, registra un servicio de Directorio de servicios, como
sd-1
. - Crea un extremo en
sd-1
. Para la dirección del extremo, usa la dirección IP interna devm-1
en el puerto443
. Para obtener más información, consulta Crea un extremo con acceso a la red privada.
- En la región
Otorga los siguientes roles de IAM al agente de servicio del productoGoogle Cloud que llamará al extremo:
- Rol de visualizador del Directorio de servicios (
roles/servicedirectory.viewer
) en el proyecto del Directorio de servicios - Rol de servicio autorizado de Private Service Connect (
roles/servicedirectory.pscAuthorizedService
) en el proyecto de red
- Rol de visualizador del Directorio de servicios (
Si usas los Controles del servicio de VPC, el perímetro de los Controles del servicio de VPC permite que Directorio de servicios se conecte tanto al proyecto de servicio como al proyecto de Directorio de servicios Directory. Google Cloud
Configura el proyecto de servicio Google Cloud
- Habilita la API para el servicio de Google Cloud que estás usando.
- Para configurar el servicio Google Cloud
PUSH
, usa el servicio del Directorio de servicios del proyecto del Directorio de servicios.
Si usas los Controles del servicio de VPC, el perímetro de los Controles del servicio de VPC permite que Directorio de servicios se conecte tanto al proyecto de red como al proyecto de Directorio de servicios.
Usa el acceso a la red privada del Directorio de servicios con Dialogflow
Para obtener instrucciones sobre cómo usar el acceso a la red privada del Directorio de servicios con Dialogflow, consulta Usa el Directorio de servicios para acceder a redes privadas.
¿Qué sigue?
- Para obtener una descripción general del Directorio de servicios, consulta la Descripción general del Directorio de servicios.
- Para obtener más información sobre Private Service Connect, consulta Private Service Connect.
- Para encontrar soluciones a problemas comunes que podrías tener cuando usas Directorio de servicios, consulta Solución de problemas.