Per impostazione predefinita, un cluster di database consente la connessione solo dall'interno del cluster utente e dallo stesso progetto.
Per abilitare le connessioni a tutti i cluster di database nel tuo progetto da un altro progetto, consulta Abilita le connessioni tra progetti.
Per abilitare le connessioni a un cluster di database da indirizzi IP esterni alla tua organizzazione GDC, consulta Abilita le connessioni esterne.
Accedi alla console GDC con un account associato al ruolo Database Project Admin per trovare le seguenti informazioni per la connessione al tuo cluster di database. Queste informazioni si trovano nella sezione Connettività della pagina Servizio di database.
Questi passaggi includono un esempio di connessione al database utilizzando psql. I passaggi esatti variano a seconda del software client scelto.
Console
Vai alla sezione Connettività della pagina Servizio di database per il cluster di database. Questa pagina include:
- La password dell'account amministratore (il nome utente è
dbsadmin) - Nome host e numero di porta dell'endpoint principale del cluster di database
- Se il cluster di database consente la connessione esterna dall'esterno dell'organizzazione.
- Un comando
psqlper connetterti al cluster - Un link per scaricare il certificato dell'autorità di certificazione (CA) del cluster di database
- La password dell'account amministratore (il nome utente è
Scarica il certificato CA dalla console GDC nella sezione Connettività della pagina Servizio di database per il tuo cluster di database.
Configura il client in modo che utilizzi il certificato CA per verificare il database. Per i client
psql, imposta la variabile di ambientePGSSLROOTCERTsul percorso del file del certificato e la variabile di ambientePGSSLMODEin base alle tue preferenze:export PGSSLROOTCERT=path/to/accounts_cert.pem export PGSSLMODE="verify-full"Connettiti al database dal software client. Se utilizzi
psql, esegui questo comando:PGPASSWORD=DB_PASSWORD psql -h DB_HOSTNAME -p PORT -U USERNAME -d postgres
Sostituisci le seguenti variabili:
path/to/: il percorso del certificatoaccounts_cert.pem.DB_PASSWORD: la password dalla console.DB_HOSTNAME: il nome host del database dalla console.DB_PORT: il numero di porta del database dalla console.DB_USERNAME: il nome utente del database dalla console.
API
Recupera l'endpoint del database dallo stato del cluster del database:
kubectl get dbcluster.postgresql.dbadmin.gdc.goog DBCLUSTER_NAME -n USER_PROJECT -o=jsonpath='{.status.primary.url}'Scarica il certificato CA dal secret di Kubernetes:
kubectl get secret dbs-certificates -n USER_PROJECT -o json | jq -r '.data."dbs-pg-cert-DBCLUSTER_NAME"' | base64 -d > path/to/ca.crtConfigura il client in modo che utilizzi il certificato CA per verificare il database. Per i client
psql, puoi impostare la variabile di ambientePGSSLROOTCERTsul percorso del file del certificato e la variabile di ambientePGSSLMODEin base alle tue preferenze:export PGSSLROOTCERT=path/to/ca.crt export PGSSLMODE="verify-full"Connettiti al database dal software client. Se utilizzi
psql, esegui questo comando:PGPASSWORD=DB_PASSWORD psql -h DB_HOSTNAME -p DB_PORT -U DB_USERNAME -d postgres
Sostituisci le seguenti variabili:
USER_PROJECT: il nome del progetto utente in cui è stato creato il cluster di database.DBCLUSTER_NAME: il nome del cluster di database.path/to/: il percorso del certificato CA del database.DB_PASSWORD: la password del database per l'utente amministratore.DB_HOSTNAME: il nome host dello stato del cluster di database.DB_PORT: il numero di porta del database dallo stato del cluster del database.DB_USERNAME: con il nome utente del database (il valore predefinito èdbsadmin).