Configurar emparejamiento entre redes de VPC

Puedes configurar Vertex AI para que se empareje con Virtual Private Cloud (VPC) y se conecte directamente con determinados recursos de Vertex AI, como los siguientes:

En esta guía se muestra cómo configurar el emparejamiento entre redes de VPC para emparejar tu red con recursos de Vertex AI. Esta guía se recomienda a los administradores de redes que ya estén familiarizados con los Google Cloudconceptos de redes.

Información general

En esta guía se explican las siguientes tareas:

  • Configura el acceso privado a servicios para la VPC. De esta forma, se establece una conexión de emparejamiento entre tu VPC y la red de VPC compartida de Google.
  • Ten en cuenta el intervalo de IPs que necesitas reservar para Vertex AI.
  • Si procede, exporta las rutas personalizadas para que Vertex AI pueda importarlas.

Antes de empezar

  • Selecciona una VPC con la que quieras emparejar los recursos de Vertex AI. Vertex AI solo se puede emparejar con una red por región a la vez.
  • Selecciona o crea un Google Cloud proyecto para usarlo en Vertex AI.
  • Verify that billing is enabled for your Google Cloud project.

  • Enable the Compute Engine API, Vertex AI API, and Service Networking APIs.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the APIs

  • También puedes usar VPC compartida. Si usas una VPC compartida, normalmente usas Vertex AI en un proyecto independiente del proyecto host de la VPC.Google CloudHabilita las APIs Compute Engine y Service Networking en ambos proyectos. Consulta cómo aprovisionar una VPC compartida.
  • Instala la CLI de gcloud si quieres ejecutar los gcloud ejemplos de esta guía.

Roles obligatorios

Si no eres propietario ni editor del proyecto, asegúrate de tener el rol de administrador de redes de Compute (roles/compute.networkAdmin), que incluye los roles necesarios para gestionar los recursos de red.

Emparejamiento con una red on-premise

Si vas a usar el emparejamiento entre redes de VPC con una red local, debes seguir estos pasos adicionales:

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

Configurar el acceso privado a servicios para tu VPC

Cuando configuras el acceso a servicios privados, estableces una conexión privada entre tu red y una red propiedad 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, reserva un intervalo de IP para los productores de servicios y, a continuación, crea una conexión de emparejamiento con Vertex AI.

Si ya tienes una VPC con el acceso privado a servicios configurado, ve a la sección sobre cómo exportar rutas personalizadas.

  1. Define las variables de entorno del ID de tu proyecto, el nombre del intervalo reservado y el nombre de tu red. Si utilizas una VPC compartida, usa el ID del proyecto host de tu VPC. De lo contrario, usa el ID del proyecto que utilices para Vertex AI. Google Cloud
  2. Habilita las APIs necesarias. Si usas VPC compartida, consulta Usar VPC compartida con Vertex AI.
  3. Define un intervalo reservado con gcloud compute addresses create.
  4. Establece una conexión de emparejamiento entre tu proyecto host de VPC y Service Networking de Google mediante gcloud services vpc-peerings connect.

    En el caso de los puntos finales de inferencia privados, recomendamos reservar al menos un bloque /21 para la subred de alojamiento de modelos. Si reservas un bloque más pequeño, pueden producirse errores de implementación debido a que no hay suficientes direcciones IP.

    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
    

Más información sobre el acceso a servicios privados

.

Usar 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 Compute Engine y Service Networking en el proyecto host y en el proyecto de servicio. La API Vertex AI debe estar habilitada en el proyecto de servicio.

  2. Crea la conexión de emparejamiento de redes de VPC entre tu VPC y los servicios de Google en el 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 servicio o de usuario que se usa tenga el rol Usuario de red de Compute (roles/compute.networkUser).

Reservar intervalos de IP para Vertex AI

Cuando reservas un intervalo de direcciones IP para productores de servicios, Vertex AI y otros servicios pueden usarlo. Si te conectas con varios productores de servicios que usan el mismo intervalo, asigna un intervalo mayor para dar cabida a todos ellos y evitar que se agoten las IPs.

