Crear una instancia privada con el peering de VPC

En esta página se describe cómo crear una instancia de Cloud Data Fusion con una dirección IP interna. Crea la instancia en una red de VPC o en una red de VPC compartida.

Una instancia privada de Cloud Data Fusion ofrece las siguientes ventajas:

  • Las conexiones a la instancia se establecen a través de una red de VPC privada de tu Google Cloud proyecto. El tráfico de la red no pasa por la red pública de Internet.

  • La instancia puede conectarse a tus recursos on-premise, como bases de datos relacionales, porque tu red on-premise se conecta a laGoogle Cloud red de VPC privada a través de Cloud VPN o Cloud Interconnect. Puede acceder de forma segura a sus recursos locales, como bases de datos, a través de la red privada sin abrir el acceso a Google Cloud.

Objetivos

  • Configura la red de VPC o la red de VPC compartida.
  • Asigna un intervalo de IPs que se usará para desplegar la instancia de Cloud Data Fusion en el proyecto de inquilino.
  • Crea la instancia privada de Cloud Data Fusion.
  • Configura el emparejamiento de redes de VPC entre la VPC que contiene la instancia de Cloud Data Fusion y la VPC que contiene el proyecto de arrendatario asociado.
  • En las redes de VPC compartidas, configura los permisos de Gestión de Identidades y Accesos (IAM).
  • Si tu instancia privada usa Cloud Data Fusion 6.2.0 o una versión anterior, crea una regla de cortafuegos.
  • Permite que diferentes servicios se comuniquen internamente entre sí habilitando Acceso privado de Google en la subred de Dataproc. Google Cloud

Antes de empezar

  • Para obtener información sobre la arquitectura de implementación de Cloud Data Fusion, consulta Redes.

Configurar la red de VPC

Si aún no lo has hecho, crea una red de VPC o una red de VPC compartida.

Para configurar tu red de VPC, debes asignar un intervalo de direcciones IP.

Asignar intervalo de IP

Red VPC

Si no usas una red de VPC compartida, Cloud Data Fusion asigna un intervalo de IPs de forma predeterminada al crear una instancia.

Red VPC compartida

Para usar una VPC compartida, debes asignar un intervalo de IPs a tu instancia de Cloud Data Fusion.

Para asignar un intervalo de IP a tu instancia de Cloud Data Fusion, sigue estos pasos:

  1. En la Google Cloud consola, ve a la página Redes de VPC.

    Ir a redes de VPC

  2. En la columna Nombre, haz clic en la red de VPC en la que quieras crear una instancia privada de Cloud Data Fusion.

    Se abrirá la página Detalles de la red de VPC.

  3. Haz clic en Conexión de servicio privada. Si se te solicita, habilita la API Service Networking haciendo clic en Habilitar API.

    Configura los detalles de la red de VPC.

  4. Haz clic en Asignar intervalo de IPs.

    1. Asigne un nombre al intervalo de IPs.

    2. En Intervalo de IPs, haz clic en Automático.

    3. Especifica un tamaño de prefijo de 22.

    4. Haz clic en Asignar.

      Asigna un intervalo de IPs.

Crear una instancia privada

Crea la instancia privada de Cloud Data Fusion en una red VPC o en una red VPC compartida.

Red VPC

Para crear la instancia en una red de VPC, usa laGoogle Cloud consola o cURL.

Si usas la Google Cloud consola para crear tu instancia privada, Cloud Data Fusion asigna el intervalo de direcciones IP /22 de forma predeterminada. Para elegir otro intervalo de IP, debes usar el comando cURL.

Consola

  1. Ve a la página Crear instancia de Data Fusion.

    Ir a Crear instancia de Data Fusion

  2. Introduce el nombre y la descripción de la instancia.

  3. Selecciona la región en la que quieras crear la instancia.

  4. Selecciona una versión y una edición de Cloud Data Fusion.

  5. Especifica la cuenta de servicio de Dataproc que quieres usar para ejecutar tu flujo de procesamiento de Cloud Data Fusion en Dataproc. La cuenta predeterminada de Compute Engine está preseleccionada.

  6. Despliega el menú Opciones avanzadas y haz clic en Habilitar IP privada.

  7. En el campo Red, elige una red en la que crear la instancia.

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

cURL

Para mayor comodidad, puede exportar las siguientes variables o sustituir directamente estos valores en los siguientes comandos:

export PROJECT=PROJECT_ID
export LOCATION=REGION
export DATA_FUSION_API_NAME=datafusion.googleapis.com

