Configura el acceso a VPC sin servidores

El acceso a VPC sin servidores te permite conectarte desde un entorno sin servidores en Google Cloud (Cloud Run, App Engine o Cloud Functions) directamente a la red de VPC. Esta conexión permite que el entorno sin servidores acceda a las instancias de VM de Compute Engine, las instancias de Memorystore y cualquier otro recurso con una dirección IP interna. Por ejemplo, esto puede ser útil en los siguientes casos:

  • Si usas Memorystore para almacenar datos de un servicio sin servidores.
  • Si tus cargas de trabajo sin servidores usan software de terceros que ejecutas en una VM de Compute Engine.
  • Si ejecutas un servicio de backend en un grupo de instancias administrado en Compute Engine y necesitas que el entorno sin servidores se comunique con este backend sin exponerse a la Internet pública.
  • Si el entorno sin servidores debe acceder a los datos de la base de datos local a través de Cloud VPN.

Con el acceso a VPC sin servidores, las solicitudes enviadas desde el entorno sin servidores a direcciones IP internas (como se define en RFC 1918) se enrutan a la red de VPC. Solo se puede acceder a las direcciones IP internas desde los servicios de Google Cloud. El uso de IP internas evita exponer los recursos a la Internet pública y mejora la latencia de la comunicación entre los servicios.

El acceso a VPC sin servidores permite que solo el entorno sin servidores inicie las solicitudes. Las solicitudes iniciadas por una VM deben usar la dirección externa del servicio sin servidores. Consulta Acceso privado a Google para obtener más información.

El acceso a VPC sin servidores admite la comunicación con las redes de VPC conectadas a través de Cloud VPN y el intercambio de tráfico entre redes de VPC. El acceso a VPC sin servidores no admite redes heredadas ni VPC compartida.

Conectores de acceso a VPC sin servidores

El acceso a VPC sin servidores se basa en un recurso denominado conector. Los conectores controlan el tráfico entre el entorno sin servidores y la red de VPC. Cuando creas un conector en un proyecto de Google Cloud, debes conectarlo a una red de VPC y a una región específicas. Luego, puedes configurar los servicios sin servidores a fin de usar el conector para el tráfico de red interno.

Cuando creas un conector, también le asignas un rango de IP. El tráfico que se envió a través del conector a la red de VPC se originará desde una dirección de este rango. El rango de IP debe ser un rango /28 de CIDR que no esté reservado en la red de VPC. Se crea una regla de firewall de forma automática con prioridad de 1,000 en la red de VPC para permitir el tráfico de este rango de IP a todos los destinos de la red.

El acceso a VPC sin servidores aprovisiona de forma automática la capacidad de procesamiento de un conector en incrementos de 100 Mbps según la cantidad de tráfico que se envía a través de él. La capacidad de procesamiento aprovisionada automáticamente solo puede aumentar la escala, no disminuirla. Los conectores siempre tienen aprovisionados 200 Mbps como mínimo y no pueden exceder una capacidad de procesamiento de 1,000 Mbps. Cuando creas un conector, puedes configurar los límites de capacidad de procesamiento mínima y máxima.

Los conectores del Acceso a VPC sin servidores tienen un cargo mensual en función del uso. Consulta la sección Precios para obtener más detalles.

Ejemplo del Acceso a VPC sin servidores (haz clic para ampliar)
Ejemplo del Acceso a VPC sin servidores (haz clic para ampliar)

Ten en cuenta lo siguiente:

  • Un conector debe estar ubicado en el mismo proyecto y la misma región que el servicio sin servidores que se conecta a él. Consulta la sección Regiones admitidas para ver la lista de regiones en las que puedes crear conectores.
  • El tráfico a las direcciones IP internas se enruta a través del conector. De forma predeterminada, el tráfico a las direcciones IP externas se enruta a través de Internet.
  • Puedes usar el mismo conector con varios servicios sin servidores.
  • En el caso de los recursos que permiten el acceso entre regiones, los conectores pueden estar en una región diferente de los recursos a los que envían el tráfico. Se te factura por el tráfico de salida del conector. Consulta la sección Precios.

Crea un conector

Para crear un conector, usa Cloud Console o la herramienta de línea de comandos de gcloud:

Console

  1. Asegúrate de que esté habilitada la API de Acceso a VPC sin servidores en el proyecto:

    Habilitar la API

  2. Dirígete a la página de descripción general del Acceso a VPC sin servidores.

    Ir a Acceso a VPC sin servidores

  3. Haz clic en Crear conector.

  4. En el campo Nombre, ingresa un nombre para el conector.

  5. En el campo Región, selecciona una región para el conector. Debe coincidir con la región del servicio sin servidores. Consulta Regiones admitidas.

  6. En el campo Red, selecciona la red de VPC a la que conectarás el conector.

  7. En el campo Rango de IP, ingresa un rango de IP internas de CIDR /28 no reservado. Este rango de IP no debe superponerse con ninguna reserva de dirección IP existente en la red de VPC. Por ejemplo, 10.8.0.0/28 funcionará en la mayoría de los proyectos nuevos.

  8. Para ejercer control adicional sobre la capacidad de procesamiento del conector, edita los campos Capacidad de procesamiento mínima y Capacidad de procesamiento máxima (opcional).

  9. Haz clic en Crear.

