Risolvere i problemi di Private Service Connect
Impossibile connettersi al database di destinazione: EOF
L'esecuzione di un test di connettività restituisce il messaggio di errore [DATABASE] unable to connect to the destination database: EOF
.
Possibile causa: l'allegato del servizio non è configurato correttamente.
Cosa provare: assicurati che enable_proxy_protocol
sia impostato su false
nel file di configurazione Terraform dell'attacco del servizio. Il protocollo proxy è supportato solo per i server HTTP come NGINX e Apache.
Quando utilizzi gcloud
per creare la configurazione di Private Service Connect, il protocollo proxy è disabilitato per impostazione predefinita.
Timeout della connessione, connessione rifiutata
L'esecuzione del test di connettività non riesce o scade il tempo di attesa. Il problema è molto probabilmente causato da un routing configurato in modo errato nella configurazione di Private Service Connect. I motivi possono essere diversi.
Possibile causa: manca una regola firewall che consenta all'intervallo CIDR NAT di Private Service Connect di accedere alla subnet di Private Service Connect in cui si trova il bastion, in particolare all'interfaccia della VM bastion nic0
.
Cosa provare: assicurati che i criteri della tua organizzazione non limitino le regole firewall interne, ad esempio la regola firewall psc_sp_in_fw
definita nello script Terraform di esempio per la configurazione del produttore Private Service Connect.
Possibile causa: il proxy non è attivo. Non è presente alcun listener sulla porta specificata e, di conseguenza, la connessione si blocca.
Cosa provare: puoi provare a stabilire una connessione SSH alla VM bastion e cercare il proxy utilizzando il seguente comando:
netstat -tunalp | grep PORT
Analizza le risposte al comando:
Se ricevi una risposta vuota, il proxy non è attivo. Prova a eseguire il seguente comando:
sudo su; cd /
e controlla se il server Dante è installato eseguendosudo dpkg -s dante-server
:Se il proxy è installato, viene visualizzato il seguente messaggio:
Status: install ok installed
Se il proxy non è installato, il probabile problema è che manca il router. Aggiungi un router e controlla se riesci a scaricare il proxy eseguendo
apt-get install dante-server
.
Se il proxy è in esecuzione e in ascolto sulla porta specificata, prova ad aprire una connessione seguendo questa procedura:
Installa il client PostgreSQL:
sudo apt-get install postgresql-client
.Connettiti al database PostgreSQL:
psql -h 127.0.0.1 -p PORT -U DBUSERNAME -W
(ti verrà chiesto di inserire la password).Sostituisci quanto segue:
PORT
: il numero di porta del database.DBUSERNAME
: il nome utente utilizzato per connettersi al database PostgreSQL.
Installa il client telnet:
sudo apt-get install telnet
Connettiti al client telnet:
telnet 127.0.0.1 PORT
Sostituisci
PORT
con il numero di porta del database.
A seconda dei risultati dei comandi:
Se i comandi non riescono ad aprire una connessione, prova a esaminare i log del proxy per individuare la causa principale. La causa principale può variare a seconda della configurazione dell'istanza Cloud SQL.
Se la connessione viene aperta utilizzando telnet, ma si blocca nel client nativo, il probabile problema è il routing dell'indirizzo IP del bastion host. Nella VM, digita
ip route
nel terminale. Cerca di individuare una regola di routing che indirizzi le connessioni all'indirizzo IP privato dell'istanza Cloud SQL utilizzandonic
secondario (nic1
, l'indirizzo IPDB_SUBNETWORK_GATEWAY
).
Possibile causa: l'attacco del servizio non accetta la connessione dell'endpoint proveniente da Database Migration Service. Il collegamento del servizio contiene un elenco di progetti accettati e il progetto Database Migration Service non è incluso nell'elenco.
Cosa provare:per risolvere il problema, prova una delle seguenti opzioni:
Nella console Google Cloud , vai a Private Service Connect.
Nella scheda Servizi pubblicati, accetta la connessione da Database Migration Service per l'allegato del servizio (se è in attesa).
Aggiungi il progetto che richiede l'accesso alla lista consentita dei progetti nel collegamento del servizio (se viene rifiutato).
Per ulteriori informazioni sull'aggiunta di un progetto nella lista consentita in Terraform, consulta la documentazione di Terraform.
Per saperne di più sull'aggiunta di un progetto nella lista consentita in
gcloud
, consulta la documentazione di riferimento di gcloud.
Se il problema persiste, ricrea il profilo di connessione.
Elimina il profilo di connessione associato alla connettività Private Service Connect e ricrealo.
Risolvere gli errori di Oracle SCAN
Questa sezione descrive i potenziali problemi che potresti riscontrare durante la migrazione dalle origini Oracle Real Application Cluster (RAC) utilizzando la funzionalità Single Client Access Name (SCAN).
Impossibile stabilire la connettività a un database Oracle SCAN
L'esecuzione del test di connettività non riesce o scade il tempo di attesa.
Possibile causa: potresti provare a stabilire la connettività direttamente al database di origine Oracle SCAN. Database Migration Service non supporta la connettività diretta ai database che utilizzano la funzionalità SCAN negli ambienti Oracle RAC.
Cosa provare:per risolvere il problema, prova una delle seguenti opzioni:
- Collegarti direttamente a uno dei nodi.
- Utilizza Oracle Connection Manager.
- Crea una configurazione di connettività privata utilizzando una soluzione di reverse proxy come HAProxy.