Como faço para solucionar falhas de conectividade de endpoints do AWS DMS?

9 minuto de leitura
0

Não consigo me conectar aos meus endpoints do AWS Database Migration Service (AWS DMS). Por que minha conexão de teste está falhando e como posso solucionar esses problemas de conectividade?

Breve descrição

Existem dois tipos de erros normalmente observados ao testar a conexão da instância de replicação com o endpoint de origem ou destino:

1.    Se o erro ocorreu devido a um problema de conectividade entre a instância de replicação e a origem ou o destino, você receberá erros semelhantes aos seguintes:

  • "Application-Status: 1020912, Application-Message: Failed to connect Network error has occurred, Application-Detailed-Message: RetCode: SQL_ERROR SqlState: HYT00 NativeError: 0 Message: [unixODBC][Microsoft][ODBC Driver 13 for SQL Server]Login timeout expired ODBC general error."
  • "Application-Status: 1020912, Application-Message: Cannot connect to ODBC provider Network error has occurred, Application-Detailed-Message: RetCode: SQL_ERROR SqlState: 08001 NativeError: 101 Message: [unixODBC]timeout expired ODBC general error."
  • "Application-Status: 1020912, Application-Message: Cannot connect to ODBC provider ODBC general error., Application-Detailed-Message: RetCode: SQL_ERROR SqlState: HY000 NativeError: 2005 Message: [unixODBC][MySQL][ODBC 5.3(w) Driver]Unknown MySQL server host 'mysql1.xxxxx.us-east-1.rds.amazonaws.com' (22) ODBC general error."

2.    Se o erro ocorreu devido a um erro de banco de dados nativo, como erros de permissão ou autenticação do banco de dados, você receberá erros semelhantes ao seguinte:

  • "Application-Status: 1020912, Application-Message: Cannot connect to ODBC provider Network error has occurred, Application-Detailed-Message: RetCode: SQL_ERROR SqlState: 08001 NativeError: 101 Message: [unixODBC]FATAL: password authentication failed for user "dmsuser" ODBC general error."

Com base no tipo de erro recebido e na configuração da sua rede, consulte a seção de resolução apropriada.

Observação: é uma prática recomendada testar a conectividade da instância de replicação do AWS DMS com os endpoints depois de criar os endpoints de origem e destino do AWS DMS. Faça isso antes de iniciar a tarefa de migração do AWS DMS. Caso contrário, a tarefa poderá falhar devido a problemas de conectividade com o endpoint.

Resolução

Resolver problemas de conectividade de recursos hospedados na AWS

Verifique se a conectividade pode ser estabelecida entre o banco de dados de origem ou destino e a instância de replicação. Dependendo do seu caso de uso e da infraestrutura de rede, conecte seu banco de dados de origem ou destino a uma instância de replicação em uma sub-rede pública ou sub-rede privada. Para obter mais informações, consulte Configurar uma rede para uma instância de replicação.

Observação: as versões 3.4.7 e posteriores do AWS DMS exigem que você configure o AWS DMS para usar endpoints da VPC ou usar rotas públicas para todos os seus endpoints de origem e destino que interagem com determinados Amazon Web Services. Se seus testes de endpoints do DMS obtiverem êxito em versões anteriores, mas falharem em versões posteriores, consulte Configuraçãod e endpoints de VPC como endpoints de origem e de destino do AWS DMS.

Verificar a configuração da sua instância de replicação

Em sua instância de replicação, confirme se sua configuração inclui o seguinte:

  • Uma regra de saída para o endereço IP com a porta do banco de dados de origem ou destino no grupo de segurança. Por padrão, a regra de saída de um grupo de segurança permite todo o tráfego. Os grupos de segurança têm estado, portanto, você não precisa modificar a regra de entrada padrão.
  • Uma regra de saída para o endereço IP com a porta do banco de dados de origem ou destino na ACL de rede. Por padrão, a regra de saída da lista de controle de acesso à rede (ACL) permite todo o tráfego
  • Uma regra de entrada para o endereço IP com as portas efêmeras do banco de dados de origem ou destino na ACL de rede. Por padrão, a regra de entrada de uma ACL de rede permite todo o tráfego.

Verificar a configuração do banco de dados de origem ou destino

No banco de dados de origem ou destino, confirme se a configuração inclui o seguinte:

  • Uma regra de entrada para o endereço IP da instância de replicação ou o CIDR do grupo de sub-redes da instância de replicação com a porta do banco de dados de origem ou destino no grupo de segurança. Os grupos de segurança têm estado, portanto, você não precisa modificar a regra de saída padrão.
    Observação: para encontrar os endereços IP e os CIDRs, consulte a seção Determine os endereços IP e o CIDR de um grupo de sub-redes.
  • Uma regra de entrada para o endereço IP da instância de replicação ou o CIDR do grupo de sub-redes da instância de replicação com a porta do banco de dados de origem ou destino na ACL de rede. Confirme se não há uma regra de negação explícita para o endereço IP e porta autorizados.
  • Uma regra de saída para o endereço IP ou o CIDR do grupo de sub-redes da instância de replicação com portas efêmeras na ACL de rede. Por padrão, a regra de saída de uma ACL de rede permite todo o tráfego.
  • Como prática recomendada, configure a rede para permitir o CIDR do grupo de sub-redes da instância de replicação. O endereço IP da instância de replicação muda durante um evento de failover ou substituição do host.

Determinar os endereços IP e o CIDR de um grupo de sub-redes

Use o console do AWS DMS ou a CLI para determinar os endereços IP e o CIDR do grupo de sub-redes para configurar regras de entrada e saída.

