Connettersi a Cloud SQL per PostgreSQL utilizzando il proxy di autenticazione Cloud SQL
Questa pagina mostra come connetterti a Cloud SQL da un ambiente di test locale utilizzando il proxy di autenticazione Cloud SQL. Il proxy di autenticazione Cloud SQL fornisce accesso sicuro all'istanza Cloud SQL senza la necessità di reti autorizzate o di configurare SSL. Utilizzando il proxy di autenticazione Cloud SQL, puoi connetterti in modo sicuro alla tua istanza Cloud SQL.
Le istruzioni riportate in questa pagina sono solo per un ambiente di test e non devono essere utilizzate per gli ambienti di produzione. Per ulteriori informazioni sulla configurazione richiesta per gli ambienti di produzione, consulta Utilizzare il proxy di autenticazione Cloud SQL in un ambiente di produzione e Connessione tramite il proxy di autenticazione Cloud SQL.
Prima di iniziare
- Accedi al tuo Google Cloud account. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Abilita le API Cloud necessarie.
Console
Nella Google Cloud console, vai alla pagina API.
Abilita l'API Cloud SQL Admin.gcloud
Fai clic sul pulsante seguente per aprire Cloud Shell, che fornisce l'accesso tramite riga di comando alle tue Google Cloud risorse direttamente dal browser. Cloud Shell può essere utilizzato per eseguire i comandi
gcloudpresentati in questa guida rapida.Esegui il
gcloud services enablecomando come segue utilizzando Cloud Shell per abilitare le API richieste per questa guida rapida:gcloud services enable sqladmin.googleapis.com
Questo comando abilita le seguenti API:
- API Cloud SQL Admin
-
Assicurati di avere il seguente ruolo o i seguenti ruoli nel progetto: Amministratore Cloud SQL (
roles/cloudsql.admin)Controlla i ruoli
-
Nella Google Cloud console vai alla pagina IAM.
Vai a IAM - Seleziona il progetto.
-
Nella colonna Entità, trova tutte le righe che identificano te o un gruppo di cui fai parte. Per scoprire i gruppi di cui fai parte, contatta l' amministratore.
- Per tutte le righe che ti specificano o ti includono, controlla la colonna Ruolo per verificare se l'elenco dei ruoli include i ruoli richiesti.
Concedi i ruoli
-
Nella Google Cloud console vai alla pagina IAM.
Vai a IAM - Seleziona il progetto.
- Fai clic su Concedi l'accesso.
-
Nel campo Nuove entità, inserisci il tuo identificatore dell'utente. In genere si tratta dell'indirizzo email di un Account Google.
- Fai clic su Seleziona un ruolo, quindi cerca il ruolo.
- Per concedere altri ruoli, fai clic su Aggiungi un altro ruolo e aggiungi ogni ruolo aggiuntivo.
- Fai clic su Salva.
-
Crea un'istanza Cloud SQL
In questa guida rapida utilizzi la Google Cloud console. Per utilizzare la gcloud CLI, cURL o PowerShell, consulta Creare istanze.
-
Nella Google Cloud console, vai alla pagina Istanze Cloud SQL.
- Fai clic su Crea istanza.
- Fai clic su Scegli PostgreSQL.
- Nel campo ID istanza, inserisci
myinstance. - Nel campo Password, inserisci una password per l'utente
postgres. Fai clic su Crea istanza.
Viene visualizzato l'elenco delle istanze. Puoi fare clic subito sulla nuova istanza per visualizzarne i dettagli, ma non sarà disponibile per altre operazioni finché non viene inizializzata e avviata.
Debian/Ubuntu
Installa il client psql dal gestore di pacchetti:
sudo apt-get update sudo apt-get install postgresql-client
CentOS/RHEL
Installa il client psql dal gestore di pacchetti:
sudo yum install postgresql
openSUSE
Installa il client psql dal gestore di pacchetti:
sudo zypper install postgresql
Altre piattaforme
- Scarica la distribuzione principale di PostgreSQL per la tua piattaforma dalla
pagina Download di PostgreSQL.
La distribuzione principale include il client psql. - Installa il database PostgreSQL seguendo le istruzioni riportate nella pagina di download.
Installa il client del proxy di autenticazione Cloud SQL
Il file binario del proxy di autenticazione Cloud SQL che scarichi dipende dal sistema operativo e dal fatto che utilizzi un kernel a 32 o 64 bit.
La maggior parte dell'hardware più recente utilizza un kernel a 64 bit. Se non sai se la tua macchina esegue un kernel a 32 o 64 bit, utilizza il comando uname -a per Linux o macOS. Per Windows, consulta la
documentazione di Windows.
Linux a 64 bit
- Scarica il proxy di autenticazione Cloud SQL:
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.21.1/cloud-sql-proxy.linux.amd64
- Rendi eseguibile il proxy di autenticazione Cloud SQL:
chmod +x cloud-sql-proxy
Linux a 32 bit
- Scarica il proxy di autenticazione Cloud SQL:
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.21.1/cloud-sql-proxy.linux.386
- Se il comando
curlnon viene trovato, eseguisudo apt install curle ripeti il comando di download. - Rendi eseguibile il proxy di autenticazione Cloud SQL:
chmod +x cloud-sql-proxy
macOS a 64 bit
- Scarica il proxy di autenticazione Cloud SQL:
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.21.1/cloud-sql-proxy.darwin.amd64
- Rendi eseguibile il proxy di autenticazione Cloud SQL:
chmod +x cloud-sql-proxy
Mac M1
- Scarica il proxy di autenticazione Cloud SQL:
curl -o cloud-sql-proxy https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.21.1/cloud-sql-proxy.darwin.arm64
- Rendi eseguibile il proxy di autenticazione Cloud SQL:
chmod +x cloud-sql-proxy
Windows a 64 bit
Fai clic con il tasto destro del mouse su https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.21.1/cloud-sql-proxy.x64.exe e seleziona Salva link con nome per scaricare il proxy di autenticazione Cloud SQL. Rinomina il file incloud-sql-proxy.exe.
Windows a 32 bit
Fai clic con il tasto destro del mouse su https://storage.googleapis.com/cloud-sql-connectors/cloud-sql-proxy/v2.21.1/cloud-sql-proxy.x86.exe e seleziona Salva link con nome per scaricare il proxy di autenticazione Cloud SQL. Rinomina il file incloud-sql-proxy.exe.
Immagine Docker del proxy di autenticazione Cloud SQL
Il proxy di autenticazione Cloud SQL ha diverse immagini container, come distroless, alpine e buster. L'immagine container predefinita del proxy di autenticazione Cloud SQL utilizza
distroless, che
non contiene alcuna shell. Se hai bisogno di una shell o di strumenti correlati, scarica un'immagine basata su alpine o buster.
Per ulteriori informazioni, consulta
Immagini container del proxy di autenticazione Cloud SQL.
Puoi eseguire il pull dell'immagine più recente sulla tua macchina locale utilizzando Docker con il seguente comando:
docker pull gcr.io/cloud-sql-connectors/cloud-sql-proxy:2.21.1
Altri sistemi operativi
Per altri sistemi operativi non inclusi qui, puoi compilare il proxy di autenticazione Cloud SQL dall'origine.Recupera il nome di connessione istanza
-
Nella Google Cloud console, vai alla pagina Istanze Cloud SQL.
- Fai clic sul nome dell'istanza per aprire la pagina Panoramica.
- Nella sezione Connetti a questa istanza, copia il Nome connessione. Il
nome connessione è nel formato
projectID:region:instanceID.
Avvia il proxy di autenticazione Cloud SQL
Avvia il proxy di autenticazione Cloud SQL nel proprio terminale in modo da poter monitorare l'output. Sostituisci INSTANCE_CONNECTION_NAME con il nome connessione dell'istanza che hai copiato nel passaggio precedente.
Per gli ambienti Linux, utilizza questo comando per avviare il proxy di autenticazione Cloud SQL:
./cloud-sql-proxy INSTANCE_CONNECTION_NAMEIn PowerShell su Windows, utilizza questo comando per avviare il proxy di autenticazione Cloud SQL:
.\cloud-sql-proxy.exe INSTANCE_CONNECTION_NAME
Viene visualizzato un messaggio simile al seguente:
Listening on 127.0.0.1:5432 for INSTANCE_CONNECTION_NAME Ready for new connections
Esegui il seguente comando dopo aver sostituito DB_NAME con il nome del database Cloud SQL:
psql "host=127.0.0.1 port=5432 sslmode=disable dbname=DB_NAME user=postgres"
Al prompt Inserisci password: , inserisci la password del tuo account PostgreSQL.
Verifica che venga visualizzato il prompt di PostgreSQL. Ti sei connesso al database utilizzando il client psql.
Torna alla finestra del terminale in cui hai avviato il proxy di autenticazione Cloud SQL. Dovresti visualizzare un messaggio simile al seguente:
New connection for myInstance
Libera spazio
Per evitare che al tuo Google Cloud account vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.
-
Nella Google Cloud console, vai alla pagina Istanze Cloud SQL.
- Seleziona l'istanza
myinstanceper aprire la pagina Dettagli istanza. - Nella barra delle icone nella parte superiore della pagina, fai clic su Elimina.
- Nella finestra Elimina istanza, digita il nome dell'istanza e fai clic su Elimina.
Passaggi di pulizia facoltativi
Se non utilizzi le API abilitate nell'ambito di questa guida rapida, puoi disabilitarle.
- API abilitate in questa guida rapida:
- API Cloud SQL Admin
Nella Google Cloud console, vai alla pagina API.
Seleziona l'API Cloud SQL Admin e fai clic sul pulsante Disattiva API.
Passaggi successivi
Scopri come risolvere i problemi relativi al proxy di autenticazione Cloud SQL.
Scopri di più sul proxy di autenticazione Cloud SQL.
- Scopri di più su altre opzioni di connessione.