Delen via


Verbindingsproblemen met Azure Cosmos DB for PostgreSQL oplossen

VAN TOEPASSING OP: Azure Cosmos DB for PostgreSQL (mogelijk gemaakt door de Citus-database-extensie naar PostgreSQL)

Verbindingsproblemen kunnen worden veroorzaakt door verschillende dingen, zoals:

  • Firewallinstellingen
  • Time-out voor verbinding
  • Onjuiste aanmeldingsgegevens
  • Verbindingslimiet bereikt voor cluster
  • Problemen met de infrastructuur van de service
  • Serviceonderhoud
  • Failover van het coördinatorknooppunt naar nieuwe hardware

Over het algemeen kunnen verbindingsproblemen met Azure Cosmos DB for PostgreSQL als volgt worden geclassificeerd:

  • Tijdelijke fouten (kortstondig of onregelmatig)
  • Permanente of niet-tijdelijke fouten (fouten die regelmatig optreden)

Tijdelijke fouten oplossen

Tijdelijke fouten treden om een aantal redenen op. De meest voorkomende zijn systeemonderhoud, fouten met hardware of software en vCore-upgrades voor coördinatorknooppunten.

Het inschakelen van hoge beschikbaarheid voor clusterknooppunten kan dit soort problemen automatisch beperken. Uw toepassing moet echter nog steeds voorbereid zijn om de verbinding kort te verliezen. Het kan ook langer duren voordat andere gebeurtenissen worden beperkt, bijvoorbeeld wanneer een grote transactie een langlopend herstel veroorzaakt.

Stappen voor het oplossen van tijdelijke verbindingsproblemen

  1. Controleer het Microsoft Azure-servicedashboard op bekende storingen die zijn opgetreden tijdens de periode waarin de toepassing fouten rapporteert.
  2. Toepassingen die verbinding maken met een cloudservice, zoals Azure Cosmos DB for PostgreSQL, moeten tijdelijke fouten verwachten en correct reageren. Toepassingen moeten bijvoorbeeld logica voor opnieuw proberen implementeren om deze fouten af te handelen in plaats van ze op te sporen als toepassingsfouten voor gebruikers.
  3. Naarmate het cluster de resourcelimieten nadert, kunnen fouten lijken op tijdelijke verbindingsproblemen. Het vergroten van het RAM-geheugen van knooppunten of het toevoegen van werkknooppunten en het opnieuw verdelen van gegevens kan helpen.
  4. Als de verbindingsproblemen langer dan 60 seconden of meer dan één keer per dag duren, dient u een ondersteuning voor Azure aanvraag in door Ondersteuning krijgen te selecteren op de Azure-ondersteuningssite.

Problemen met permanente fouten oplossen

Als de toepassing permanent geen verbinding kan maken met Azure Cosmos DB for PostgreSQL, zijn de meest voorkomende oorzaken een onjuiste configuratie van de firewall of een gebruikersfout.

  • Configuratie van de firewall van coördinatorknooppunt: zorg ervoor dat de serverfirewall is geconfigureerd om verbindingen van uw client toe te staan, inclusief proxyservers en gateways.
  • Configuratie van clientfirewall: de firewall op uw client moet verbindingen met uw databaseserver toestaan. Voor sommige firewalls moet niet alleen toepassing op naam worden toegestaan, maar ook de IP-adressen en poorten van de server worden toegestaan.
  • Gebruikersfout: controleer de tekenreeks van de verbinding. Mogelijk hebt u parameters zoals de servernaam verkeerd getypt. U vindt verbindingsreeksen voor verschillende taalframeworks en psql in de Azure Portal. Ga naar de pagina Verbindingsreeksen in uw cluster. Houd er ook rekening mee dat clusters slechts één database hebben en de vooraf gedefinieerde naam citus is.

Stappen voor het oplossen van permanente verbindingsproblemen

  1. Stel firewallregels in om het IP-adres van de client toe te staan. Stel voor tijdelijke testdoeleinden een firewallregel in met 0.0.0.0 als het begin-IP-adres en gebruik 255.255.255.255 als het eind-IP-adres. Met deze regel wordt de server naar alle IP-adressen geopend. Als de regel uw verbindingsprobleem oplost, verwijdert u deze en maakt u een firewallregel voor een juist beperkt IP-adres of -adresbereik.
  2. Zorg ervoor dat op alle firewalls tussen de client en internet poort 5432 is geopend voor uitgaande verbindingen (en 6432 bij het gebruik van groepsgewijze verbindingen).
  3. Controleer uw connection string en andere verbindingsinstellingen.
  4. Controleer de servicestatus in het dashboard.

Volgende stappen