Compartilhar via


Solucionar problemas de conexão ao Azure Cosmos DB for PostgreSQL

APLICA-SE AO: Azure Cosmos DB for PostgreSQL (da plataforma da extensão de dados Citus para PostgreSQL)

Problemas de conexão podem ter várias causas, como:

  • Configurações de firewall
  • Tempo limite da conexão
  • Informações de entrada incorretas
  • Limite de conexão atingido para o cluster
  • Problemas com a infraestrutura do serviço
  • Manutenção de serviço
  • O nó do coordenador que faz failover para um novo hardware

Normalmente, problemas de conexão com o Azure Cosmos DB for PostgreSQL podem ser classificados da seguinte forma:

  • Erros transitórios (de curta duração ou intermitentes)
  • Erros persistentes ou não transitórios (erros regularmente recorrentes)

Solucionar problemas de erros transitórios

Erros transitórios ocorrem por vários motivos. Os mais comuns incluem manutenção do sistema, erro com hardware ou software e atualizações de vCore do nó coordenador.

Habilitar a alta disponibilidade para nós de cluster pode mitigar esses tipos de problemas automaticamente. No entanto, seu aplicativo ainda deve estar preparado para perder a conexão brevemente. Além disso, outros eventos podem levar mais tempo para serem mitigados, como quando uma transação grande causa uma recuperação de execução longa.

Etapas para resolver problemas de conectividade temporários

  1. Confira o Painel de Serviços do Microsoft Azure quanto a quaisquer interrupções conhecidas que tenham ocorrido durante o tempo em que o aplicativo estava relatando erros.
  2. Os aplicativos que se conectam a um serviço de nuvem, como o Azure Cosmos DB for PostgreSQL, devem esperar erros transitórios e reagir normalmente. Por exemplo, os aplicativos devem implementar a lógica de repetição para tratar esses erros em vez de identifica-los como erros de aplicativo para os usuários.
  3. Conforme um cluster se aproxima dos limites de recursos, os erros podem parecer um problema de conectividade transitório. Aumentar a RAM do nó ou adicionar nós de trabalho e reequilibrar dados pode ajudar.
  4. Se os problemas de conectividade continuarem, ou durarem mais de 60 segundos, ou ocorrerem mais de uma vez por dia, preencha uma solicitação de suporte do Azure selecionando Obter suporte no site de Suporte do Azure.

Solucionar erros persistentes

Se o aplicativo falhar de forma persistente ao se conectar com o Azure Cosmos DB for PostgreSQL, as causas mais comuns serão configuração incorreta do firewall ou erro do usuário.

  • Configuração do firewall do nó coordenador: certifique-se de que o firewall do servidor esteja configurado para permitir conexões do cliente, incluindo servidores proxy e gateways.
  • Configuração do firewall do cliente: o firewall do cliente deve permitir conexões com o servidor de banco de dados. Alguns firewalls exigem permissão não apenas para aplicativos por nome, mas permissão para endereços IP e portas do servidor.
  • Erro do usuário: verifique novamente a cadeia de conexão. Você pode ter digitado incorretamente parâmetros como o nome do servidor. Você pode encontrar cadeias de conexão para diversas estruturas de linguagem e psql no portal do Azure. Vá para a página Cadeias de conexão no cluster. Além disso, tenha em mente que os clusters têm apenas um banco de dados, e seu nome predefinido é citus.

Etapas para resolver os problemas de conectividade temporários

  1. Configure as regras de firewall para permitir o endereço IP do cliente. Para fins de testes temporários, configure uma regra de firewall usando 0.0.0.0 como o endereço IP inicial e usando 255.255.255.255 como o endereço IP final. Essa regra abre o servidor para todos os endereços IP. Se a regra resolver seu problema de conectividade, remova-a e crie uma regra de firewall para um endereço IP limitado ou intervalo de endereços apropriados.
  2. Em todos os firewalls entre o cliente e a Internet, verifique se a porta 5432 está aberta para conexões de saída (e a porta 6432, se usar pool de conexões).
  3. Verifique a cadeia de conexão e outras configurações de conexão.
  4. Verifique a integridade do serviço no painel.

Próximas etapas