Para crear la instancia, llama a su método create():

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://$DATA_FUSION_API_NAME/v1/projects/$PROJECT/locations/$LOCATION/instances?instance_id=INSTANCE_ID -X POST -d '{"description": "Private CDF instance created through REST.", "type": "ENTERPRISE", "privateInstance": true, "networkConfig": {"network": "NETWORK_NAME", "ipAllocation": "IP_RANGE"}}'

Haz los cambios siguientes:

  • INSTANCE_ID: la cadena de ID que debe obtener la nueva instancia.
  • NETWORK_NAME: nombre de la red de VPC en la que quieres crear tu instancia privada.
  • IP_RANGE: el intervalo de IPs que has asignado. Para encontrar el intervalo de IPs en la consola, ve a Detalles de la red de VPC > Conexión de servicio privada > Intervalo de IPs internas.Google Cloud

Red VPC compartida

Para crear una instancia en una red de VPC compartida, usa cURL, no la consolaGoogle Cloud .

cURL

Para tu comodidad, puedes exportar las siguientes variables. También puede sustituir directamente estos valores en los siguientes comandos:

export PROJECT=PROJECT_ID
export LOCATION=REGION
export DATA_FUSION_API_NAME=datafusion.googleapis.com

Para crear la instancia, llama a su método create():

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://$DATA_FUSION_API_NAME/v1/projects/$PROJECT/locations/$LOCATION/instances?instanceId=INSTANCE_ID -X POST -d '{"description": "Private CDF instance created through REST.", "type": "ENTERPRISE", "privateInstance": true, "networkConfig": {"network": "projects/SHARED_VPC_HOST_PROJECT_ID/global/networks/NETWORK_NAME", "ipAllocation": "IP_RANGE"}}'

Haz los cambios siguientes:

  • INSTANCE_ID: la cadena de ID que debe obtener la nueva instancia.
  • SHARED_VPC_HOST_PROJECT_ID: ID del proyecto que aloja la red de VPC compartida.
  • NETWORK_NAME: Nombre de la red de VPC en la que quieres crear la instancia privada.
  • IP_RANGE: el intervalo de IPs que has asignado. Para encontrar el intervalo de IP en la Google Cloud consola, ve a la página Detalles de la red de VPC > Conexión de servicio privado > Intervalo de IP interna.

Configurar el emparejamiento entre redes de VPC

Los servicios de Cloud Data Fusion que usas en tu entorno de diseño (por ejemplo, Wrangler, Gestor de conexiones y Validación de esquemas) inician conexiones de red desde la VPC del proyecto de inquilino a los sistemas de origen. Cloud Data Fusion usa el emparejamiento entre redes de VPC para establecer la conectividad de red con la VPC o la VPC compartida que contiene tu instancia. El emparejamiento entre redes de VPC permite que Cloud Data Fusion acceda a los recursos de tu red a través de direcciones IP internas mediante tu propia VPC y sus controles. Para conectarte a un recurso de otra red, consulta los pasos para los casos prácticos de conexión.

En la siguiente sección se describe cómo crear una configuración de peering entre tu red y la red del proyecto de inquilino de Cloud Data Fusion.

Obtener el ID de proyecto del arrendatario

Para crear una configuración de emparejamiento, necesitas el ID del proyecto de inquilino.

  1. Ve a la página Instancias de Cloud Data Fusion.

    Ir a Instancias

  2. En la columna Nombre de instancia, seleccione la instancia.

  3. En la página Detalles de la instancia, copia el ID del proyecto de inquilino, que es necesario para crear una conexión de peering en los pasos siguientes.

Crear una conexión de intercambio de tráfico entre redes

  1. Ve a la página Emparejamiento entre redes VPC.

    Ir al emparejamiento entre redes VPC

  2. Haz clic en Crear conexión > Continuar.

  3. En la página Crear conexión de intercambio de tráfico entre redes que se abre, haz lo siguiente:

    1. Introduce un nombre para la conexión de peering.
    2. En Tu red de VPC, selecciona la red que contiene tu instancia de Cloud Data Fusion.
    3. En Red de VPC emparejada, selecciona En otro proyecto.
    4. En ID del proyecto, introduce el ID del proyecto de arrendatario que has encontrado anteriormente en este tutorial.
    5. En Nombre de la red de VPC, selecciona una red o introduce INSTANCE_REGION-INSTANCE_ID.

      Haz los cambios siguientes:

      • INSTANCE_REGION: la región en la que has creado tu instancia de Cloud Data Fusion.
      • INSTANCE_ID: el ID de tu instancia de Cloud Data Fusion.
    6. Selecciona la versión del protocolo de Internet de la conexión de emparejamiento para intercambiar rutas IPv4 e IPv6 entre tu red de VPC y la red de VPC emparejada. Para obtener más información, consulta la sección sobre el emparejamiento entre redes de VPC.

    7. Selecciona Exportar rutas personalizadas para que las rutas personalizadas se puedan exportar de tu red de VPC a la red de VPC del arrendatario.

    8. Elige si quieres permitir que se importen o exporten rutas de subred con IPv4 pública a tu red de VPC.

    9. Haz clic en Crear.

    El emparejamiento de redes VPC se activa poco después de crearse.

