Configura el intercambio de tráfico entre redes de VPC

Puedes configurar Vertex AI para que intercambie tráfico con la nube privada virtual (VPC) a fin de conectarse directamente con ciertos recursos en Vertex AI, incluidos los siguientes:

En esta guía, se muestra cómo configurar el intercambio de tráfico entre redes de VPC para intercambiar tráfico con tu red de Vertex AI. Se recomienda esta guía a los administradores de redes que ya están familiarizados con los conceptos de las herramientas de redes de Google Cloud.

Descripción general

En esta guía, se abarcan las siguientes tareas:

  • Configurar el acceso a servicios privados para la VPC. Esto establece una conexión de intercambio de tráfico entre la VPC y la red de VPC compartida de Google
  • Considera el rango de IP que necesitas reservar para Vertex AI.
  • Si corresponde, exporta las rutas personalizadas para que Vertex AI pueda importarlas.

Antes de comenzar

  • Selecciona una VPC con la que quieras intercambiar tráfico con los recursos de Vertex AI.
  • Selecciona o crea un proyecto de Google Cloud para usarlo en Vertex AI.
  • Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  • Habilita las API de Compute Engine API, Vertex AI API, and Service Networking.

    Habilita las API

  • De forma opcional, puedes usar la VPC compartida. Por lo general, si usas una VPC compartida, utilizas Vertex AI en un proyecto de Google Cloud independiente que el proyecto host de VPC. Habilita las API de Compute Engine y las API de Herramientas de redes de servicios en ambos proyectos. Obtén más información sobre cómo aprovisionar una VPC compartida.
  • Instala la CLI de gcloud si deseas ejecutar los ejemplos de gcloud de esta guía.

Roles obligatorios

Si no eres propietario o editor de un proyecto, asegúrate de tener la función de administrador de red de Compute (roles/compute.networkAdmin), que incluya los permisos que necesitas para administrar los roles de herramientas de redes.

Intercambia tráfico con una red local

Hay pasos adicionales para el intercambio de tráfico entre redes de VPC con una red local:

  1. Conecta tu red local a tu VPC. Puedes usar un túnel VPN o una interconexión.
  2. Configura rutas personalizadas desde la VPC hasta tu red local.
  3. Exporta tus rutas personalizadas para que Vertex AI pueda importarlas.

Configura el acceso a servicios privados de tu VPC

Cuando configuras el acceso privado a servicios, debes establecer una conexión privada entre tu red y una red de Google o de un servicio de terceros (productores de servicios). En este caso, Vertex AI es un productor de servicios. Para configurar el acceso a servicios privados, debes reservar un rango de IP para los productores de servicios y, luego, crear una conexión de intercambio de tráfico con Vertex AI.

Si ya tienes una VPC con el acceso a servicios privados configurado, continúa con la exportación de las rutas personalizadas.

  1. Configura las variables de entorno del ID del proyecto, el nombre del rango reservado y el nombre de la red. Si usas una VPC compartida, usa el ID de tu proyecto host de VPC. De lo contrario, usa el ID del proyecto de Google Cloud que usas para Vertex AI.
  2. Habilita las APIs necesarias. Si usas una VPC compartida, consulta Usa una VPC compartida con Vertex AI.
  3. Configura un rango reservado mediante gcloud compute addresses create.
  4. Establece una conexión de intercambio de tráfico entre tu proyecto host de VPC y las Herramientas de redes de servicios de Google mediante gcloud services vpc-peerings connect.

    Para los extremos de predicción privados, recomendamos reservar al menos un bloque /21 para la subred en el hosting del modelo. Reservar un bloque más pequeño puede generar errores de implementación debido a direcciones IP insuficientes. Puedes elegir usar direcciones que no sean RFC 1918 para la implementación.

    PROJECT_ID=YOUR_PROJECT_ID
    gcloud config set project $PROJECT_ID
    
    # This is for display only; you can name the range anything.
    PEERING_RANGE_NAME=google-reserved-range
    
    NETWORK=YOUR_NETWORK_NAME
    
    # NOTE: `prefix-length=16` means a CIDR block with mask /16 will be
    # reserved for use by Google services, such as Vertex AI.
    gcloud compute addresses create $PEERING_RANGE_NAME \
      --global \
      --prefix-length=16 \
      --description="peering range for Google service" \
      --network=$NETWORK \
      --purpose=VPC_PEERING
    
    # Create the VPC connection.
    gcloud services vpc-peerings connect \
      --service=servicenetworking.googleapis.com \
      --network=$NETWORK \
      --ranges=$PEERING_RANGE_NAME \
      --project=$PROJECT_ID
    

Obtén más información sobre el acceso privado a servicios.

Usa la VPC compartida con Vertex AI

Si usas una VPC compartida en tu proyecto, consulta cómo aprovisionar una VPC compartida y asegúrate de completar los siguientes pasos:

  1. Habilita las APIs de Compute Engine y las APIs de Herramientas de redes de servicios en el proyecto host y el proyecto de servicio. La API de Vertex AI debe estar habilitada para el proyecto de servicio.

  2. Crea la conexión de intercambio de tráfico entre redes de VPC entre tu VPC y los servicios de Google dentro del proyecto host.

  3. Durante la creación de Vertex AI, debes especificar el nombre de la red a la que quieres que Vertex AI tenga acceso a la VPC compartida.

  4. Verifica que la cuenta de usuario o servicio usada tenga el rol de Usuario de la red de Compute (roles/compute.networkUser).

Reserva rangos de IP para Vertex AI

