Crea una instancia privada con Private Service Connect

En esta página, se describe cómo configurar Private Service Connect en Cloud Data Fusion.

Información acerca de Private Service Connect en Cloud Data Fusion

Es posible que las instancias de Cloud Data Fusion deban conectarse a recursos ubicados de forma local, en Google Cloudo en otros proveedores de servicios en la nube. Cuando usas Cloud Data Fusion con direcciones IP internas, las conexiones a los recursos externos se establecen a través de una red de nube privada virtual (VPC) en tu proyecto deGoogle Cloud . El tráfico de la red no pasa por la Internet pública. Cuando se le proporciona a Cloud Data Fusion acceso a tu red de VPC con el intercambio de tráfico entre VPC, existen limitaciones, que se hacen evidentes cuando usas redes a gran escala.

Con las interfaces de Private Service Connect, Cloud Data Fusion se conecta a tu VPC sin usar el intercambio de tráfico de VPC. La interfaz de Private Service Connect es un tipo de Private Service Connect que proporciona una forma para que Cloud Data Fusion inicie conexiones privadas y seguras a redes de VPC de consumidor. Esto no solo proporciona la flexibilidad y la facilidad de acceso (como el intercambio de tráfico de VPC), sino que también ofrece la autorización explícita y el control del consumidor que ofrece Private Service Connect.

En el siguiente diagrama, se muestra cómo se implementa la interfaz de Private Service Connect en Cloud Data Fusion:

Implementación de la interfaz de Private Service Connect

Figura 1. Implementación de la interfaz de Private Service Connect

Descripción de la Figura 1:

  • Las máquinas virtuales (VM) que ejecutan Cloud Data Fusion se alojan en un proyecto de usuario de Google. Para acceder a los recursos de la VPC del cliente, las VMs de Cloud Data Fusion usan la dirección IP que asigna la interfaz de red de Private Service Connect desde la subred del cliente. Esta subred se agrega al archivo adjunto de red que usa Cloud Data Fusion.

  • Los paquetes de IP que provienen de la interfaz de Private Service Connect se tratan de manera similar a los de una VM en la misma subred. Esta configuración permite que Cloud Data Fusion acceda directamente a los recursos de la VPC del cliente o de una VPC de pares sin necesidad de un proxy.

  • Se puede acceder a los recursos de Internet cuando Cloud NAT está habilitado en la VPC del cliente, mientras que se puede acceder a los recursos locales a través de una interconexión.

  • Para administrar la entrada o salida de Private Service Connect, puedes implementar reglas de firewall.

Ventajas clave

Los siguientes son los beneficios clave de usar Cloud Data Fusion con Private Service Connect:

  • Mejor control del espacio de IP. Tú controlas las direcciones IP que Cloud Data Fusion usa para conectarse a tu red. Eliges las subredes desde las que se asignan las direcciones IP a Cloud Data Fusion. Todo el tráfico de Cloud Data Fusion tiene una dirección IP de origen de tu subred configurada.

    Private Service Connect elimina la necesidad de direcciones IP reservadas de una VPC del cliente. El intercambio de tráfico entre VPC requiere un bloque CIDR de /22 (1,024 direcciones IP) por instancia de Cloud Data Fusion.

  • Mayor seguridad y aislamiento Cuando configuras un archivo adjunto de red, controlas qué servicios pueden acceder a tu red.

  • Configuración simplificada de instancias de Cloud Data Fusion. Crea un archivo adjunto de red por VPC del cliente solo una vez. No es necesario usar VMs de proxy para conectarse a recursos en Internet, VPCs de pares o locales.

Conceptos clave

En esta sección, se explican los conceptos involucrados en Private Service Connect en Cloud Data Fusion.

Adjunto de red

El adjunto de red es un recurso regional que se usa para autorizar a Cloud Data Fusion a usar y establecer conexiones de red de forma privada para acceder a los recursos de tu VPC. Para obtener más información, consulta Acerca de los adjuntos de red.

VPC compartida

El siguiente es un caso de uso para interfaces de Private Service Connect con VPC compartida:

  • La red o el equipo de infraestructura son propietarios de las subredes en un proyecto host. Permiten que los equipos de aplicaciones usen estas subredes desde su proyecto de servicio.

  • Los equipos de aplicaciones son propietarios de los archivos adjuntos de red en un proyecto de servicio. El archivo de vinculación de red define qué proyectos de usuario de Cloud Data Fusion pueden conectarse a las subredes vinculadas al archivo de vinculación de red.