Aparecerá una marca de verificación verde junto al nombre del conector cuando esté listo para usar.

gcloud

  1. Actualiza los componentes de gcloud a la versión más reciente:

    gcloud components update
    
  2. Asegúrate de que esté habilitada la API de Acceso a VPC sin servidores en el proyecto:

    gcloud services enable vpcaccess.googleapis.com
    
  3. Crea un conector con el siguiente comando:

    gcloud compute networks vpc-access connectors create [CONNECTOR_NAME] \
    --network [VPC_NETWORK] \
    --region [REGION] \
    --range [IP_RANGE]
    

    Donde:

    • [CONNECTOR_NAME] es el nombre del conector.
    • [VPC_NETWORK] es la red de VPC a la que conectarás el conector.
    • [REGION] es una región para el conector. Debe coincidir con la región del servicio sin servidores. Consulta Regiones admitidas.
    • [IP_RANGE] es un rango de IP internas de CIDR /28 no reservado. Este rango de IP no debe superponerse con ninguna reserva de dirección IP existente en la red de VPC. Por ejemplo, 10.8.0.0/28 funcionará en la mayoría de los proyectos nuevos.

    Para obtener más detalles y argumentos opcionales, como los controles de la capacidad de procesamiento, consulta la referencia de gcloud.

  4. Verifica que el conector tenga el estado READY antes de usarlo:

    gcloud compute networks vpc-access connectors describe [CONNECTOR_NAME] --region [REGION]
    

    El resultado debe contener la línea state: READY.

Si la creación de un conector produce un error, sigue estos pasos y vuelve a crear el conector:

  • Especifica un rango de IP internas de RFC 1918 que no se superponga con ninguna reserva de dirección IP existente en la red de VPC.
  • Otorga al proyecto permiso para usar las imágenes de VM de Compute Engine del proyecto con el ID serverless-vpc-access-images. Consulta Configura restricciones de acceso a imágenes para obtener información sobre cómo actualizar las políticas de la organización según corresponda.

Borra un conector

Antes de borrar un conector, asegúrate de que ningún servicio lo esté usando. Consulta la documentación del producto correspondiente para obtener información sobre cómo desconectar un conector.

Console

  1. Dirígete a la página de descripción general del Acceso a VPC sin servidores.

    Ir a Acceso a VPC sin servidores

  2. Selecciona el conector que quieres borrar.

  3. Haz clic en Borrar.

gcloud

Usa el siguiente comando de gcloud para borrar un conector:

gcloud compute networks vpc-access connectors delete [CONNECTOR_NAME] --region [REGION]

Donde:

  • [CONNECTOR_NAME] es el nombre del conector que quieres borrar.
  • [REGION] es la región donde se encuentra el conector.

Configura un servicio para usar un conector

Una vez que creaste un conector, puedes configurar los servicios sin servidores para usarlo. Recuerda que los conectores deben estar ubicados en la misma región que el servicio que se conecta a ellos. Si tienes varios servicios en la misma región, puedes usar el mismo conector; por ejemplo, una app de App Engine y una función de Cloud Functions en la misma región pueden compartir un conector si necesitan comunicarse con la misma red de VPC.

La forma en que configuras un servicio para usar un conector depende del producto. Para obtener instrucciones detalladas, consulta la documentación correspondiente que se encuentra a continuación:

Servicios compatibles

Puedes usar el acceso a VPC sin servidores para acceder a una red de VPC desde los siguientes servicios:

Regiones admitidas

Puedes crear un conector de acceso a VPC sin servidores en las siguientes regiones:

  • us-central1
  • us-east1
  • us-east4
  • europe-west1
  • europe-west2
  • europe-west3
  • asia-northeast1
  • asia-east2
  • asia-south1

Funciones de IAM seleccionadas

En la siguiente tabla, se describen las funciones de Cloud Identity and Access Management (Cloud IAM) asociadas con el acceso a VPC sin servidores. Consulta Funciones de acceso a VPC sin servidores en la documentación de Cloud IAM para obtener una lista de permisos asociados con cada función.

Función Descripción
Administrador de Acceso a VPC sin servidores
roles/vpcaccess.admin
Acceso completo a todos los recursos de Acceso a VPC sin servidores
Usuario de Acceso a VPC sin servidores
roles/vpaccess.user
Usuario de conectores de Acceso a VPC sin servidores
Visualizador de Acceso a VPC sin servidores
roles/vpaccess.viewer
Visualizador de todos los recursos de Acceso a VPC sin servidores

Registros de auditoría

Consulta la información del registro de auditoría de Acceso a VPC sin servidores.

Precios

El acceso a VPC sin servidores tiene los siguientes precios.

Recurso Precio
Conector de Acceso a VPC sin servidores Se cobra como 1 instancia de f1-micro por cada 100 Mbps de capacidad de procesamiento aprovisionada automáticamente para el conector.
Salida de red del entorno sin servidores al destino Se cobra según las tarifas de redes de Compute Engine.

Para ver los costos del Acceso a VPC sin servidores en Cloud Console, filtra los informes de facturación por la clave de etiqueta serverless-vpc-access.