Risolvere i problemi di connessione a Database di Azure per PostgreSQL - Hyperscale (Citus)

SI APPLICA A: Database di Azure per PostgreSQL - Hyperscale (Citus)

I problemi di connessione possono essere causati da diversi aspetti, ad esempio:

  • Impostazioni del firewall
  • Timeout della connessione
  • Informazioni di accesso non corrette
  • Limite di connessione raggiunto per il gruppo di server
  • Problemi con l'infrastruttura del servizio
  • Manutenzione del servizio
  • Il nodo coordinatore ha eseguito il failover in un nuovo hardware

In genere, i problemi di connessione a Hyperscale (Citus) possono essere classificati come segue:

  • Errori temporanei (di breve durata o intermittenti)
  • Errori non temporanei o permanenti (errori che si ripetono regolarmente)

Risolvere i problemi causati da errori temporanei

Gli errori temporanei si verificano per diversi motivi. Il più comune include la manutenzione del sistema, l'errore con hardware o software e gli aggiornamenti vCore del nodo coordinatore.

L'abilitazione della disponibilità elevata per i nodi del gruppo di server Hyperscale (Citus) può ridurre automaticamente questi tipi di problemi. Tuttavia, l'applicazione deve comunque essere pronta a perdere brevemente la connessione. Anche altri eventi possono richiedere più tempo per attenuare, ad esempio quando una transazione di grandi dimensioni causa un ripristino a esecuzione prolungata.

Passaggi per risolvere problemi di connettività temporanei

  1. Controllare il dashboard del servizio di Microsoft Azure per eventuali interruzioni note che si sono verificate durante il periodo in cui l'applicazione ha segnalato errori.
  2. Le applicazioni che si connettono a un servizio cloud, ad esempio Hyperscale (Citus) devono prevedere errori temporanei e reagire normalmente. Ad esempio, le applicazioni devono implementare la logica di ripetizione dei tentativi per gestire questi errori invece di visualizzarli come errori dell'applicazione agli utenti.
  3. Man mano che il gruppo di server si avvicina ai limiti delle risorse, gli errori possono sembrare problemi di connettività temporanei. L'aumento della RAM del nodo o l'aggiunta di nodi di lavoro e il ribilanciamento dei dati possono essere utili.
  4. Se i problemi di connettività continuano o durano più di 60 secondi o si verificano più volte al giorno, inviare una richiesta di supporto tecnico di Azure selezionando Ottieni supporto nel sito del supporto tecnico di Azure.

Risolvere gli errori persistenti

Se l'applicazione non riesce a connettersi in modo permanente a Hyperscale (Citus), le cause più comuni sono errori di configurazione del firewall o di errore dell'utente.

  • Configurazione del firewall del nodo coordinatore: assicurarsi che il firewall del server Hyperscale (Citus) sia configurato per consentire le connessioni dal client, inclusi server proxy e gateway.
  • Configurazione del firewall client: il firewall nel client deve consentire le connessioni al server di database. Alcuni firewall richiedono non solo l'applicazione in base al nome, ma consentono gli indirizzi IP e le porte del server.
  • Errore utente: controllare il stringa di connessione. È possibile che siano presenti parametri non tipizzati come il nome del server. È possibile trovare stringhe di connessione per vari framework del linguaggio e psql nella portale di Azure. Passare alla pagina Stringhe di connessione nel gruppo di server Hyperscale (Citus). Tenere presente anche che i cluster Hyperscale (Citus) hanno un solo database e il nome predefinito è citus.

Passaggi per risolvere problemi di connettività permanenti

  1. Configurare le regole del firewall per consentire l'indirizzo IP del client. Ai soli fini di test temporanei, impostare una regola del firewall usando 0.0.0.0 come indirizzo IP iniziale e 255.255.255.255 come indirizzo IP finale. Tale regola apre il server a tutti gli indirizzi IP. Se la regola risolve il problema di connettività, rimuoverla e creare una regola del firewall per un indirizzo IP o un intervallo di indirizzi IP appropriato limitato.
  2. In tutti i firewall tra il client e Internet, assicurarsi che la porta 5432 sia aperta per le connessioni in uscita (e 6432 se si usa il pool di connessioni).
  3. Verificare la stringa di connessione e le altre impostazioni di connessione.
  4. Controllare l'integrità del servizio nel dashboard.

Passaggi successivi