Emparelhamento de VPC
O emparelhamento VPC permite que os clusters do Databricks se conectem a outras infraestruturas do AWS (RDS, Redshift, Kafka, Cassandra etc.) usando endereços IP privados na rede interna do AWS.
A VPC que hospeda a outra infraestrutura deve ter um intervalo CIDR distinta da VPC do Databricks e de qualquer outra intervalo CIDR incluída como destino na tabela de roteamento principal da VPC do Databricks.Se você tiver algum problema, entre em contato com o suporte do Databricks para saber mais sobre como mover sua VPC do Databricks para um novo intervalo CIDR de sua escolha. Você pode visualizar isso pesquisando a VPC do Databricks no Console AWS, clicando na tabela de rotas principal associada a ela e examinando a guia Tabelas de rotas . Aqui está um exemplo de uma tabela de rotas principal para uma implementação do Databricks que já está emparelhada com várias outras VPCs:
Para obter informações sobre emparelhamento de VPC, consulte o Guia de emparelhamento de VPC da AWS.
Este guia orienta o senhor por meio de um exemplo de emparelhamento de um AWS Aurora RDS para o seu Databricks VPC usando o Console do AWS. Se o senhor preferir uma solução programática, acesse Programmatic VPC peering para obter um Notebook que executa todas as etapas para o senhor. Finalmente, há uma seção de solução de problemas para problemas e soluções comuns.
Consulte sua equipe de AWS/devops antes de tentar configurar o emparelhamento de VPC. Alguma familiaridade com a AWS, bem como permissões suficientes, garantirão que esse processo ocorra sem problemas. O Notebook pode ajudá-lo a fazer essa transição, mas, dependendo do seu ambiente, é importante fazer as modificações necessárias para garantir que não haja impacto na infraestrutura existente.
Exemplo de console do AWS
O diagrama a seguir ilustra todos os diferentes componentes envolvidos no emparelhamento da implantação do Databricks com outra infraestrutura da AWS. No exemplo, o Databricks é implementado em uma conta da AWS e o Aurora RDS é implementado em outra. Uma conexão de emparelhamento é estabelecida para vincular as duas VPCs em ambas as contas da AWS.
À medida que você passa por esse processo em seu próprio Console AWS, é útil manter uma tabela de informações para consultar. Registre o seguinte:
- ID e intervalo CIDR da VPC do Databricks.
- ID e intervalo CIDR de sua outra infraestrutura (Aurora RDS).
- ID da tabela de rotas principal da VPC do Databricks.
Serviço da AWS | Nome | ID | Intervalo CIDR |
---|---|---|---|
VPC | Databricks VPC | vpc-dbcb3fbc | 10.126.0.0/16 |
VPC | VPC do Aurora RDS | vpc-7b52471c | 172.78.0.0/16 |
Tabela de rotas | Tabela de rotas principal do Databricks | rtb-3775c750 |
Etapa 1: criar uma conexão de emparelhamento
-
Navegue até o Painel do VPC .
-
Selecione Conexões de emparelhamento .
-
Clique em Criar conexão de emparelhamento
-
Defina o solicitante do VPC como o ID do VPC do Databricks.
-
Defina o aceitador do VPC como o ID de VPC do Aurora.
-
Clique em Criar conexão de emparelhamento .
Etapa 2: registre o ID da conexão de emparelhamento
Serviço da AWS | Nome | ID | Intervalo CIDR |
---|---|---|---|
VPC | Databricks VPC | vpc-dbcb3fbc | 10.126.0.0/16 |
VPC | VPC do Aurora RDS | vpc-7b52471c | 172.78.0.0/16 |
Tabela de rotas | Tabela de rotas principal do Databricks | rtb-3775c750 | |
Conexão de peering | Databricks VPC <> Aurora VPC | pcx-4d148024 |
Etapa 3: aceitar a solicitação de conexão de emparelhamento
O VPC com o Aurora RDS precisará que seu proprietário aprove a solicitação. O status da conexão do emparelhamento indica Aceitação Pendente até que isso seja feito.
Selecione Ações > Aceitar solicitação .
Etapa 4: adicionar resolução de DNS à conexão de emparelhamento
- Faça login na conta da AWS que hospeda a VPC do Databricks.
- Navegue até o Painel do VPC .
- Selecione Conexões de emparelhamento .
- No menu Ações, selecione Editar configurações de DNS .
- Clique para ativar a resolução de DNS .
- logs na conta da AWS que hospeda o Aurora VPC e repita as etapas 2 a 4.
Etapa 5: adicionar destino à tabela de rotas principal do Databricks VPC
-
Selecione Tabelas de rotas no painel do VPC.
-
Procure o ID do VPC do Databricks.
-
Clique no botão Editar na guia Rotas .
-
Clique em Adicionar outra rota .
-
Insira o intervalo CIDR do Aurora VPC para Destino .
-
Digite a ID da conexão de emparelhamento para o Alvo .
Etapa 6: adicionar destino à tabela de rotas principal do Aurora VPC
-
Selecione Tabelas de rotas no painel do VPC.
-
Pesquise o ID do Aurora VPC.
-
Clique no botão Editar na guia Rotas .
-
Clique em Adicionar outra rota .
-
Insira o intervalo CIDR da VPC do Databricks para o destino.
-
Digite a ID da conexão de emparelhamento para o Alvo .
Etapa 7: Localizar o grupo de segurança não gerenciado do Databricks
- Selecione Grupos de segurança no painel do VPC.
- Pesquise o ID do VPC do Databricks.
- Encontre e registre o ID do grupo de segurança com Não gerenciado no nome. Não selecione o grupo de segurança gerenciado.
Serviço da AWS | Nome | ID | Intervalo CIDR |
---|---|---|---|
VPC | Databricks VPC | vpc-dbcb3fbc | 10.126.0.0/16 |
VPC | VPC do Aurora RDS | vpc-7b52471c | 172.78.0.0/16 |
Tabela de rotas | Tabela de rotas principal do Databricks | rtb-3775c750 | |
Conexão de peering | Databricks VPC <> Aurora VPC | pcx-4d148024 | |
Grupo de segurança | Grupo não gerenciado do Databricks | sg-96016bef |
Etapa 8: Adicionar regra ao grupo de segurança não gerenciado
-
Selecione Grupos de segurança no painel do VPC.
-
Procure o ID do Aurora VPC.
-
Adicione uma regra de entrada clicando em Editar e depois em Adicionar outra regra .
-
Selecione Regra TCP personalizada ou o serviço relacionado ao seu RDS.
-
Defina o intervalo de portas para corresponder ao seu serviço RDS. O padrão para Aurora [MySQL] é 3306.
-
Defina a Origem do ID do grupo de segurança do Databricks não gerenciados .
Etapa 9: testar a conectividade
-
Criar um cluster do Databricks.
-
Verifique se você pode se conectar ao banco de dados com o seguinte comando
netcat
:Bash%sh nc -zv <hostname> <port>
Emparelhamento programático de VPC
Esse notebook oferece suporte a dois cenários:
- Estabelecendo emparelhamento de VPC entre Databricks VPC e outro VPC na mesma conta AWS
- Estabelecendo emparelhamento de VPC entre Databricks VPC e outro VPC em uma conta AWS diferente
Notebook de peering de VPC
Solução de problemas
Não é possível estabelecer conectividade com o netcat
Se você não conseguir estabelecer conectividade com netcat
, verifique se o nome do host está sendo resolvido via DNS usando o comando host
do Linux. Se o hostname não for resolvido, verifique se você habilitou a resolução DNS na sua conexão de emparelhamento.
%sh host -t a <hostname>
Não é possível estabelecer conectividade com o hostname ou o endereço IP
Se você não conseguir estabelecer conectividade com hostname ou com o endereço IP, verifique se o VPC do seu Aurora RDS tem 3 sub-redes associadas à tabela de rotas principal.
-
Selecione Sub-redes no Painel da VPC e procure a ID da VPC do Aurora. Deve haver uma sub-rede para cada zona de disponibilidade.
-
Certifique-se de que cada uma dessas sub-redes esteja associada à tabela de rotas principal.
-
Selecione Tabelas de rotas no painel da VPC e pesquise a tabela de rotas principal associada ao Aurora RDS.
-
Clique na guia Associações de sub-rede e em Editar . Você deverá ver todas as três sub-redes na lista, mas nenhuma delas deverá ter Associado selecionado.
-
O DNS não está funcionando
Verifique no Route 53 e confirme se o Databricks VPC está associado às zonas privadas hospedadas usadas em seu VPC.