Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
Por que minha conexão de teste do AWS Glue falha?
Quero solucionar uma falha de conexão de teste no AWS Glue.
Resolução
Observação: Se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de erros da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
Para solucionar problemas em sua conexão de teste com falha no AWS Glue, verifique suas conexões de rede e autenticação.
Problemas de rede
Verifique a conectividade com os armazenamentos de dados JDBC
O AWS Glue cria interfaces de rede elásticas com endereços IP privados na sub-rede da conexão. Os dados armazenados fora da Amazon Virtual Private Cloud (Amazon VPC) exigem que a tabela de rotas da sub-rede inclua um gateway NAT em uma sub-rede pública. Caso contrário, a conexão expirará.
Observação: os dados armazenados fora do Amazon VPC são um armazenamento de dados on-premises ou um recurso do Amazon Relational Database Service (Amazon RDS) com um nome de host público.
Verifique se os grupos de segurança da conexão e a lista de controle de acesso à rede (ACL de rede) permitem o tráfego para os dados na VPC. Em seguida, use o runbook AWSSupport-TroubleshootGlueConnection no AWS Systems Manager. Para mais informações, consulte Como solucionar erros com a conexão do AWS Glue que tem uma fonte JDBC?
Se a conexão exigir um gateway NAT ou acesso ao AWS Secrets Manager e ao AWS Security Token Service (AWS STS), anexe os endpoints. Para obter mais informações, consulte Conexão com dados.
Verifique os grupos de segurança da conexão
Um dos grupos de segurança associados à conexão deve ter uma regra de entrada autorreferenciada aberta a todas as portas TCP. Um dos grupos de segurança deve estar aberto a todo o tráfego de saída. É possível usar uma regra de autorreferência para restringir o tráfego de saída para a VPC. Para mais informações, consulte Configurar o Amazon VPC para conexões JDBC com armazenamentos de dados do Amazon RDS a partir do AWS Glue.
Verifique o número de endereços IP gratuito
O número de endereços IP livres na sub-rede deve ser maior do que o número de processamentos especificados para a tarefa. Isso permite que o AWS Glue crie interfaces de rede elásticas na sub-rede especificada.
Verifique se a sub-rede pode acessar o Amazon S3
Forneça um endpoint do Amazon Simple Storage Service (Amazon S3) ou uma rota para um gateway NAT na tabela de rotas da sub-rede. Para mais informações, consulte Error: Could not find S3 endpoint or NAT Gateway for subnetId in VPC.
Verifique se você tem um endpoint da VPC do AWS KMS
Para criptografar conexões do Catálogo de Dados do AWS Glue, certifique-se de ter uma rota para o AWS Key Management Service (AWS KMS). Por exemplo, essa rota pode ser um endpoint da interface VPC do AWS KMS. Para mais informações, consulte Conectando-se ao AWS KMS por meio de um endpoint da VPC.
Verifique se a conexão do AWS Glue e o banco de dados usam VPCs diferentes
Sua conexão de teste falha com um erro de tempo limite quando as seguintes condições são verdadeiras:
- O banco de dados não está acessível ao público.
- Você anexou o trabalho do AWS Glue a uma conexão que usa uma VPC diferente sem emparelhamento da VPC.
Para resolver uma falha na conexão de teste, crie uma VPC do AWS Glue dedicada e configure o emparelhamento da VPC associado com as outras VPCs.
Verifique a conectividade com o armazenamento de dados on-premises
Para verificar a conexão do AWS Glue com um banco de dados on-premises que se conecta a uma instância do Amazon Elastic Compute Cloud (Amazon EC2), execute os seguintes comandos:
$ telnet hostname port $ nc -zv hostname port $ dig hostname $ traceroute -AnT -p IP port
Verifique sua VPN e suas configurações de VPC, sub-rede, grupo de segurança e ACLs de rede. Certifique-se de que as configurações não bloqueiem a conectividade da VPC com seu banco de dados on-premises nem criem problemas de firewall a partir do banco de dados on-premises. Para obter mais informações, consulte Como acessar e analisar armazenamentos de dados on-premises usando o AWS Glue.
Problemas de autenticação
Escolha o perfil do IAM correto
O perfil do AWS Identity and Access Management (AWS IAM) que você seleciona para a conexão de teste deve ter uma relação de confiança com o AWS Glue. Escolha um perfil vinculado ao serviço que tenha a política AWSGlueServiceRole vinculada a ela para criar uma relação de confiança.
Verifique o perfil do IAM da conexão
Se a senha da conexão for criptografada com o AWS KMS, confirme se o perfil do IAM da conexão permite a ação kms:Decrypt para a chave. Para mais informações, consulte Configurar a criptografia no AWS Glue.
Verifique os logs de conexão
Verifique se há logs para mensagens de erro. É possível encontrar logs de conexões de teste no Amazon CloudWatch Logs em /aws-glue/testconnection/output.
Verifique as configurações de SSL
Se o armazenamento de dados exigir conectividade SSL para o usuário especificado, selecione Exigir conexão SSL ao criar a conexão no console. Selecione essa opção somente se o armazenamento de dados oferecer suporte a SSL.
Verifique o nome de usuário e a senha do JDBC
Os usuários devem ter permissões de acesso suficientes para acessar o armazenamento de dados de Java Database Connectivity (JDBC). Por exemplo, os crawlers do AWS Glue exigem permissões SELECT. Um trabalho que grava em um armazenamento de dados exige as permissões INSERT, UPDATE e DELETE.
Verifique a sintaxe do URL do JDBC
Os requisitos de sintaxe variam de acordo com o mecanismo de banco de dados. Para obter mais informações, consulte as propriedades de conexão JDBC do AWS Glue e revise os exemplos em URL do JDBC.
Dicas adicionais
Verifique o tipo de conexão
Certifique-se de escolher o tipo de conexão correto. Quando você escolhe o Amazon RDS ou o Amazon Redshift como Tipo de conexão, o AWS Glue preenche automaticamente a VPC, a sub-rede e o grupo de segurança.
O atributo de conexão de teste só funciona para as versões 5.x do MySQL. O driver JDBC incorporado do AWS Glue não é compatível com a versão 8 do MySQL. Se você testar a conexão em uma versão do MySQL mais recente que a versão 5.x, poderá receber um erro de tempo limite de conexão. Use sua conexão do AWS Glue para se conectar ao MySQL versão 8. Forneça o driver compatível Java Archive (JAR) para MySQL versão 8 e mais recente para usar a conexão em uma tarefa de extração, carregamento e transformação (ETL). Em seguida, carregue o arquivo JAR na tarefa. Para mais informações, consulte Tipos de conexão e opções de ETL no AWS Glue para Apache Spark.
Verifique se o DNS não está causando os problemas
Para verificar se o DNS não está causando os problemas, use o endereço IP público ou privado do armazenamento de dados como o URL do JDBC para a conexão do AWS Glue. Limpe o campo Exigir conexão SSL porque um nome de domínio não é mais usado.
Verifique se o driver é incompatível
Forneça o driver correto como um arquivo JAR extra nas propriedades da tarefa, junto com o nome da conexão que falhou. Quando você especifica o nome da conexão como uma propriedade de trabalho, o AWS Glue usa as configurações de rede da conexão, como a VPC e as sub-redes. Crie o DataFrame do Spark com o arquivo JAR nas propriedades da tarefa para substituir os drivers padrão do armazenamento de dados do AWS Glue.
Também é possível converter o DataFrame em um DynamicFrame do AWS Glue. Para mais informações, consulte fromDF.
Verifique se o armazenamento de dados do JDBC está acessível ao público
Use o MySQL Workbench e o URL do JDBC para se conectar ao armazenamento de dados. Ou execute uma instância do Amazon EC2 que tenha acesso SSH à mesma sub-rede e grupos de segurança usados para a conexão. Em seguida, use o SSH para se conectar à instância e execute o seguinte comando para testar a conectividade:
dig hostname$ nc -zv hostname port
Informações relacionadas

Conteúdo relevante
- feita há um ano
- feita há 5 meses
- feita há 3 meses
- Resposta aceitafeita há 3 meses