Puedes crear un adjunto de red en un proyecto de servicio. Las subredes que se usan en un archivo adjunto de red solo pueden estar en el proyecto host.

En el siguiente diagrama, se ilustra este caso de uso:

Caso de uso de interfaces de Private Service Connect con VPC compartida

Figura 2. Caso de uso de interfaces de Private Service Connect con VPC compartida

Descripción de la Figura 2:

  • El archivo adjunto de red está presente en el proyecto de servicio. El archivo de conexión de red usa una subred que pertenece a una VPC compartida en el proyecto host.

  • La instancia de Cloud Data Fusion está presente en el proyecto de servicio y usa el archivo adjunto de red del proyecto de servicio para establecer conectividad privada.

  • A la instancia de Cloud Data Fusion se le asignan direcciones IP de la subred en la VPC compartida.

Antes de comenzar

  • Private Service Connect solo está disponible en Cloud Data Fusion 6.10.0 y versiones posteriores.

  • Puedes habilitar Private Service Connect solo cuando creas una instancia nueva de Cloud Data Fusion. No puedes migrar las instancias existentes para usar Private Service Connect.

Precios

Se cobran la entrada y salida de datos a través de Private Service Connect. Para obtener más información, consulta los precios de Private Service Connect.

Roles y permisos requeridos

Para obtener los permisos que necesitas para crear una instancia de Cloud Data Fusion y un adjunto de red, pídele a tu administrador que te otorgue los siguientes roles de Identity and Access Management (IAM) en tu proyecto:

Para asegurarte de que Cloud Data Fusion tenga los permisos necesarios para validar la configuración de red, pídele a tu administrador que otorgue al agente de servicio de Cloud Data Fusion (del formato service-CUSTOMER_PROJECT_NUMBER@gcp-sa-datafusion.iam.gserviceaccount.com) los siguientes roles de IAM en tu proyecto:

  • Para la VPC asociada con el archivo adjunto de red, Visualizador de la red de Compute (roles/compute.networkViewer)

  • Para que Cloud Data Fusion agregue su proyecto de usuario a la lista de aceptación del productor del archivo adjunto de red, haz lo siguiente:

    • compute.networkAttachments.get
    • compute.networkAttachments.update
    • compute.networkAttachments.list

    El rol más restrictivo con estos permisos es el de Administrador de red de Compute (roles/compute.networkAdmin). Estos permisos forman parte del rol de Agente de servicio de la API de Cloud Data Fusion (roles/datafusion.serviceAgent), que se otorga automáticamente al agente de servicio de Cloud Data Fusion. Por lo tanto, no se requiere ninguna acción, a menos que se haya quitado de forma explícita el otorgamiento de roles del agente de servicio.

Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

También puedes obtener los permisos necesarios a través de roles personalizados o cualquier otro rol predefinido.

Para obtener más información sobre las opciones de control de acceso en Cloud Data Fusion, consulta Control de acceso con IAM.

Crea una VPC o una red de VPC compartida

Asegúrate de haber creado una red de VPC o una red de VPC compartida.

Configura Private Service Connect

Para configurar Private Service Connect en Cloud Data Fusion, primero debes crear un archivo adjunto de red y, luego, una instancia de Cloud Data Fusion con Private Service Connect.

Crea un adjunto de red

El adjunto de red proporciona un conjunto de subredes. Para crear un archivo adjunto de red, sigue estos pasos:

Console

  1. En la consola de Google Cloud, ve a la página Conexiones de red:

    Ve a Archivos adjuntos de red.

  2. Haz clic en Create network attachment.

  3. En el campo Name, ingresa el nombre de tu red.

  4. En la lista Red, selecciona una VPC o una red de VPC compartida.

  5. En la lista Región, selecciona una región Google Cloud . Esta región debe ser la misma que la instancia de Cloud Data Fusion.

  6. En la lista Subred, selecciona un rango de subred.

  7. En Preferencia de conexión, selecciona Aceptar conexiones para los proyectos seleccionados.

    Cloud Data Fusion agrega automáticamente el proyecto de usuario de Cloud Data Fusion a la lista Proyectos aceptados cuando creas la instancia de Cloud Data Fusion.

  8. No agregues Proyectos aceptados ni Proyectos rechazados.

  9. Haz clic en Create network attachment.

    Crea un adjunto de red

