Connettiti a Cloud SQL per PostgreSQL dall'ambiente flessibile App Engine
Scopri come eseguire il deployment di un'app di esempio nell'ambiente flessibile App Engine connesso a un'istanza PostgreSQL utilizzando la console Google Cloud e un'app client.
Se completi tutti i passaggi in modo tempestivo, le risorse create in questa guida rapida in genere costano meno di un dollaro.
Prima di iniziare
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Abilita le API Cloud necessarie per eseguire un'app di esempio Cloud SQL nell'ambiente flessibile App Engine.
Fai clic sul pulsante di seguito per abilitare le API richieste per questa guida rapida.
Vengono abilitate le seguenti API:
- API Cloud SQL Admin
- API Compute Engine
- API Cloud Build
- API Cloud Logging
Se fai clic sul pulsante, attivi anche l'ambiente flessibile di Google App Engine.
Fai clic sul seguente pulsante per aprire Cloud Shell, che fornisce accesso da riga di comando alle tue risorse Google Cloud direttamente dal browser. Cloud Shell può essere utilizzato per eseguire i comandi
gcloud
presentati in questa guida rapida.Esegui il seguente comando
gcloud
utilizzando Cloud Shell:gcloud services enable appengineflex.googleapis.com sqladmin.googleapis.com \ compute.googleapis.com cloudbuild.googleapis.com logging.googleapis.com
Questo comando abilita le seguenti API:
- API Cloud SQL Admin
- API Compute Engine
- API Cloud Build
- API Cloud Logging
Se esegui il comando precedente, abiliti anche l'ambiente flessibile di Google App Engine.
Configura Cloud SQL
Crea un'istanza Cloud SQL
IP pubblico
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Fai clic su Crea istanza.
- Fai clic su Scegli PostgreSQL.
- Assicurati che Enterprise Plus sia selezionata come versione Cloud SQL per l'istanza.
- Nel campo ID istanza, inserisci
quickstart-instance
. - Nel campo Password, inserisci una password per l'utente postgres. Salva questa password per utilizzarla in futuro.
- Nella sezione Scegli la disponibilità per regione e zona, seleziona Zona singola.
- Fai clic sul menu Mostra opzioni di configurazione.
- Espandi il nodo Configurazione macchina.
- Nella regione Forme di macchine, seleziona la forma 4 vCPU, 32 GB.
- Fai clic su Crea istanza e attendi fino all'inizializzazione e all'avvio dell'istanza.
Prima di eseguire il comando come segue, sostituisci DB_ROOT_PASSWORD con la password dell'utente del database.
Se vuoi, modifica i valori dei seguenti parametri:
- --database-version: il tipo e la versione del motore del database. Se non viene specificato, viene utilizzato il valore predefinito dell'API. Consulta la documentazione sulle versioni del database gcloud per conoscere le versioni attualmente disponibili.
- --cpu: il numero di core desiderati nella macchina.
- --memory: valore intero che indica la quantità di memoria necessaria nella macchina. Deve essere fornita una unità di misura (ad es. 3072 MB o 9 GB). Se non vengono specificate unità di misura, viene assunto il valore GB.
- --region: posizione regionale dell'istanza
(ad esempio asia-east1, us-east1). Se non specificato, viene utilizzato il valore predefinito
us-central
.
Esegui il comando gcloud
sql instances create
per creare un'istanza Cloud SQL.
gcloud sql instances createquickstart-instance \ --database-version=POSTGRES_14 \ --cpu=1 \ --memory=4GB \ --region=us-central \ --root-password=DB_ROOT_PASSWORD
IP privato
Alloca un intervallo di indirizzi IP e crea una connessione privata per configurare l'accesso privato ai servizi per Cloud SQL
-
Nella console Google Cloud, vai alla pagina Reti VPC.
- Seleziona la rete VPC
default
. - Seleziona la scheda Connessione ai servizi privati.
- Seleziona la scheda Intervalli IP allocati per i servizi.
- Fai clic su Assegna intervallo IP.
- Per il Nome dell'intervallo allocato, specifica
google-managed-services-default
. - Seleziona l'opzione Automatico per l'intervallo IP e specifica la lunghezza del prefisso come
16
. - Fai clic su Alloca per creare l'intervallo allocato.
- Seleziona la scheda Connessioni private ai servizi per la rete VPC
default
. - Fai clic su Crea connessione per creare una connessione privata tra la tua rete e un producer di servizi.
- Per Allocazione assegnata, seleziona
google-managed-services-default
. - Fai clic su Connetti per creare la connessione.
Creare un'istanza con indirizzo IP privato e SSL abilitati
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Fai clic su Crea istanza.
- Fai clic su Scegli PostgreSQL.
- Assicurati che Enterprise Plus sia selezionata come versione Cloud SQL per l'istanza.
- Nel campo ID istanza, inserisci
quickstart-instance
. - Nel campo Password, inserisci una password per l'utente postgres. Salva questa password per utilizzarla in futuro.
- Nella sezione Scegli la disponibilità per regione e zona, seleziona Zona singola.
- Fai clic sul menu Mostra opzioni di configurazione.
- Espandi il nodo Configurazione macchina.
- Nella regione Forme di macchine, seleziona la forma 4 vCPU, 32 GB.
- Espandi il nodo Connessioni.
- Deseleziona la casella di controllo IP pubblico per creare un'istanza solo con un indirizzo IP privato.
- Seleziona la casella di controllo IP privato.
- Nel menu Rete, seleziona predefinita.
- Fai clic su Crea istanza e attendi l'inizializzazione e l'avvio dell'istanza.
- Fai clic su Connessioni.
- Nella sezione Sicurezza, seleziona Consenti solo connessioni SSL per attivare le connessioni SSL.
- Nella finestra di dialogo Consenti solo connessioni SSL, fai clic su Salva e poi attendi il riavvio dell'istanza.
Alloca un intervallo di indirizzi IP e crea una connessione privata per configurare l'accesso privato ai servizi per Cloud SQL
-
Esegui il comando
gcloud compute addresses create
per allocare un intervallo di indirizzi IP.gcloud compute addresses create
google-managed-services-default \ --global --purpose=VPC_PEERING --prefix-length=16 \ --description="peering range for Google" --network=default -
Esegui il comando
gcloud services vpc-peerings connect
per creare una connessione privata all'intervallo di indirizzi IP allocati. Sostituisci YOUR_PROJECT_ID con l'ID progetto del tuo progetto.gcloud services vpc-peerings connect --service=servicenetworking.googleapis.com \ --ranges=
google-managed-services-default --network=default \ --project=YOUR_PROJECT_ID
Creare un'istanza con indirizzo IP privato e SSL abilitati
-
Prima di eseguire il comando come segue, sostituisci DB_ROOT_PASSWORD con la password dell'utente del database.
- --database-version: il tipo e la versione del motore del database. Se non viene specificato, viene utilizzato il valore predefinito dell'API. Consulta la documentazione sulle versioni del database gcloud per conoscere le versioni attualmente disponibili.
- --cpu: il numero di core della macchina.
- --memory: un valore intero che indica la quantità di memoria da includere nella macchina. È possibile fornire un'unità di misura (ad esempio 3072 MB o 9 GB). Se non vengono specificate unità di misura, viene assunto il valore GB.
- --region: la posizione regionale dell'istanza
(ad esempio asia-east1, us-east1). Se non specificato, viene utilizzato il valore predefinito
us-central1
. Consulta l'elenco completo delle regioni. Esegui il comando
gcloud sql instances patch
per attivare l'opzione Consenti solo connessioni SSL per l'istanza.
Se vuoi, modifica i valori dei seguenti parametri:
Esegui il comando gcloud
sql instances create
per creare un'istanza Cloud SQL con un indirizzo IP privato.
gcloud sql instances createquickstart-instance \ --database-version=POSTGRES_14 \ --cpu=1 \ --memory=4GB \ --region=us-central \ --root-password=DB_ROOT_PASSWORD \ --no-assign-ip \ --network=default
gcloud sql instances patchquickstart-instance --require-ssl
Crea un database
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Seleziona
quickstart-instance
. - Nel menu di navigazione SQL, seleziona Database.
- Fai clic su Crea database.
- Nel campo Nome database della finestra di dialogo Nuovo database, inserisci
quickstart-db
. - Fai clic su Crea.
Esegui il comando gcloud
sql databases create
per creare un database.
gcloud sql databases createquickstart-db --instance=quickstart-instance
Crea un utente
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Seleziona l'istanza PostgreSQL quickstart-instance che hai creato.
- Nel menu di navigazione SQL, seleziona Utenti.
- Fai clic su Aggiungi account utente.
- Nella pagina Aggiungi un account utente all'istanza quickstart-instance,
aggiungi le seguenti informazioni:
- Nel campo Nome utente, inserisci
quickstart-user
. - Nel campo Password, specifica una password per l'utente del database. Prendi nota di questa password da utilizzare in un passaggio successivo di questa guida rapida.
- Nel campo Nome utente, inserisci
- Fai clic su Aggiungi.
Prima di eseguire il comando seguente, effettua le seguenti sostituzioni:
- PASSWORD con una password per l'utente del database. Prendi nota di questo valore per utilizzarlo in un passaggio successivo di questa guida rapida.
Esegui il comando gcloud sql users create
per creare l'utente.
gcloud sql users createquickstart-user \ --instance=quickstart-instance \ --password=PASSWORD
I limiti di lunghezza del nome utente sono gli stessi per Cloud SQL e per PostgreSQL on-premise.
Eseguire il deployment di un'app di esempio nell'ambiente flessibile di App Engine
Crea un'applicazione App Engine
-
Nella console Google Cloud, vai alla pagina App Engine.
- Fai clic su Crea applicazione.
- Nel menu a discesa Seleziona una regione, seleziona us-central.
- Fai clic su Avanti.
- Quando viene visualizzata la pagina Inizia, scorri fino in fondo alla pagina.
- Fai clic sul link Lo farò in seguito.
-
Esegui il seguente comando
gcloud app create
per creare un'app App Engine: - Quando ti viene chiesto di scegliere la regione in cui vuoi che si trovi la tua app App Engine, inserisci la scelta numerica per us-central.
gcloud app create
Configurare l'account di servizio App Engine
-
Nella console Google Cloud, vai alla pagina IAM.
- Per l'account di servizio denominato Account di servizio predefinito App Engine, fai clic sull'icona a forma di matita.
- Fai clic su Aggiungi un altro ruolo.
- Aggiungi il ruolo denominato Client Cloud SQL.
- Fai clic su Salva.
-
Esegui il seguente comando
gcloud
per ottenere un elenco degli account di servizio del tuo progetto:gcloud iam service-accounts list
- Copia EMAIL dell'account di servizio App Engine.
- Esegui il seguente comando per aggiungere il ruolo Client Cloud SQL
all'account di servizio App Engine:
gcloud projects add-iam-policy-binding
YOUR_PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_EMAIL " \ --role="roles/cloudsql.client"
Configura ed esegui il deployment di un'app di esempio per Cloud SQL
Ora che hai creato un'istanza e un database Cloud SQL e hai configurato l'account di servizio App Engine in modo che disponga delle autorizzazioni per connettersi a Cloud SQL, puoi configurare ed eseguire il deployment di un'app di esempio per connetterti all'istanza Cloud SQL.
IP pubblico
Per i percorsi IP pubblici, l'ambiente flessibile di App Engine fornisce la crittografia. Questo metodo utilizza una socket Unix e il proxy di autenticazione Cloud SQL per connettersi all'istanza Cloud SQL.-
Nell'editor di Cloud Shell, apri il codice sorgente dell'app di esempio.
Apri l'editor di Cloud Shell - Nella finestra di dialogo Apri in Cloud Shell, fai clic su Conferma per scaricare il codice dell'app di esempio e aprire la directory dell'app di esempio nell'editor di Cloud Shell.
- Al prompt dei comandi di Cloud Shell, esegui il seguente comando per attivare il progetto:
gcloud config set project
YOUR-PROJECT-ID - Se viene visualizzata la finestra di dialogo Autorizza Cloud Shell, fai clic su Autorizza.
- Nel menu di navigazione Explorer di Cloud Shell Editor, fai clic sul nodo espandibile che corrisponde al nome utente del tuo account Google Cloud .
- Individua e apri il file
cloudshell_open/golang-samples/cloudsql/postgres/database-sql/app.flexible.yaml
. -
Sostituisci i segnaposto per le variabili di ambiente nel
file
app.flexible.yaml
con i seguenti valori: - <PROJECT-ID> con il tuo ID progetto.
- <INSTANCE-REGION> con
us-central1
. - <INSTANCE-NAME> con
quickstart-instance
. - <YOUR_DB_USER_NAME> con
quickstart-user
. - <YOUR_DB_PASSWORD> con la password dell'
quickstart-user
che hai creato in Creare un utente. - <YOUR_DB_NAME> con
quickstart-db
. - Al prompt dei comandi di Cloud Shell, nella directory
cloudshell_open/golang-samples/cloudsql/postgres/database-sql
, esegui il seguentegcloud app deploy
comando per eseguire il deployment dell'app di esempio nell'ambiente flessibile di App Engine. - Quando ti viene chiesto Vuoi continuare?, inserisci
Y
. - Al termine delle azioni eseguite eseguendo il comando
gcloud app deploy
, esegui il comandogcloud app browse
: - Fai clic sul link generato per visualizzare l'app di esempio in esecuzione nell'ambiente flessibile di App Engine. Questo ambiente è connesso a Cloud SQL.
gcloud app deploy app.flexible.yaml
gcloud app browse
-
Nell'editor di Cloud Shell, apri il codice sorgente dell'app di esempio.
Apri l'editor di Cloud Shell - Nella finestra di dialogo Apri in Cloud Shell, fai clic su Conferma per scaricare il codice dell'app di esempio e aprire la directory dell'app di esempio nell'editor di Cloud Shell.
- Al prompt dei comandi di Cloud Shell, esegui il seguente comando per attivare il progetto:
gcloud config set project
YOUR-PROJECT-ID - Se viene visualizzata la finestra di dialogo Autorizza Cloud Shell, fai clic su Autorizza.
- Nel menu di navigazione Explorer di Cloud Shell Editor, fai clic sul nodo espandibile che corrisponde al nome utente del tuo account Google Cloud .
- Individua e apri il file
cloudshell_open/java-docs-samples/cloud-sql/postgres/servlet/src/main/webapp/WEB-INF/appengine-web.xml
. -
Sostituisci i segnaposto per le variabili di ambiente nel
file
appengine-web.xml
con i seguenti valori: - my-project:region:instance con il nome connessione dell'istanza visualizzato nella pagina Istanze Cloud SQL nella Google Cloud console.
- my-db-user con
quickstart-user
. - my-db-password con la password di
quickstart-user
che hai creato in Creare un utente. - my_db con
quickstart-db
. - Al prompt dei comandi di Cloud Shell, nella directory
cloudshell_open/java-docs-samples/cloud-sql/postgres/servlet
, esegui il seguente comando Apache Mavenmvn clean package
per eseguire il deployment dell'app di esempio nell'ambiente flessibile di App Engine. - Quando ti viene chiesto Vuoi continuare?, inserisci
Y
. - Al termine delle azioni eseguite eseguendo il comando
gcloud app deploy
, esegui il comandogcloud app browse
: - Fai clic sul link generato per visualizzare l'app di esempio in esecuzione nell'ambiente flessibile di App Engine. Questo ambiente è connesso a Cloud SQL.
mvn clean package appengine:deploy -DskipTests
gcloud app browse
-
Nell'editor di Cloud Shell, apri il codice sorgente dell'app di esempio.
Apri l'editor di Cloud Shell - Nella finestra di dialogo Apri in Cloud Shell, fai clic su Conferma per scaricare il codice dell'app di esempio e aprire la directory dell'app di esempio nell'editor di Cloud Shell.
- Al prompt dei comandi di Cloud Shell, esegui il seguente comando per attivare il progetto:
gcloud config set project
YOUR-PROJECT-ID - Se viene visualizzata la finestra di dialogo Autorizza Cloud Shell, fai clic su Autorizza.
- Nel menu di navigazione Explorer di Cloud Shell Editor, fai clic sul nodo espandibile che corrisponde al nome utente del tuo account Google Cloud .
- Individua e apri il file
cloudshell_open/nodejs-docs-samples/cloud-sql/postgres/knex/app.flexible.yaml
. -
Sostituisci i segnaposto per le variabili di ambiente nel
file
app.flexible.yaml
con i seguenti valori: - <MY-PROJECT> con il tuo ID progetto.
- <INSTANCE-REGION> con
us-central1
. - <INSTANCE-NAME> con
quickstart-instance
. - MY_DB_USER con
quickstart-user
. - MY_DB_PASSWORD con la password di
quickstart-user
che hai creato in Creare un utente. - MY_DATABASE con
quickstart-db
. - Al prompt dei comandi di Cloud Shell, nella directory
cloudshell_open/nodejs-docs-samples/cloud-sql/postgres/knex
, esegui il seguentegcloud app deploy
comando per eseguire il deployment dell'app di esempio nell'ambiente flessibile di App Engine. - Quando ti viene chiesto Vuoi continuare?, inserisci
Y
. - Al termine delle azioni eseguite eseguendo il comando
gcloud app deploy
, esegui il comandogcloud app browse
: - Fai clic sul link generato per visualizzare l'app di esempio in esecuzione nell'ambiente flessibile di App Engine. Questo ambiente è connesso a Cloud SQL.
gcloud app deploy app.flexible.yaml
gcloud app browse
-
Nell'editor di Cloud Shell, apri il codice sorgente dell'app di esempio.
Apri l'editor di Cloud Shell - Nella finestra di dialogo Apri in Cloud Shell, fai clic su Conferma per scaricare il codice dell'app di esempio e aprire la directory dell'app di esempio nell'editor di Cloud Shell.
- Al prompt dei comandi di Cloud Shell, esegui il seguente comando per attivare il progetto:
gcloud config set project
YOUR-PROJECT-ID - Se viene visualizzata la finestra di dialogo Autorizza Cloud Shell, fai clic su Autorizza.
- Nel menu di navigazione Explorer di Cloud Shell Editor, fai clic sul nodo espandibile che corrisponde al nome utente del tuo account Google Cloud .
- Individua e apri il file
cloudshell_open/python-docs-samples/cloud-sql/postgres/sqlalchemy/app.flexible.yaml
. -
Sostituisci i segnaposto per le variabili di ambiente nel
file
app.flexible.yaml
con i seguenti valori: - <PROJECT-ID> con il tuo ID progetto.
- <INSTANCE-REGION> con
us-central1
. - <INSTANCE-NAME> con
quickstart-instance
. - <YOUR_DB_USER_NAME> con
quickstart-user
. - <YOUR_DB_PASSWORD> con la password dell'
quickstart-user
che hai creato in Creare un utente. - <YOUR_DB_NAME> con
quickstart-db
. - Al prompt dei comandi di Cloud Shell, nella directory
cloudshell_open/python-docs-samples/cloud-sql/postgres/sqlalchemy
, esegui il seguentegcloud app deploy
comando per eseguire il deployment dell'app di esempio nell'ambiente flessibile di App Engine. - Quando ti viene chiesto Vuoi continuare?, inserisci
Y
. - Al termine delle azioni eseguite eseguendo il comando
gcloud app deploy
, esegui il comandogcloud app browse
: - Fai clic sul link generato per visualizzare l'app di esempio in esecuzione nell'ambiente flessibile di App Engine. Questo ambiente è connesso a Cloud SQL.
gcloud app deploy app.flexible.yaml
gcloud app browse
IP privato
Per i percorsi IP privati, assicurati che la VM dell'ambiente flessibile di App Engine e l'istanza Cloud SQL siano ospitate sulla stessa rete Virtual Private Cloud (VPC). Se si trova nella stessa rete VPC, la tua app App Engine ambiente flessibile può connettersi direttamente all'istanza Cloud SQL senza utilizzare il proxy di autenticazione Cloud SQL.Crea e scarica certificati client e server SSL
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Fai clic su
quickstart-instance
per visualizzare la pagina Panoramica - Fai clic sulla scheda Connessioni.
- Nella sezione Sicurezza, fai clic su Crea certificato client.
- Nella finestra di dialogo Crea un certificato client,
inserisci
quickstart-key
come nome e fai clic su Crea. Nella finestra di dialogo Nuovo certificato SSL creato, fai clic su ogni link di download per scaricare i certificati. Poi, fai clic su Chiudi.
Creare un'app di esempio con certificati SSL
-
Nell'editor di Cloud Shell, apri il codice sorgente dell'app di esempio.
Apri l'editor di Cloud Shell - Nella finestra di dialogo Apri in Cloud Shell, fai clic su Conferma per scaricare il codice dell'app di esempio e aprire la directory dell'app di esempio nell'editor di Cloud Shell.
- Al prompt dei comandi di Cloud Shell, esegui il seguente comando per attivare il progetto:
gcloud config set project
YOUR-PROJECT-ID - Se viene visualizzata la finestra di dialogo Autorizza Cloud Shell, fai clic su Autorizza.
-
Carica i file dei certificati SSL nella cartella certs.
- Nel menu di navigazione di Explorer dell'editor di Cloud Shell, vai alla
cartella
golang-samples/cloudsql/postgres/database-sql/certs
. - Fai clic con il tasto destro del mouse sulla cartella certs nell'editor di Cloud Shell e seleziona Carica file.
- Seleziona i seguenti file sul computer locale:
client-key.pem
client-cert.pem
server-ca.pem
- Con i tre file del certificato SSL selezionati, fai clic su Apri per completare la procedura di caricamento dei file nell'editor di Cloud Shell.
- Nel menu di navigazione di Explorer dell'editor di Cloud Shell, vai alla
cartella
- Nel menu di navigazione Explorer di Cloud Shell Editor, fai clic sul nodo espandibile che corrisponde al nome utente del tuo account Google Cloud .
- Individua e apri il file
cloudshell_open/golang-samples/cloudsql/postgres/database-sql/app.flexible.yaml
. - Copia e incolla il seguente codice nel file, sostituendo i contenuti esistenti:
- Apporta le seguenti sostituzioni delle variabili:
- YOUR_DB_PASSWORD con la password di
quickstart-user
che hai creato in Creare un utente. - INSTANCE_HOST con l'indirizzo IP privato dell'istanza visualizzato nella pagina Istanze Cloud SQL nella Google Cloud console.
- PROJECT_ID con il tuo ID progetto.
- Al prompt dei comandi di Cloud Shell, nella directory
cloudshell_open/golang-samples/cloudsql/postgres/database-sql
, esegui il seguentegcloud app deploy
comando per eseguire il deployment dell'app di esempio nell'ambiente flessibile di App Engine. - Quando ti viene chiesto Vuoi continuare?, inserisci
Y
. - Al termine delle azioni eseguite eseguendo il comando
gcloud app deploy
, esegui il comandogcloud app browse
: - Fai clic sul link generato per visualizzare l'app di esempio in esecuzione nell'ambiente flessibile di App Engine. Questo ambiente è connesso a Cloud SQL.
runtime: custom env: flex env_variables: DB_USER: quickstart-user DB_PASS:YOUR_DB_PASSWORD DB_NAME: quickstart-db DB_PORT: 3306 INSTANCE_HOST:INSTANCE_HOST DB_ROOT_CERT: certs/server-ca.pem DB_CERT: certs/client-cert.pem DB_KEY: certs/client-key.pem PRIVATE_IP: TRUE vpc_access_connector: name: projects/PROJECT_ID /locations/us-central1/connectors/quickstart-connector
gcloud app deploy app.flexible.yaml
gcloud app browse
Crea e scarica certificati client e server SSL
Per gli utenti Java, il connettore fornisce già una connessione sicura, pertanto non è necessario creare e scaricare i certificati client e server SSL.
Creare un'app di esempio
-
Nell'editor di Cloud Shell, apri il codice sorgente dell'app di esempio.
Apri l'editor di Cloud Shell - Nella finestra di dialogo Apri in Cloud Shell, fai clic su Conferma per scaricare il codice dell'app di esempio e aprire la directory dell'app di esempio nell'editor di Cloud Shell.
- Al prompt dei comandi di Cloud Shell, esegui il seguente comando per attivare il progetto:
gcloud config set project
YOUR-PROJECT-ID - Se viene visualizzata la finestra di dialogo Autorizza Cloud Shell, fai clic su Autorizza.
- Nel menu di navigazione Explorer di Cloud Shell Editor, fai clic sul nodo espandibile che corrisponde al nome utente del tuo account Google Cloud .
- Individua e apri il file
cloudshell_open/java-docs-samples/cloud-sql/postgres/servlet/src/main/webapp/WEB-INF/appengine-web.xml
. -
Copia e incolla il seguente codice nel
appengine-web.xml
file, sostituendo i contenuti esistenti del file: - Apporta le seguenti sostituzioni delle variabili:
- nome-progetto:nome-regione:nome-istanza con il nome connessione dell'istanza visualizzato nella pagina Istanze Cloud SQL nella Google Cloud console.
- my-db-password con la password di
quickstart-user
che hai creato in Creare un utente. - PROJECT_ID con il tuo ID progetto.
- Al prompt dei comandi di Cloud Shell, nella directory
cloudshell_open/java-docs-samples/cloud-sql/postgres/servlet
, esegui il seguente comando Apache Mavenmvn clean package
per eseguire il deployment dell'app di esempio nell'ambiente flessibile di App Engine. - Quando ti viene chiesto Vuoi continuare?, inserisci
Y
. - Al termine delle azioni eseguite eseguendo il comando
gcloud app deploy
, esegui il comandogcloud app browse
: - Fai clic sul link generato per visualizzare l'app di esempio in esecuzione nell'ambiente flessibile di App Engine. Questo ambiente è connesso a Cloud SQL.
<runtime>java17</runtime> <env-variables> <env-var name="INSTANCE_CONNECTION_NAME" value="project-name:region-name:instance-name " /> <env-var name="DB_PORT" value="5432" /> <env-var name="DB_USER" value="quickstart-user" /> <env-var name="DB_PASS" value="my-db-password " /> <env-var name="DB_NAME" value="quickstart-db" /> </env-variables> <vpc-access-connector> <name>projects/PROJECT_ID /locations/us-central1/connectors/quickstart-connector</name> <egress-setting>all-traffic</egress-setting> </vpc-access-connector>
mvn clean package appengine:deploy -DskipTests
gcloud app browse
Crea e scarica certificati client e server SSL
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Fai clic su
quickstart-instance
per visualizzare la pagina Panoramica - Fai clic sulla scheda Connessioni.
- Nella sezione Sicurezza, fai clic su Crea certificato client.
- Nella finestra di dialogo Crea un certificato client,
inserisci
quickstart-key
come nome e fai clic su Crea. Nella finestra di dialogo Nuovo certificato SSL creato, fai clic su ogni link di download per scaricare i certificati. Poi, fai clic su Chiudi.
Creare un'app di esempio con certificati SSL
-
Nell'editor di Cloud Shell, apri il codice sorgente dell'app di esempio.
Apri l'editor di Cloud Shell - Nella finestra di dialogo Apri in Cloud Shell, fai clic su Conferma per scaricare il codice dell'app di esempio e aprire la directory dell'app di esempio nell'editor di Cloud Shell.
- Al prompt dei comandi di Cloud Shell, esegui il seguente comando per attivare il progetto:
gcloud config set project
YOUR-PROJECT-ID - Se viene visualizzata la finestra di dialogo Autorizza Cloud Shell, fai clic su Autorizza.
-
Carica i file dei certificati SSL nella cartella certs.
- Nel menu di navigazione di Explorer dell'editor di Cloud Shell, vai alla
cartella
nodejs-docs-samples/cloud-sql/postgres/knex/certs
. - Fai clic con il tasto destro del mouse sulla cartella certs nell'editor di Cloud Shell e seleziona Carica file.
- Seleziona i seguenti file sul computer locale:
client-key.pem
client-cert.pem
server-ca.pem
- Con i tre file del certificato SSL selezionati, fai clic su Apri per completare la procedura di caricamento dei file nell'editor di Cloud Shell.
- Nel menu di navigazione di Explorer dell'editor di Cloud Shell, vai alla
cartella
- Nel menu di navigazione Explorer di Cloud Shell Editor, fai clic sul nodo espandibile che corrisponde al nome utente del tuo account Google Cloud .
- Individua e apri il file
cloudshell_open/nodejs-docs-samples/cloud-sql/postgres/knex/app.flexible.yaml
. - Copia e incolla il seguente codice nel file, sostituendo i contenuti esistenti del file:
- Apporta le seguenti sostituzioni delle variabili:
- MY_DB_PASSWORD con la password di
quickstart-user
che hai creato in Creare un utente. - INSTANCE_HOST con l'indirizzo IP privato dell'istanza visualizzato nella pagina Istanze Cloud SQL nella Google Cloud console.
- PROJECT_ID con il tuo ID progetto.
- Al prompt dei comandi di Cloud Shell, nella directory
cloudshell_open/nodejs-docs-samples/cloud-sql/postgres/knex
, esegui il seguentegcloud app deploy
comando per eseguire il deployment dell'app di esempio nell'ambiente flessibile di App Engine. - Quando ti viene chiesto Vuoi continuare?, inserisci
Y
. - Al termine delle azioni eseguite eseguendo il comando
gcloud app deploy
, esegui il comandogcloud app browse
: - Fai clic sul link generato per visualizzare l'app di esempio in esecuzione nell'ambiente flessibile di App Engine. Questo ambiente è connesso a Cloud SQL.
runtime: nodejs env: flex env_variables: DB_USER: quickstart-user DB_PASS:MY_DB_PASSWORD DB_NAME: quickstart-db DB_PORT: 5432 INSTANCE_HOST:INSTANCE_HOST DB_ROOT_CERT: certs/server-ca.pem DB_CERT: certs/client-cert.pem DB_KEY: certs/client-key.pem PRIVATE_IP: TRUE vpc_access_connector: name: projects/PROJECT_ID /locations/us-central1/connectors/quickstart-connector
gcloud app deploy app.flexible.yaml
gcloud app browse
Crea e scarica certificati client e server SSL
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Fai clic su
quickstart-instance
per visualizzare la pagina Panoramica - Fai clic sulla scheda Connessioni.
- Nella sezione Sicurezza, fai clic su Crea certificato client.
- Nella finestra di dialogo Crea un certificato client,
inserisci
quickstart-key
come nome e fai clic su Crea. Nella finestra di dialogo Nuovo certificato SSL creato, fai clic su ogni link di download per scaricare i certificati. Poi, fai clic su Chiudi.
Creare un'app di esempio con certificati SSL
-
Nell'editor di Cloud Shell, apri il codice sorgente dell'app di esempio.
Apri l'editor di Cloud Shell - Nella finestra di dialogo Apri in Cloud Shell, fai clic su Conferma per scaricare il codice dell'app di esempio e aprire la directory dell'app di esempio nell'editor di Cloud Shell.
- Al prompt dei comandi di Cloud Shell, esegui il seguente comando per attivare il progetto:
gcloud config set project
YOUR-PROJECT-ID - Se viene visualizzata la finestra di dialogo Autorizza Cloud Shell, fai clic su Autorizza.
-
Carica i file dei certificati SSL nella cartella certs.
- Nel menu di navigazione di Explorer dell'editor di Cloud Shell, vai alla
cartella
python-docs-samples/cloud-sql/postgres/sqlalchemy/certs
. - Fai clic con il tasto destro del mouse sulla cartella certs nell'editor di Cloud Shell e seleziona Carica file.
- Seleziona i seguenti file sul computer locale:
client-key.pem
client-cert.pem
server-ca.pem
- Con i tre file del certificato SSL selezionati, fai clic su Apri per completare la procedura di caricamento dei file nell'editor di Cloud Shell.
- Nel menu di navigazione di Explorer dell'editor di Cloud Shell, vai alla
cartella
- Nel menu di navigazione Explorer di Cloud Shell Editor, fai clic sul nodo espandibile che corrisponde al nome utente del tuo account Google Cloud .
- Individua e apri il file
cloudshell_open/python-docs-samples/cloud-sql/postgres/sqlalchemy/app.flexible.yaml
. - Copia e incolla il seguente codice nel file, sostituendo i contenuti esistenti del file:
- Apporta le seguenti sostituzioni delle variabili:
- YOUR_DB_PASSWORD con la password di
quickstart-user
che hai creato in Creare un utente. - INSTANCE_HOST con l'indirizzo IP privato dell'istanza visualizzato nella pagina Istanze Cloud SQL nella Google Cloud console.
- PROJECT_ID con il tuo ID progetto.
- Al prompt dei comandi di Cloud Shell, nella directory
cloudshell_open/python-docs-samples/cloud-sql/postgres/sqlalchemy
, esegui il seguentegcloud app deploy
comando per eseguire il deployment dell'app di esempio nell'ambiente flessibile di App Engine. - Quando ti viene chiesto Vuoi continuare?, inserisci
Y
. - Al termine delle azioni eseguite eseguendo il comando
gcloud app deploy
, esegui il comandogcloud app browse
: - Fai clic sul link generato per visualizzare l'app di esempio in esecuzione nell'ambiente flessibile di App Engine. Questo ambiente è connesso a Cloud SQL.
runtime: custom env: flex entrypoint: gunicorn -b :$PORT app:appentrypoint: gunicorn -b :$PORT app:app env_variables: DB_USER: quickstart-user DB_PASS:YOUR_DB_PASSWORD DB_NAME: quickstart-db DB_PORT: 5432 INSTANCE_HOST:INSTANCE_HOST DB_ROOT_CERT: certs/server-ca.pem DB_CERT: certs/client-cert.pem DB_KEY: certs/client-key.pem PRIVATE_IP: TRUE vpc_access_connector: name: projects/PROJECT_ID /locations/us-central1/connectors/quickstart-connector
gcloud app deploy app.flexible.yaml
gcloud app browse
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate su questa pagina, segui questi passaggi.
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Seleziona l'istanza
quickstart-instance
per aprire la pagina Dettagli istanza. - Nella barra delle icone nella parte superiore della pagina, fai clic su Elimina.
- Nella finestra di dialogo Elimina istanza, digita
quickstart-instance
e fai clic su Elimina per eliminare l'istanza. La disattivazione dell'app ne impedisce l'esecuzione delle istanze e la gestione delle richieste. Se la tua app sta elaborando una richiesta, la completa prima di essere disattivata.
Per disattivare un'app App Engine e conservarne i dati, segui i passaggi riportati di seguito:
Nella console Google Cloud, vai alla pagina Impostazioni:
Nella scheda Impostazioni applicazione, fai clic su Disabilita applicazione.
Nel campo ID app, inserisci l'ID dell'app che vuoi disattivare e poi fai clic su Disattiva.
Passaggi facoltativi per la pulizia
Se non utilizzi il ruolo Client Cloud SQL che hai assegnato all'account di servizio Compute Engine, puoi rimuoverlo.
-
Nella console Google Cloud, vai alla pagina IAM.
- Fai clic sull'icona di modifica (a forma di matita) per l'account IAM denominato Account di servizio predefinito Compute Engine.
- Elimina il ruolo Client Cloud SQL.
- Fai clic su Salva.
Se non utilizzi le API attivate nell'ambito di questa guida rapida, puoi disattivarle.
- API abilitate in questa guida rapida:
- API Compute Engine
- API Cloud SQL Admin
- API Cloud Run
- API Container Registry
- API Cloud Build
Nella console Google Cloud, vai alla pagina API.
Seleziona l'API che vuoi disattivare e fai clic sul pulsante Disattiva API.
Passaggi successivi
In base alle tue esigenze, puoi scoprire di più sulla creazione di istanze Cloud SQL.Puoi anche scoprire come creare utenti e database PostgreSQL per la tua istanza Cloud SQL.
Per ulteriori informazioni sui prezzi, consulta la pagina Prezzi di Cloud SQL per PostgreSQL.
Scopri di più su:
- Configurare l'istanza Cloud SQL con un indirizzo IP pubblico.
- Configurare l'istanza Cloud SQL con un indirizzo IP privato.
Inoltre, puoi scoprire come connetterti a un'istanza Cloud SQL da altri prodotti Google Cloud: