En esta página, se describe cómo crear una instancia de Cloud Data Fusion con una dirección IP interna. Creas la instancia en una red de VPC o en una red de VPC compartida.
Una instancia privada de Cloud Data Fusion tiene los siguientes beneficios:
Las conexiones a la instancia se establecen en una red de VPC privada en tu proyecto de Google Cloud. El tráfico en la red no pasa por la Internet pública.
La instancia puede conectarse a los recursos locales, como las bases de datos relacionales, ya que la red local se conecta a la red de VPC privada de Google Cloud mediante Cloud VPN o Cloud Interconnect. Puedes acceder de forma segura a tus recursos locales, como las 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 rango de IP que se usará para implementar la instancia de Cloud Data Fusion en el proyecto de usuario.
- Crear la instancia privada de Cloud Data Fusion
- Configura el intercambio de tráfico entre redes de VPC entre la VPC que contiene la instancia de Cloud Data Fusion y la VPC que contiene el proyecto de usuario asociado.
- Para las redes de VPC compartida, configura los permisos de Identity and Access Management (IAM).
- Si tu instancia privada usa Cloud Data Fusion versión 6.2.0 o anterior, crea una regla de firewall.
- Permite que diferentes servicios de Google Cloud se comuniquen internamente entre sí mediante la habilitación del Acceso privado a Google en la subred de Dataproc.
Antes de comenzar
- Para obtener información sobre la arquitectura de implementación de Cloud Data Fusion, consulta Herramientas de redes.
Configura la red de VPC
Si aún no lo hiciste, crea una red de VPC o una red de VPC compartida.
Para configurar tu red de VPC, debes asignar un rango de direcciones IP.
Asigna un rango de IP
Red de VPC
Si no usas una red de VPC compartida, Cloud Data Fusion asigna un rango de IP de forma predeterminada cuando creas una instancia.
Red compartida de VPC
Para usar una VPC compartida, debes asignar un rango de IP a tu instancia de Cloud Data Fusion.
Para asignar un rango de IP a tu instancia de Cloud Data Fusion, sigue estos pasos:
En la consola de Google Cloud, ve a la página Redes de VPC.
En la columna Nombre, haz clic en la red de VPC en la que quieres crear una instancia privada de Cloud Data Fusion.
Se abrirá la página Detalles de la red de VPC.
Haz clic en Conexión de servicio privada. Si se te solicita, haz clic en Habilitar API para habilitar la API de Service Networking.
Haz clic en Asigna rangos de IP.
Asigna un nombre a tu rango de IP.
En Rango de IP, haz clic en Automático.
Especifica un tamaño de prefijo de
22
.Haz clic en Allocate.
Crea una instancia privada
Crea la instancia privada de Cloud Data Fusion en una red de VPC o VPC compartida.
Red de VPC
Para crear la instancia en una red de VPC, usa la consola de Google Cloud o cURL.
Si usas la consola de Google Cloud para crear tu instancia privada, Cloud Data Fusion asigna el rango de direcciones IP /22
de forma predeterminada. Para elegir un rango de IP diferente, debes usar el comando cURL.
Console
Ve a la página Crear instancia de Data Fusion.
Ingresa un nombre y una descripción para tu instancia.
Selecciona la Región en la que deseas crear la instancia.
Selecciona una versión y edición de Cloud Data Fusion.
Especifica la cuenta de servicio de Dataproc que se usará para ejecutar la canalización de Cloud Data Fusion en Dataproc. La cuenta predeterminada de Compute Engine está preseleccionada.
Expande el menú Opciones avanzadas y haz clic en Habilitar IP privada.
En el campo Red, elige una red en la que crear la instancia.
Haz clic en Crear. El proceso de creación de la instancia toma hasta 30 minutos en completarse.
cURL
Para tu comodidad, puedes 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"}}'
Reemplaza lo siguiente:
INSTANCE_ID
: La string de ID que debería obtener la instancia nueva.NETWORK_NAME
: Es el nombre de la red de VPC en la que deseas crear tu instancia privada.IP_RANGE
: Es el rango de IP que asignaste. Para encontrar el rango de IP en Google Cloud Console, ve a Detalles de la red de VPC > Conexión privada a servicios > Rango de IP internas .
Red compartida de VPC
Para crear la instancia en una red de VPC compartida, usa cURL, no la consola de Google Cloud.
cURL
Para tu comodidad, puedes exportar las siguientes variables. Como alternativa, puedes sustituir estos valores directamente 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"}}'
Reemplaza lo siguiente:
INSTANCE_ID
: La string de ID que debería obtener la instancia nueva.SHARED_VPC_HOST_PROJECT_ID
: Es el ID del proyecto que aloja la red de VPC compartida.NETWORK_NAME
: Es el nombre de la red de VPC en la que deseas crear la instancia privada.IP_RANGE
: Es el rango de IP que asignaste. Para encontrar el rango de IP en Google Cloud Console, ve a la página Detalles de la red de VPC > Conexión privada a servicios > Rango de IP internas.
Configura el intercambio de tráfico entre redes de VPC
Los servicios de Cloud Data Fusion que usas en tu entorno de diseño (por ejemplo: Wrangler, Connection Manager y la validación de esquemas) inician conexiones de red desde la VPC del proyecto de usuario a los sistemas de origen. Cloud Data Fusion usa el intercambio de tráfico entre redes de VPC para establecer la conectividad de red a la VPC o a la VPC compartida que contiene tu instancia. El intercambio de tráfico entre redes de VPC permite que Cloud Data Fusion acceda a los recursos de la red a través de direcciones IP internas con tu propia VPC y sus controles. Si quieres conectarte con un recurso en otra red, consulta los pasos para los casos de uso de conexión.
En la siguiente sección, se describe cómo crear una configuración de intercambio de tráfico entre tu red y la red del proyecto de usuario de Cloud Data Fusion.
Obtén el ID del proyecto de usuario
Para crear una configuración de intercambio de tráfico, necesitas el ID del proyecto de usuario.
Ve a la página de Instancias de Cloud Data Fusion.
En la columna Nombre de la instancia, selecciona la instancia.
En la página Detalles de la instancia, copia el ID del proyecto de usuario, que se requiere cuando creas una conexión de intercambio de tráfico en los siguientes pasos.
Crear conexión de intercambio de tráfico
Ve a la página Intercambio de tráfico entre redes de VPC.
Haz clic en Crear conexión > Continuar.
En la página Crear conexión de intercambio de tráfico que se abre, haz lo siguiente:
- Ingresa un Nombre para la conexión de intercambio de tráfico.
- En Tu red de VPC, selecciona la red que contiene tu instancia de Cloud Data Fusion.
- En Red de VPC con intercambio de tráfico, selecciona En otro proyecto.
- En ID del proyecto, ingresa el ID del proyecto de usuario que encontraste antes en este instructivo.
En Nombre de la red de VPC, selecciona una red o ingresa INSTANCE_REGION-INSTANCE_ID.
Reemplaza lo siguiente:
- INSTANCE_REGION: Es la región en la que creaste la instancia de Cloud Data Fusion.
- INSTANCE_ID: Es el ID de tu instancia de Cloud Data Fusion.
Selecciona la versión de Protocolo de Internet para la conexión de intercambio de tráfico a fin de intercambiar rutas IPv4 e IPv6 entre tu red de VPC y la red de VPC con intercambio de tráfico. Para obtener más información, consulta Intercambio de tráfico entre redes de VPC.
Selecciona Exportar rutas personalizadas para que las rutas personalizadas se puedan exportar de tu red de VPC a la red de VPC del usuario.
Elige si quieres permitir la importación o exportación de rutas de subredes con IPv4 públicas a tu red de VPC.
Haz clic en Crear.
El intercambio de tráfico entre redes de VPC se activa poco después de su creación.
Configura los permisos de IAM
Red de VPC
Omite este paso y ve a Crear una regla de firewall.
Red compartida de VPC
Si creas tu instancia de Cloud Data Fusion en una red de VPC compartida, debes otorgar la función de usuario de la red de Compute a las siguientes cuentas de servicio. Para otorgar permisos a todas las subredes, otorga el rol al proyecto host de la VPC compartida.
Para controlar aún más el acceso, otorga la función a una subred específica y la función Visualizador de red en el 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 proyecto de Google Cloud que contiene tu instancia de Cloud Data Fusion.
Para obtener más información, consulta Cómo otorgar acceso a las cuentas de servicio necesarias.
Crea una regla de firewall
Crea una regla de firewall en tu red de VPC que permita las conexiones SSH entrantes desde el rango de IP que especificaste cuando creaste 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 los clústeres de Cloud Data Fusion y Dataproc que ejecutan canalizaciones.
Para crear la regla de firewall, puedes usar la consola de Google Cloud o usar la CLI de gcloud.
Console
Consulta Crea reglas de firewall.
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
Reemplaza lo siguiente:
FIREWALL_NAME
: El nombre de la regla de firewall que se creará.IP_RANGE
: Es el rango de IP que asignaste.NETWORK_NAME
: Es el nombre de la red a la que se conecta la regla de firewall. Es el nombre de la red de VPC en la que creaste la instancia privada.PROJECT_ID
: Es el ID del proyecto que aloja la red de VPC.
Pasos para los casos de uso de conexión
En las siguientes secciones, se describen los casos de uso relacionados con la conexión para instancias privadas.
Habilita el Acceso privado a 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 las canalizaciones de datos en una subred que tenga Acceso privado a Google. Debes habilitar el Acceso privado a Google para la subred que contiene los clústeres de Dataproc.
- Si solo hay una subred presente 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 seleccionar la subred con el Acceso privado a Google y poder iniciar clústeres de Dataproc.
Para habilitar el Acceso privado a Google en la subred, consulta Configuración del Acceso privado a Google.
Conéctate a otras fuentes (opcional)
Después de crear una instancia privada en Cloud Data Fusion, puedes conectarte a otras fuentes, como los siguientes casos prácticos:
- Bases de datos y sistemas locales que se ejecutan en otras redes de VPC
- Otros servicios de Google Cloud que se ejecutan en su propia red en modo privado, como Cloud SQL
- Fuentes de la Internet pública
Habilita el intercambio de tráfico de DNS (opcional)
Habilita el intercambio de tráfico de DNS en los siguientes casos:
- Cuando Cloud Data Fusion se conecta a sistemas a través de nombres de host, en lugar de direcciones IP
- Cuando el sistema de destino se implementa detrás de un balanceador de cargas, como en algunas implementaciones de SAP
¿Qué sigue?
- Obtén más información sobre los conceptos de seguridad en Cloud Data Fusion.
- Obtén más información sobre cómo conectarse a recursos en redes externas.
- Obtén más información sobre otros conceptos y características de Cloud Data Fusion.
- Consulta los pricing de Cloud Data Fusion.