Cuando reservas un rango de IP para productores de servicios, Vertex AI y otros servicios pueden usarlo. Si te conectas con varios productores de servicios mediante el mismo rango, asigna un rango más grande para alojarlos a fin de evitar el agotamiento de la IP.

Lee sobre los rangos de IP estimados que se reservarán para usar IP privadas con diferentes tipos de trabajos de entrenamiento personalizados.

Si se inicia un trabajo con el siguiente parámetro, se iniciará en una red administrada por Google que intercambia tráfico con tu VPC y otras redes conectadas a él:

--network = "projects/${host_project}/global/networks/${network}"

Cualquier trabajo que no necesite acceder a tus redes se puede iniciar sin esta declaración, lo que conserva tus asignaciones de IP.

Exportar rutas personalizadas

Si usas rutas personalizadas, debes exportarlas para que Vertex AI pueda importarlas. Si no usas rutas personalizadas, omite esta sección.

Para exportar rutas personalizadas, actualiza la conexión de intercambio de tráfico en tu VPC. Exportar las rutas personalizadas envía todas las rutas estáticas y dinámicas aptas que están en tu red de VPC, como las rutas a tu red local y a las redes de productores de servicios (en este caso, Vertex AI). Esto establece las conexiones necesarias y permite que los trabajos de entrenamiento envíen el tráfico de vuelta a tu red local.

Asegúrate de que tu red local tenga rutas de regreso a los rangos de direcciones IP asignados para Vertex AI, de modo que las respuestas se enruten correctamente de vuelta a Vertex AI. Por ejemplo, usa anuncios de ruta personalizados de Cloud Router que incluyan los rangos de direcciones IP de Vertex AI.

Obtén más información sobre las conexiones privadas con redes locales.

Console

  1. Ve a la página Intercambio de tráfico entre redes de VPC en la consola de Google Cloud.
    Ir a la página Intercambio de tráfico entre redes de VPC
  2. Selecciona la conexión de intercambio de tráfico que quieres actualizar.
  3. Haz clic en Editar.
  4. Selecciona Exportar rutas personalizadas.

gcloud

  1. Busca el nombre de la conexión de intercambio de tráfico que deseas actualizar. Si tienes varias conexiones de intercambio de tráfico, omite la marca --format.

    gcloud services vpc-peerings list \
      --network=$NETWORK \
      --service=servicenetworking.googleapis.com \
      --project=$PROJECT_ID \
      --format "value(peering)"
    
  2. Actualiza la conexión de intercambio de tráfico a fin de exportar rutas personalizadas.

    gcloud compute networks peerings update PEERING-NAME \
        --network=$NETWORK \
        --export-custom-routes \
        --project=$PROJECT_ID
    

Verifica el estado de las conexiones de intercambio de tráfico

Para verificar que las conexiones de intercambio de tráfico estén activas, puedes enumerarlas mediante el siguiente comando:

gcloud compute networks peerings list --network $NETWORK

El estado del intercambio de tráfico que acabas de crear debería estar ACTIVE. Obtén más información sobre las conexiones de intercambio de tráfico activas.

Soluciona problemas

En esta sección, se enumeran algunos problemas comunes para configurar el intercambio de tráfico entre redes de VPC con Vertex AI.

  • Cuando configures Vertex AI para que use una red de VPC compartida, especifica el URI de la red de la siguiente manera.

    “projects/YOUR_SHARED_VPC_HOST_PROJECT/global/networks/YOUR_SHARED_VPC_NETWORK

  • Si especificas una red de VPC compartida para que la use Vertex AI, asegúrate de que cualquier usuario o actor de cuenta de servicio de Vertex AI en el proyecto de servicio tenga otorgado el rol compute.networkUser en tu proyecto host.

  • Asegúrate de haber asignado un rango de IP suficiente para todos los productores de servicios a los que se conecta tu red, incluido Vertex AI.

  • Si encuentras los mensajes de error IP_SPACE_EXHAUSTED, RANGES_EXHAUSTED o PEERING_RANGE_EXHAUSTED, debes aumentar la cantidad de direcciones IP disponibles para la reserva servicenetworking en tu red. Puedes agregar un rango nuevo a la configuración de intercambio de tráfico entre redes de VPC existente o borrar algunos recursos de Vertex AI para liberar direcciones IP asignadas.

  • Tiempos de espera de conexión: después de exportar rutas personalizadas, las conexiones de Vertex AI se enrutarán a través de tu red para llegar a los extremos de otras redes. Sin embargo, es posible que esos extremos no se enruten a través de tu red para enviar respuestas de vuelta a Vertex AI. Asegúrate de agregar también rutas estáticas o dinámicas en esas redes para la ruta de retorno al rango de IP asignado de Vertex AI.

  • Tiempos de espera de conexión o errores de host inaccesibles: Dado que el intercambio de tráfico transitivo no es compatible, las conexiones de Vertex AI no podrán llegar a los extremos en otras redes que intercambian tráfico de forma directa a tu red, incluso con la opción “Exportar rutas personalizadas” habilitada. Trabaja con tu administrador de red para asegurarte de que no haya intentos de enrutar directamente tu red de una red de intercambio de tráfico directo a otra. Si es necesario, puedes reemplazar uno de estos saltos de intercambio de tráfico por una solución que admita rutas estáticas o dinámicas.

  • Aloja errores de DNS inaccesibles: Si el trabajo de Vertex AI necesita resolver nombres de host en tu VPC, asegúrate de que completaste la configuración para Compartir zonas del DNS privadas con los productores de servicios.

Para obtener información adicional sobre la solución de problemas, consulta la Guía de solución de problemas de intercambio de tráfico entre redes de VPC.

¿Qué sigue?