gcloud

  1. Crea una o más subredes. Por ejemplo:

    gcloud compute networks subnets create subnet-1 --network=network-0 --range=10.10.1.0/24 --region=REGION
    

    El archivo de conexión de red usa estas subredes en los pasos posteriores.

  2. Crea un recurso de adjunto de red en la misma región que la instancia de Cloud Data Fusion, con la propiedad connection-preference configurada en ACCEPT_MANUAL:

    gcloud compute network-attachments create NAME
    --region=REGION
    --connection-preference=ACCEPT_MANUAL
    --subnets=SUBNET
    

    Reemplaza lo siguiente:

    • NAME: Es el nombre del adjunto de red.
    • REGION: Es el nombre de la Google Cloud región. Esta región debe ser la misma que la de la instancia de Cloud Data Fusion.
    • SUBNET: Es el nombre de la subred.

    El resultado de este comando es una URL de conexión de red del siguiente formato:

    projects/PROJECT/locations/REGION/network-attachments/NETWORK_ATTACHMENT_ID

    Toma nota de esta URL, ya que Cloud Data Fusion la necesita para la conectividad.

API de REST

  1. Crea una subred.

  2. Crea un adjunto de red:

    alias authtoken="gcloud auth print-access-token"
    NETWORK_ATTACHMENT_NAME=NETWORK_ATTACHMENT_NAME
    REGION=REGION
    SUBNET=SUBNET
    PROJECT_ID=PROJECT_ID
    
    read -r -d '' BODY << EOM
    {
      "name": "$NETWORK_ATTACHMENT_NAME",
      "description": "Network attachment for private Cloud Data Fusion",
      "connectionPreference": "ACCEPT_MANUAL",
      "subnetworks": [
        "projects/$PROJECT_ID/regions/$REGION/subnetworks/$SUBNET"
      ]
    }
    EOM
    
    curl -H "Authorization: Bearer $(authtoken)" \
    -H "Content-Type: application/json" \
    -X POST   -d "$BODY" "https://compute.googleapis.com/compute/v1/projects/$PROJECT_ID/regions/$REGION/networkAttachments"
    

    Reemplaza lo siguiente:

    • NETWORK_ATTACHMENT_NAME: Es el nombre del archivo adjunto de red.
    • REGION: Es el nombre de la Google Cloud región. Esta región debe ser la misma que la de la instancia de Cloud Data Fusion.
    • SUBNET: Es el nombre de la subred.
    • PROJECT_ID: el ID de tu proyecto.

Cree una instancia de Cloud Data Fusion

Cloud Data Fusion usa un bloque CIDR /25 (128 IPs) para los recursos del proyecto de usuario. Esto se denomina rango inaccesible o reservado. Puedes usar las mismas direcciones IP en las VPC, pero las VMs de Cloud Data Fusion no podrán conectarse con tus recursos con este rango.

En la mayoría de los casos, esto no es un problema, ya que el bloque CIDR inaccesible se encuentra, de forma predeterminada, en un rango que no es RFC 1918 (240.0.0.0/8). Si deseas controlar el rango inaccesible, consulta Configuraciones avanzadas.

Para crear una instancia de Cloud Data Fusion con Private Service Connect habilitado, sigue estos pasos:

Console

  1. En la consola de Google Cloud, ve a la página Instancias de Cloud Data Fusion y haz clic en Crear instancia.

    Crea una instancia

  2. En el campo Nombre de la instancia, ingresa un nombre para tu nueva instancia.

  3. En el campo Description, ingresa una descripción para la instancia.

  4. En la lista Región, selecciona la Google Cloud región en la que deseas crear la instancia.

  5. En la lista Versión, selecciona 6.10 o una versión posterior.

  6. Selecciona una edición. Para obtener más información sobre los precios de las diferentes ediciones, consulta la descripción general de los precios de Cloud Data Fusion.

  7. Expande Advanced options y haz lo siguiente:

    1. Selecciona Enable private IP.

    2. Selecciona Private Service Connect como Connectivity type.

    3. En la sección Adjunto de red, selecciona el adjunto de red que creaste en Cómo crear un adjunto de red.

  8. Haz clic en Crear. El proceso de creación de la instancia toma hasta 30 minutos en completarse.

    Crea una instancia de Cloud Data Fusion con Private Service Connect

API de REST

Ejecuta el siguiente comando:

alias authtoken="gcloud auth print-access-token"

