Configura la conectividad privada para las transferencias de Snowflake
En esta guía, se muestra cómo configurar la conectividad privada para crear transferencias de datos privadas de Snowflake a BigQuery. Las transferencias de datos privadas te permiten transferir datos de una fuente a otra dentro de una red privada y reducir los riesgos de seguridad cuando transfieres datos a través de Internet pública.
En las siguientes secciones, se muestran los pasos necesarios para configurar la conectividad privada antes de que puedas crear una transferencia de Snowflake.
Las transferencias privadas son compatibles con las instancias de Snowflake alojadas en Amazon Web Services (AWS), Microsoft Azure y Google Cloud.
Crea un vínculo privado a Snowflake
Crea un vínculo privado que conecte tu cuenta de Snowflake a tu proveedor de servicios en la nube. Para obtener más información, selecciona una de las siguientes opciones:
AWS
Configura AWS PrivateLink para conectar tu cuenta de Snowflake a tu cuenta de AWS. Tu cuenta de AWS debe contener el bucket de transferencia de Amazon S3 necesario para una transferencia de Snowflake.
Azure
Configura Azure Private Link para conectar tu red virtual (VNet) de Azure a la VNet de Snowflake en Azure. Tu cuenta de Azure debe contener el bucket de transferencia de Blob necesario para una transferencia de Snowflake.
Google Cloud
Configura Google Cloud Private Service Connect para conectar la subred de tu red de nube privada virtual (VPC) a tu cuenta de Snowflake alojada en Google Cloud. TuGoogle Cloud debe tener un bucket de Cloud Storage de etapa de pruebas requerido para una transferencia de Snowflake.
Configura Cross‑Cloud Interconnect o la VPN con alta disponibilidad
Configura Cross‑Cloud Interconnect o la VPN con alta disponibilidad desde AWS o Azure. Este paso no es obligatorio para las cuentas de Snowflake alojadas enGoogle Cloud.
AWS
Una VPN de alta disponibilidad te permite transferir datos a través de un túnel VPN encriptado. Para usar una VPN con alta disponibilidad para tu transferencia privada de Snowflake, consulta Crea conexiones de VPN con alta disponibilidad entre Google Cloud y AWS.
Una conexión de Cross-Cloud Interconnect crea un vínculo privado dedicado entre los proveedores de servicios en la nube y es adecuada para transferencias de datos grandes con requisitos de baja latencia. Para usar Cross‑Cloud Interconnect en tu transferencia privada de Snowflake, consulta Conéctate a AWS.
Azure
Una VPN de alta disponibilidad te permite transferir datos a través de un túnel VPN encriptado. Para usar una VPN con alta disponibilidad para tu transferencia privada de Snowflake, consulta Crea conexiones de VPN con alta disponibilidad entre Google Cloud y Azure.
Una conexión de Cross-Cloud Interconnect crea un vínculo privado dedicado entre los proveedores de servicios en la nube y es adecuada para transferencias de datos grandes con requisitos de baja latencia. Para usar Cross‑Cloud Interconnect en tu transferencia privada de Snowflake, consulta Conéctate a Azure.
Crea una VM de proxy
Para completar una conexión privada, se requiere una VM proxy para completar la conexión entre tus fuentes de datos sin que tus datos lleguen a Internet público. Este paso es obligatorio para las instancias de Snowflake alojadas en AWS, Azure o Google Cloud.
Para crear y configurar una VM proxy para una transferencia privada de Snowflake, haz lo siguiente:
- Crea una o más instancias de VM de Compute Engine dentro de la red de VPC del consumidor.
- Descarga un software de proxy TCP, como HAProxy o Nginx, y configura lo siguiente:
- Especifica un puerto. Por ejemplo,
443. - Reenvía todo el tráfico TCP entrante al nombre de host y al puerto privados en la instancia de Snowflake.
- Especifica un puerto. Por ejemplo,
- Configura las VMs para que resuelvan el nombre de host privado de Snowflake a través del DNS configurado en la red de VPC del consumidor.
- Para configurar un balanceador de cargas de transferencia interno, haz lo siguiente:
Crea un adjunto de servicio
Usa Private Service Connect para crear un adjunto de red y publicar el servicio. Este paso es obligatorio para las instancias de Snowflake alojadas en AWS, Azure o Google Cloud.
Tu adjunto de servicio debe estar en la misma región que tu conjunto de datos de BigQuery.
Si tu servicio usa la aprobación explícita (connection-preference se establece como ACCEPT_MANUAL), la cuenta de servicio que se usa en tu transferencia de datos privada de Snowflake debe tener los siguientes permisos de IAM:
compute.serviceAttachments.getcompute.serviceAttachments.updatecompute.regionOperations.get
Una vez que hayas creado el adjunto de servicio, anota su URI. Necesitarás este URI cuando crees tu configuración de transferencia de Snowflake.
Crear extremo
Crea un extremo en tu cuenta de AWS o Azure. Este paso no es obligatorio para las cuentas de Snowflake alojadas enGoogle Cloud.
AWS
En AWS, crea un extremo de VPC que se conecte a Amazon S3. Para obtener más información, consulta Cómo acceder a un servicio de AWS con un endpoint de VPC de interfaz.
Azure
Configura un extremo privado en la cuenta de almacenamiento en Azure. Para obtener más información, consulta Usa extremos privados para Azure Storage.
El Servicio de transferencia de almacenamiento requiere el extremo *.blob.core.microsoft.net. No se admite el extremo *.dfs.core.microsoft.net.
Una vez creado, anota la dirección IP del extremo. Deberás especificar la dirección IP cuando crees el balanceador de cargas en la siguiente sección.
Crea un balanceador de cargas de red
Configura un balanceador de cargas de red (NLB) de proxy interno regional con conectividad híbrida. Puedes crear el balanceador de cargas para enrutar el tráfico a los extremos de VPC de Amazon S3 o a los extremos privados de Azure Storage que creaste en la sección anterior. Para obtener más información, consulta Configura un balanceador de cargas de red del proxy interno regional con conectividad híbrida.
Registra tu NLB
Después de crear tu NLB de red, regístralo en el Directorio de servicios del Servicio de transferencia de almacenamiento. Para obtener más información, consulta Cómo registrar tu NLB en Service Directory.
Toma nota del vínculo al directorio de servicios. Necesitarás el vínculo propio al servicio cuando crees tu configuración de transferencia de Snowflake.
Crea una configuración de transferencia privada de Snowflake
Crea la transferencia de Snowflake. Cuando configures la transferencia, haz lo siguiente:
Console
- En Use Private Network, selecciona True.
- En Adjunto de servicio de PSC, ingresa el URI del adjunto de servicio. Para obtener información sobre cómo encontrar el URI de la vinculación del servicio, consulta Ve detalles de un servicio publicado.
El URI del adjunto de servicio tiene el formato
projects/PROJECT_ID/regions/REGION/serviceAttachments/SERVICE_ATTACHMENT. - En Private Network Service, ingresa el vínculo propio del servicio de NLB.
Usa el formato
projects/PROJECT_ID/locations/LOCATION/namespaces/NAMESPACE/services/SERVICE_NAME.
bq
- Para el parámetro
use_private_network, estableceTRUE. - Para el parámetro
service_attachment, especifica el URI del adjunto de servicio. Para obtener información sobre cómo encontrar el URI de la vinculación del servicio, consulta Ve detalles de un servicio publicado. El URI del adjunto de servicio tiene el formatoprojects/PROJECT_ID/regions/REGION/serviceAttachments/SERVICE_ATTACHMENT. - Para el parámetro
private_network_service, proporciona el vínculo propio del servicio de NLB. Usa el formatoprojects/PROJECT_ID/locations/LOCATION/namespaces/NAMESPACE/services/SERVICE_NAME.