Consulta información sobre los intervalos de IP estimados que debes reservar para usar IPs privadas con diferentes tipos de trabajos de entrenamiento personalizado.

Si se inicia un trabajo con el siguiente parámetro, se iniciará en una red gestionada por Google que esté emparejada con tu VPC y otras redes conectadas a ella:

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

Los trabajos que no necesiten acceder a tus redes se pueden iniciar sin esta declaración, lo que permite conservar 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 emparejamiento en tu VPC. Al exportar rutas personalizadas, se envían todas las rutas estáticas y dinámicas aptas que se encuentran en tu red de VPC, como las rutas a tu red local, a las redes de los productores de servicios (Vertex AI en este caso). De esta forma, se establecen las conexiones necesarias y se permite que los trabajos de entrenamiento envíen tráfico de vuelta a tu red local.

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

Más información sobre las conexiones privadas con redes locales

Consola

  1. Ve a la página Emparejamiento entre redes de VPC de la Google Cloud consola.
    Ve a la página Emparejamiento entre redes de VPC
  2. Selecciona la conexión de peering que quieras actualizar.
  3. Haz clic en Editar.
  4. Selecciona Exportar rutas personalizadas.

gcloud

  1. Busca el nombre de la conexión de peering que quieras actualizar. Si tienes varias conexiones de emparejamiento, 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 entre redes para exportar rutas personalizadas.

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

Consultar el estado de tus conexiones de peering

Para comprobar que las conexiones de peering están activas, puedes enumerarlas con el siguiente comando:

gcloud compute networks peerings list --network $NETWORK

Debería ver que el estado del peering que acaba de crear es ACTIVE. Más información sobre las conexiones de emparejamiento activas

Solución de problemas

En esta sección se enumeran algunos problemas habituales al configurar el emparejamiento 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 todos los usuarios o cuentas de servicio de Vertex AI del proyecto de servicio tengan el rol compute.networkUser en tu proyecto host.

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

  • Si te aparecen 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 añadir un nuevo intervalo a la configuración de emparejamiento de redes de VPC o eliminar 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 dirigirán a través de tu red para llegar a los endpoints de otras redes. Sin embargo, es posible que esos endpoints no se enruten a través de tu red para enviar respuestas de vuelta a Vertex AI. Asegúrate de añadir también rutas estáticas o dinámicas en esas redes para la ruta de retorno al intervalo de IPs asignado a Vertex AI.

  • Errores de tiempo de espera de conexión o de host no accesible: como no se admite el peering transitivo, las conexiones de Vertex AI no podrán acceder a los endpoints de otras redes que estén emparejadas directamente con tu red, aunque la opción "Exportar rutas personalizadas" esté habilitada. Ponte en contacto con el administrador de tu red para asegurarte de que no se intenta enrutar directamente tu red de una red emparejada directamente a otra. Si es necesario, puedes sustituir uno de estos saltos de peering por una solución que admita rutas estáticas o dinámicas.

  • Errores de DNS Host Unreachable: si tu trabajo de Vertex AI necesita resolver nombres de host en tu VPC, asegúrate de haber completado la configuración para compartir zonas de DNS privadas con productores de servicios.

  • Si se produce el error Unable to create an instance within a Shared VPC network, consulta Solucionar problemas de Vertex AI Workbench.

  • Si aparece el mensaje de error For the peered network $network_name, couldn't find a free blocks in allocated IP ranges. This is needed to create the cluster., debes aumentar el número de intervalos asignados disponibles para el servicio. Puedes hacerlo de las siguientes formas:

    También puedes sustituir el emparejamiento de redes de VPC por una conexión de acceso a servicios privados.

Para obtener más información sobre cómo solucionar problemas, consulta la guía de solución de problemas de emparejamiento entre redes de VPC.

Siguientes pasos