Configurar a conectividade particular para transferências do Snowflake

Este guia mostra como configurar a conectividade privada para criar transferências de dados particulares do Snowflake para o BigQuery. As transferências de dados particulares permitem transferir dados de uma origem para outra em uma rede particular e diminuir os riscos de segurança ao transferir dados pela Internet pública.

As seções a seguir mostram as etapas necessárias para configurar a conectividade privada antes de criar uma transferência do Snowflake.

As transferências particulares são compatíveis com instâncias do Snowflake hospedadas no Amazon Web Services (AWS), no Microsoft Azure e no Google Cloud.

Crie um link privado que conecte sua conta do Snowflake ao provedor de nuvem. Para mais informações, selecione uma das seguintes opções:

Configurar o Interconexão entre nuvens ou a VPN de alta disponibilidade

Configure o Interconexão entre nuvens ou a VPN de alta disponibilidade na AWS ou no Azure. Essa etapa não é necessária para contas do Snowflake hospedadas peloGoogle Cloud.

AWS

Com uma VPN de alta disponibilidade, é possível transferir dados por um túnel de VPN criptografado. Para usar uma VPN de alta disponibilidade na sua transferência privada do Snowflake, consulte Criar conexões de VPN de alta disponibilidade entre Google Cloud e a AWS.

Uma conexão de Cross-Cloud Interconnect cria um link privado dedicado entre provedores de nuvem e é adequada para grandes transferências de dados com requisitos de baixa latência. Para usar Interconexão entre nuvens na sua transferência privada do Snowflake, consulte Conectar à AWS.

Azure

Com uma VPN de alta disponibilidade, é possível transferir dados por um túnel de VPN criptografado. Para usar uma VPN de alta disponibilidade na sua transferência privada do Snowflake, consulte Criar conexões de VPN de alta disponibilidade entre Google Cloud e o Azure.

Uma conexão de Cross-Cloud Interconnect cria um link privado dedicado entre provedores de nuvem e é adequada para grandes transferências de dados com requisitos de baixa latência. Para usar Interconexão entre nuvens na sua transferência privada do Snowflake consulte Conectar ao Azure.

Criar VM de proxy

Para concluir uma conexão particular, uma VM de proxy é necessária para concluir a conexão entre suas fontes de dados sem que eles cheguem à Internet pública. Essa etapa é necessária para instâncias do Snowflake hospedadas na AWS, no Azure ou no Google Cloud.

Para criar e configurar uma VM proxy para uma transferência privada do Snowflake, faça o seguinte:

  1. Crie uma ou mais instâncias de VM do Compute Engine na rede VPC do consumidor.
  2. Faça o download de um software de proxy TCP, como HAProxy ou Nginx, e configure o seguinte:
    1. Especifique uma porta. Por exemplo, 443
    2. Encaminhe todo o tráfego TCP de entrada para o nome do host e a porta particulares na instância do Snowflake.
  3. Configure as VMs para resolver o nome de host particular do Snowflake pelo DNS configurado na rede VPC do consumidor.
  4. Configure um balanceador de carga de passagem interna fazendo o seguinte:
    1. Agrupe as VMs de proxy em um grupo gerenciado de instâncias (MIG).
    2. Configure um balanceador de carga de rede de passagem interna com back-ends de grupos de instâncias de VM.

Criar anexo de serviço

Use o Private Service Connect para criar um anexo de rede e publicar o serviço. Essa etapa é necessária para instâncias do Snowflake hospedadas na AWS, no Azure ou no Google Cloud.

O anexo de serviço precisa estar na mesma região que o conjunto de dados do BigQuery.

Se o serviço usar aprovação explícita (connection-preference definido como ACCEPT_MANUAL), a conta de serviço usada na transferência de dados particulares do Snowflake precisará ter as seguintes permissões do IAM:

  • compute.serviceAttachments.get
  • compute.serviceAttachments.update
  • compute.regionOperations.get

Depois de criar o anexo de serviço, anote o URI dele. Você vai precisar desse URI ao criar a configuração de transferência do Snowflake.

Criar endpoint

Crie um endpoint na sua conta da AWS ou do Azure. Essa etapa não é necessária para contas do Snowflake hospedadas peloGoogle Cloud.

AWS

Na AWS, crie um endpoint da VPC que se conecte ao Amazon S3. Para mais informações, consulte Acessar um serviço da AWS usando um endpoint de VPC de interface.

Azure

Configure um endpoint particular na conta de armazenamento no Azure. Para mais informações, consulte Usar endpoints particulares para o Azure Storage.

O Serviço de transferência do Cloud Storage exige o endpoint *.blob.core.microsoft.net. O endpoint *.dfs.core.microsoft.net não é compatível.

Depois de criado, anote o endereço IP do endpoint. Você precisará especificar o endereço IP ao criar o balanceador de carga na seção a seguir.

Crie um balanceador de carga de rede

Configure um balanceador de carga de rede (NLB) de proxy interno regional com conectividade híbrida. É possível criar o balanceador de carga para rotear o tráfego para os endpoints da VPC do Amazon S3 ou os endpoints particulares do Azure Storage criados na seção anterior. Para mais informações, consulte Configurar um balanceador de carga de rede de proxy interno regional com conectividade híbrida.

Registrar seu NLB

Depois de criar o NLB de rede, registre-o no Diretório de serviços no Serviço de transferência do Cloud Storage. Para mais informações, consulte Registrar seu NLB no Diretório de serviços.

Anote o link para o diretório de serviços. Você vai precisar do autolink para o serviço ao criar a configuração de transferência do Snowflake.

Criar uma configuração de transferência privada do Snowflake

Crie a transferência do Snowflake. Ao configurar a configuração de transferência, faça o seguinte:

Console

  • Em Usar rede particular, selecione Verdadeiro.
  • Em Anexo do serviço do PSC, insira o URI do anexo de serviço. Para informações sobre como encontrar o URI do anexo de serviço, consulte Ver detalhes de um serviço publicado. O URI do anexo de serviço está no formato projects/PROJECT_ID/regions/REGION/serviceAttachments/SERVICE_ATTACHMENT.
  • Para o Private Network Service, insira o self-link do serviço NLB. Ele usa o formato projects/PROJECT_ID/locations/LOCATION/namespaces/NAMESPACE/services/SERVICE_NAME.

bq

  • Para o parâmetro use_private_network, defina como TRUE.
  • Para o parâmetro service_attachment, especifique o URI do anexo de serviço. Para informações sobre como encontrar o URI do anexo de serviço, consulte Ver detalhes de um serviço publicado. O URI do anexo de serviço está no formato projects/PROJECT_ID/regions/REGION/serviceAttachments/SERVICE_ATTACHMENT.
  • Para o parâmetro private_network_service, forneça o autovínculo do serviço NLB. Ele usa o formato projects/PROJECT_ID/locations/LOCATION/namespaces/NAMESPACE/services/SERVICE_NAME.