Utilização do console da AWS:

  1. Acesse o console do AWS DMS.
  2. No painel de navegação, selecione Instâncias de replicação.
  3. Selecione o nome da sua instância de replicação.
  4. Em Detalhes, anote o endereço IP público, o endereço IP privado e o grupo de sub-redes de replicação da sua instância de replicação.
  5. Em Grupo de sub-redes de replicação, selecione o link para acessar a página do grupo de sub-redes. Anote o nome de cada sub-rede do grupo de sub-redes.
  6. Para verificar o CIDR de cada sub-rede, acesse o console da Amazon Virtual Private Cloud (Amazon VPC).
  7. Na guia Sub-redes, pesquise as sub-redes anotadas na etapa 5. Para cada sub-rede, anote o CIDR.

Utilização da AWS CLI:

Execute o comando describe-subnets para determinar o CIDR de cada sub-rede. Em replication-instance-name, insira o nome da sua instância de replicação.

aws ec2 describe-subnets --filters Name=subnet-id,Values="$(aws dms describe-replication-instances --filters "Name=replication-instance-id,Values=replication-instance-name" --query "ReplicationInstances[*].ReplicationSubnetGroup.Subnets[*].SubnetIdentifier" --output text | sed -e 's/\t/,/g')" --query "Subnets[*].{SubnetId:SubnetId,CidrBlock:CidrBlock}" --output table

Execute o comando describe-replication-instances para determinar os endereços IP da instância de replicação. Em replication-instance-name, insira o nome da sua instância de replicação.

aws dms describe-replication-instances --filters "Name=replication-instance-id,Values=replication-instance-name" --query "ReplicationInstances[*].{ReplicationInstancePublicIpAddresses:ReplicationInstancePublicIpAddresses,ReplicationInstancePrivateIpAddresses:ReplicationInstancePrivateIpAddresses}" --output table

Resolva problemas de conectividade (recursos on-premises)

Se o banco de dados de origem ou destino estiver hospedado on-premises, confirme o seguinte:

  • Consulte o administrador da rede para confirmar se o banco de dados permite conexões de entrada da instância de replicação do AWS DMS.
  • Confirme se um firewall não está bloqueando a comunicação com o banco de dados de origem ou destino.
  • Confirme se a configuração do DNS está definida corretamente. Caso precise de resolução de DNS, use o Amazon Route 53 Resolver. Para obter informações sobre como usar um servidor de nomes on-premises para resolver endpoints usando o Amazon Route 53 Resolver, consulte Usar seu próprio servidor de nomes local.
    -ou-
    Crie uma nova instância do DMS por meio da AWS CLI para usar um servidor de nomes de DNS do cliente (--dns-name-servers) para resolver problemas de DNS. Por padrão, as instâncias do DMS usam o DNS fornecido pela Amazon para resoluções. Os endpoints do DMS podem falhar se a origem ou destino estiverem configurados para usar DNS personalizado. Para obter mais informações, consulte create-replication-instance.

Certifique-se de que sua instância do Amazon EC2 tenha as mesmas configurações de rede da instância de replicação do AWS DMS com problemas de conectividade. Execute os comandos a seguir na nova instância do EC2 para solucionar problemas de conectividade de rede:

telnet <database_IP_address_or_DNS> <port_number>
nslookup <domain_name>

Para database_IP_address_or_DNS, use o endereço IP ou nome de domínio do banco de dados especificado para o endpoint de origem ou destino do DMS. Para port_number, use o número da porta do banco de dados especificado para o endpoint de origem ou destino do DMS. Para domain_name, use o nome de domínio do banco de dados especificado para o endpoint de origem ou destino do DMS.

Resolver erros de banco de dados nativo

Para resolver erros de banco de dados nativo, confirme se as seguintes configurações de endpoint estão definidas corretamente:

  • Nome de usuário
  • Senha
  • Definir o ServerName como o DNS ou IP do banco de dados on-premises ou do endpoint do Amazon Relational Database Service (Amazon RDS)
  • Porta
  • Nome do banco de dados
    Observação: não especifique um nome de banco de dados para origem ou destino do MySQL.

Observação: se algum desses campos for especificado com o AWS Secrets Manager, consulte Using secrets to access AWS Database Migration Service endpoints.

Para erros de banco de dados nativo relacionados ao banco de dados de origem ou destino, consulte a resolução da documentação específica do banco de dados. Use o código do erro e a mensagem do erro no console do DMS.

Para obter mais informações, verifique erros, rastreamento, alertas ou outros logs do banco de dados de origem ou destino.

Para erros de acesso ao banco de dados, confirme as permissões exigidas pelo DMS para a origem ou destino específicos.

Para obter mais informações sobre como criptografar conexões para endpoints de origem e destino usando o Secure Sockets Layer (SSL), consulte Usar o SSL com o AWS Database Migration Service.


Informações relacionadas

Como faço para solucionar falhas no teste de conexão de endpoint do Amazon S3 ao usar o AWS DMS?

Como posso solucionar falhas e erros de conectividade de uma tarefa do AWS DMS que usa o Amazon Redshift como endpoint de destino?

Como posso resolver falhas de conectividade entre o AWS DMS e um endpoint de origem do MongoDB?

Migrar um banco de dados Oracle on-premises para o Amazon RDS para PostgreSQL usando um bystander da Oracle e o AWS DMS

Migrar bancos de dados do Microsoft SQL Server para a Nuvem AWS

AWS OFICIAL
AWS OFICIALAtualizada há 2 anos