EDITION=EDITION
PROJECT_ID=PROJECT_ID
REGION=REGION
CDF_ID=INSTANCE_ID
NETWORK_ATTACHMENT_ID=NETWORK_ATTACHMENT_ID

read -r -d '' BODY << EOM
{
  "description": "PSC enabled instance",
  "version": "6.10",
  "type": "$EDITION",
  "privateInstance": "true",
  "networkConfig": {
    "connectionType": "PRIVATE_SERVICE_CONNECT_INTERFACES",
    "privateServiceConnectConfig": {
      "networkAttachment": "$NETWORK_ATTACHMENT_ID"
    }
  }
}
EOM

curl -H "Authorization: Bearer $(authtoken)" \
-H "Content-Type: application/json" \
-X POST   -d "$BODY" "https://datafusion.googleapis.com/v1/projects/$PROJECT_ID/locations/$REGION/instances/?instanceId=$CDF_ID"

Reemplaza lo siguiente:

  • EDITION: La edición de Cloud Data Fusion: BASIC, DEVELOPER o ENTERPRISE.
  • PROJECT_ID: el ID de tu proyecto.
  • REGION: Es el nombre de la Google Cloud región. Esta región debe ser la misma que la de la instancia de Cloud Data Fusion.
  • INSTANCE_ID: El ID de tu instancia.
  • NETWORK_ATTACHMENT_ID: Es el ID de tu adjunto de red.

Configuración avanzada

Para habilitar el uso compartido de subredes, puedes proporcionar el mismo adjunto de red a varias instancias de Cloud Data Fusion. Por el contrario, si deseas dedicar una subred para una instancia de Cloud Data Fusion en particular, debes proporcionar un adjunto de red específico que usará la instancia de Cloud Data Fusion.

Recomendado: Para aplicar una política de firewall uniforme a todas las instancias de Cloud Data Fusion, usa el mismo archivo adjunto de red.

Si deseas controlar el bloque CIDR /25 al que Cloud Data Fusion no puede acceder, especifica la propiedad unreachableCidrBlock cuando crees la instancia. Por ejemplo:

alias authtoken="gcloud auth print-access-token"

EDITION=EDITION
PROJECT_ID=PROJECT_ID
REGION=REGION
CDF_ID=INSTANCE_ID
NETWORK_ATTACHMENT_ID=NETWORK_ATTACHMENT_ID
UNREACHABLE_RANGE=UNREACHABLE_RANGE

read -r -d '' BODY << EOM
{
  "description": "PSC enabled instance",
  "version": "6.10",
  "type": "$EDITION",
  "privateInstance": "true",
  "networkConfig": {
    "connectionType": "PRIVATE_SERVICE_CONNECT_INTERFACES",
    "privateServiceConnectConfig": {
      "unreachableCidrBlock": "$UNREACHABLE_RANGE",
      "networkAttachment": "projects/$PROJECT_ID/regions/$REGION/networkAttachments/$NETWORK_ATTACHMENT_ID"
    }
  }
}
EOM

curl -H "Authorization: Bearer $(authtoken)" \
-H "Content-Type: application/json" \
-X POST -d "$BODY" "https://datafusion.googleapis.com/v1/projects/$PROJECT_ID/locations/$REGION/instances/?instanceId=$CDF_ID"

Reemplaza lo siguiente:

  • EDITION: La edición de Cloud Data Fusion: BASIC, DEVELOPER o ENTERPRISE.
  • PROJECT_ID: el ID de tu proyecto.
  • REGION: Es el nombre de la Google Cloud región. Esta región debe ser la misma que la de la instancia de Cloud Data Fusion.
  • INSTANCE_ID: El ID de tu instancia.
  • NETWORK_ATTACHMENT_ID: Es el ID de tu adjunto de red.
  • UNREACHABLE_RANGE: El rango que no se puede alcanzar, por ejemplo, 10.0.0.0/25.

Seguridad

En esta sección, se describe la seguridad entre Cloud Data Fusion y los consumidores.

Seguridad de los consumidores en Cloud Data Fusion

Las interfaces de Private Service Connect admiten reglas de firewall de salida para controlar a qué puede acceder Cloud Data Fusion dentro de tu VPC. Para obtener más información, consulta Limita el ingreso de productor a consumidor.

Seguridad del consumidor a Cloud Data Fusion

Las VMs de Cloud Data Fusion con la interfaz de Private Service Connect bloquean todo el tráfico que se origina en tu VPC y que no es un paquete de respuesta.