Configurar permisos de gestión de identidades y accesos

Red VPC

Sáltate este paso y ve a Crear una regla de cortafuegos.

Red VPC compartida

Si creas tu instancia de Cloud Data Fusion en una red de VPC compartida, debes conceder el rol Usuario de red de Compute a las siguientes cuentas de servicio. Para conceder permisos a todas las subredes, asigna el rol al proyecto del host de la VPC compartida.

Para controlar aún más el acceso, asigna el rol a una subred específica y el rol Lector de redes al proyecto host.

  • Cuenta de servicio de Cloud Data Fusion: service-PROJECT_NUMBER@gcp-sa-datafusion.iam.gserviceaccount.com
  • Cuenta de servicio de Dataproc: service-PROJECT_NUMBER@dataproc-accounts.iam.gserviceaccount.com

PROJECT_NUMBER es el número del Google Cloud proyecto que contiene tu instancia de Cloud Data Fusion.

Para obtener más información, consulta Conceder acceso a las cuentas de servicio necesarias.

Crear una regla de cortafuegos

Crea una regla de cortafuegos en tu red de VPC que permita las conexiones SSH entrantes del intervalo de IPs que especificaste al crear tu instancia privada de Cloud Data Fusion.

Este paso es obligatorio para las versiones de Cloud Data Fusion anteriores a la 6.2.0. Permite la comunicación entre Cloud Data Fusion y los clústeres de Dataproc que ejecutan flujos de procesamiento.

Puedes crear la regla de firewall con la consola Google Cloud o con la CLI de gcloud.

Consola

Consulta Crear reglas de cortafuegos.

gcloud

Ejecuta el siguiente comando:

gcloud compute firewall-rules create FIREWALL_NAME-allow-ssh --allow=tcp:22 --source-ranges=IP_RANGE --network=NETWORK_NAME --project=PROJECT_ID

Haz los cambios siguientes:

  • FIREWALL_NAME: el nombre de la regla de cortafuegos que se va a crear.
  • IP_RANGE: el intervalo de IPs que has asignado.
  • NETWORK_NAME: el nombre de la red a la que se adjunta la regla de cortafuegos. Es el nombre de la red de VPC en la que has creado la instancia privada.
  • PROJECT_ID: ID del proyecto que aloja la red de VPC.

Pasos para los casos prácticos de conexión

En las siguientes secciones se describen casos prácticos relacionados con la conexión de instancias privadas.

Habilitar Acceso privado de Google

Para acceder a los recursos a través de direcciones IP internas, Cloud Data Fusion debe crear los clústeres de Dataproc y ejecutar los flujos de procesamiento de datos en una subred que tenga acceso privado de Google. Debes habilitar el acceso privado de Google en la subred que contiene los clústeres de Dataproc.

  • Si solo hay una subred en la región en la que se inician los clústeres de Dataproc, el clúster se inicia en esa subred.
  • Si hay varias subredes en una región, debes configurar Cloud Data Fusion para que seleccione la subred con acceso privado a Google para iniciar clústeres de Dataproc.

Para habilitar Acceso privado de Google en la subred, consulta el artículo Configuración de Acceso privado de Google.

Opcional: Conectarse a otras fuentes

Después de crear una instancia privada en Cloud Data Fusion, puedes conectarte a otras fuentes, como en los siguientes casos prácticos:

Opcional: Habilitar el emparejamiento de DNS

Habilita Emparejamiento de DNS en los siguientes casos:

  • Cuando Cloud Data Fusion se conecta a sistemas a través de nombres de host, y no de direcciones IP
  • Cuando el sistema de destino se despliega detrás de un balanceador de carga, como ocurre en algunas implementaciones de SAP

Siguientes pasos