Haz que el servicio sea accesible desde otras redes de VPC

En este instructivo, se muestra cómo hacer que un servicio balanceado por cargas esté disponible desde otras redes de VPC con Private Service Connect.

De forma predeterminada, el balanceador de cargas de red de transferencia interno que creaste en el instructivo anterior solo está disponible dentro de su propia red de VPC. Con Private Service Connect, puedes publicar el servicio para que esté disponible para los recursos en otras redes de VPC.

Este instructivo está dirigido a arquitectos de nube, arquitectos de red, administradores de red y administradores de TI.

Objetivos

  • Crea el servicio publicado
  • Crea una regla de firewall para el tráfico del servicio publicado
  • Obtén el URI del adjunto de servicio

Costos

En este documento, usarás los siguientes componentes facturables de Google Cloud:

Para obtener una estimación de costos en función del uso previsto, usa la calculadora de precios.

Es posible que los usuarios de Google Cloud nuevos cumplan con los requisitos para acceder a una prueba gratuita.

Cuando completes las tareas que se describen en este documento, podrás borrar los recursos que creaste para evitar que se te siga facturando. Para obtener más información, consulta Realiza una limpieza.

Antes de comenzar

  1. Completa los pasos del instructivo anterior, Crea un servicio con balanceo de cargas.
  2. Selecciona el proyecto del productor de servicios (PRODUCER_PROJECT) que seleccionaste o creaste en el instructivo anterior. Usa este proyecto para los pasos de este instructivo.

Crea el servicio publicado

Para que el servicio esté disponible desde otras redes de VPC, debes publicarlo. Para publicar un servicio, crea los siguientes recursos en la misma red y región que el balanceador de cargas:

  • Es una subred de Private Service Connect que proporciona direcciones IP para la traducción de direcciones de red (NAT) entre las redes de productores y consumidores.
  • Es un adjunto de servicio.

Con estas instrucciones, se crea un servicio publicado al que se puede acceder desde cualquier proyecto. En un entorno de producción, es posible que prefieras limitar qué redes o proyectos pueden acceder al servicio.

Console

  1. En la consola de Google Cloud , ve a la página Private Service Connect.

    Ir a Private Service Connect

  2. Haz clic en la pestaña Servicios publicados.

  3. Haz clic en Publicar servicio.

  4. En la sección Detalles del destino, selecciona Balanceador de cargas.

  5. Selecciona Balanceador de cargas de red de transferencia interno.

  6. Selecciona el balanceador de cargas interno que creaste, service-lb.

  7. Para Nombre del servicio, ingresa published-service.

  8. Crea una subred de Private Service Connect para la NAT:

    1. Haz clic en Subredes y, luego, en Reservar subred nueva.
    2. En Nombre, ingresa nat-subnet.
    3. En Región, selecciona REGION.
    4. En el Rango de IPv4, ingresa 10.10.20.0/22.
    5. Haz clic en Agregar.
  9. En Preferencia de conexión, selecciona Aceptar automáticamente todas las conexiones.

  10. Haz clic en Agregar servicio.

gcloud

  1. Crea una subred de Private Service Connect con el comando gcloud compute networks subnets create.

    gcloud compute networks subnets create nat-subnet \
      --network=service-network \
      --region=REGION \
      --range=10.10.20.0/22 \
      --purpose=PRIVATE_SERVICE_CONNECT
    
  2. Para publicar el servicio, usa el comando gcloud compute service-attachments create.

    gcloud compute service-attachments create published-service \
      --region=REGION \
      --target-service=projects/PRODUCER_PROJECT/regions/REGION/forwardingRules/service-rule \
      --connection-preference=ACCEPT_AUTOMATIC \
      --nat-subnets=nat-subnet
    

    Reemplaza lo siguiente:

    • PRODUCER_PROJECT: Es el ID del proyecto del productor.
    • REGION: Es la región del adjunto del servicio. Debe ser la misma región que la dirección IP de la regla de reenvío de destino.

Crea una regla de firewall para el tráfico del servicio publicado

Crea una regla de firewall para permitir que el tráfico de la subred de NAT de Private Service Connect llegue a las VMs de backend del balanceador de cargas.

Console

  1. En la consola de Google Cloud , ve a la página Políticas de firewall.

    Ir a Políticas de firewall

  2. Para permitir que el tráfico de la subred NAT de Private Service Connect llegue a las VMs de backend del balanceador de cargas, haz clic en Crear regla de firewall y usa la siguiente configuración:

    • En Nombre, ingresa fw-allow-nat.
    • En Red, selecciona service-network.
    • En Prioridad, ingresa 1000.
    • En Dirección del tráfico, selecciona Ingress.
    • En Acción en caso de coincidencia, selecciona Permitir.
    • En Destinos, selecciona Etiquetas de destino especificadas.
    • En Etiquetas de destino, ingresa allow-nat.
    • En Filtro de fuente, selecciona Rangos de IPv4.
    • En Rangos de IPv4 de origen, ingresa 10.10.20.0/22.
    • En Protocolos y puertos, selecciona Permitir todo.
  3. Haz clic en Crear.

gcloud

  1. Crea la regla de firewall fw-allow-nat para permitir la comunicación desde la subred de NAT de Private Service Connect a los backends de VM:

    gcloud compute firewall-rules create fw-allow-nat \
        --network=service-network \
        --action=allow \
        --direction=ingress \
        --source-ranges=10.10.20.0/22 \
        --rules=tcp,udp,icmp
    

Obtén el URI del adjunto de servicio

Usarás el URI del adjunto de servicio para configurar el extremo en el siguiente instructivo, Accede al servicio desde otra red de VPC.

Console

  1. En la consola de Google Cloud , ve a la página Private Service Connect.

    Ir a Private Service Connect

  2. Haz clic en la pestaña Servicios publicados.

  3. Haz clic en el servicio que deseas ver.

    El campo Adjunto de servicio contiene el URI del adjunto de servicio.

gcloud

  1. Usa el comando gcloud compute service-attachments describe para ver los detalles del servicio publicado.

    El campo selfLink contiene el URI del adjunto de servicio.

    gcloud compute service-attachments describe \
        published-service --region=REGION
    

    Reemplaza REGION por la región que contiene la vinculación del servicio.

¿Qué sigue?