Connettersi a Cloud SQL per MySQL da funzioni di Cloud Run
Scopri come eseguire il deployment di un'app di esempio sulle funzioni Cloud Run connesse a un'istanza MySQL utilizzando la console Google Cloud e un'applicazione 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.
-
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 sulle funzioni Cloud Run.
Console
Fai clic su Abilita API per abilitare le API richieste per questa guida introduttiva.
Ciò abilita le seguenti API:
- API Cloud Run Functions
- API Cloud SQL Admin
- API Cloud Run Admin
- API Cloud Build
- API Artifact Registry
- API Eventarc
- API Compute Engine
- API Service Networking
- API Cloud Logging
gcloud
Fai clic sul seguente pulsante per aprire Cloud Shell, che fornisce accesso da riga di comando alle risorse Google Cloud direttamente dal browser. Cloud Shell può essere utilizzato per eseguire i comandi
gcloud
presentati in questa guida rapida.Esegui questo comando
gcloud
utilizzando Cloud Shell:gcloud services enable cloudfunctions.googleapis.com sqladmin.googleapis.com run.googleapis.com cloudbuild.googleapis.com artifactregistry.googleapis.com eventarc.googleapis.com compute.googleapis.com servicenetworking.googleapis.com pubsub.googleapis.com logging.googleapis.com
Questo comando abilita le seguenti API:
- API Cloud Run Functions
- API Cloud SQL Admin
- API Cloud Run
- API Cloud Build
- API Artifact Registry
- API Eventarc
- API Compute Engine
- API Service Networking
- API Cloud Logging
Aggiungi il ruolo IAM Invoker delle funzioni di Cloud Run all'utente.
Configura Cloud SQL
Crea un'istanza Cloud SQL
Crea un database
Console
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Seleziona
quickstart-instance
. - Dal menu di navigazione SQL, seleziona Database.
- Fai clic su Crea database.
- Nel campo Nome database della finestra di dialogo Crea un database, inserisci
quickstart-db
. Lascia invariati i valori del set di caratteri e delle regole di confronto. - Fai clic su Crea.
gcloud
Esegui il comando gcloud
sql databases create
per creare un database.
gcloud sql databases create quickstart-db --instance=quickstart-instance
Crea un utente
Console
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Per aprire la pagina Panoramica di un'istanza, fai clic sul nome dell'istanza.
- Nel menu di navigazione SQL, seleziona Utenti.
- Fai clic su Aggiungi account utente.
- Nella pagina Aggiungi un account utente per l'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 questo valore per utilizzarlo in un passaggio successivo di questa guida rapida.
- Nel campo Nome utente, inserisci
- Fai clic su Aggiungi.
gcloud
Prima di eseguire il comando seguente, effettua le seguenti sostituzioni:
- DB_PASS con una password per l'utente del database. Conservalo per utilizzarlo in un passaggio successivo di questa guida rapida.
Esegui il comando gcloud sql users create
per creare l'utente.
gcloud sql users create quickstart-user \ --instance=quickstart-instance \ --password=DB_PASS
I limiti di lunghezza del nome utente sono gli stessi per Cloud SQL e per MySQL on-premise; 32 caratteri per MySQL 8.0 e successivi, 16 caratteri per versioni precedenti.
Configura un account di servizio per le funzioni Cloud Run
Console
-
Nella console Google Cloud, vai alla pagina IAM.
- Per l'account di servizio denominato Account di servizio predefinito Compute 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.
gcloud
-
Esegui il seguente comando
gcloud
per ottenere un elenco degli account di servizio del tuo progetto:gcloud iam service-accounts list
- Copia l'EMAIL dell'account di servizio Compute Engine.
- Esegui questo comando per aggiungere il client Cloud SQL
il ruolo nell'account di servizio Compute Engine:
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \ --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \ --role="roles/cloudsql.client"
Crea una funzione
-
Nella console Google Cloud, vai alla pagina Funzioni Cloud Run.
- Fai clic su Crea funzione.
- Per Ambiente, seleziona 2ª gen..
- Nel campo Nome funzione, inserisci
quickstart-function
. - Nella regione Autenticazione, seleziona Consenti chiamate non autenticate.
- Fai clic su Avanti.
- Dal menu Runtime, seleziona una delle seguenti lingue:
- Nel menu Codice sorgente, verifica che sia selezionato Editor incorporato. In questo passaggio, utilizzerai la funzione predefinita fornita nell'editor.
Lingua | Numero di versione |
---|---|
Vai | 1,20 |
Java | 17 |
Node.js | 18 |
Python | 3,10 |
esegui il deployment della funzione
- Nella parte inferiore della pagina delle funzioni Cloud Run, fai clic su Esegui il deployment. La console Google Cloud ti reindirizza alla pagina dei dettagli della funzione.
- Al termine del deployment della funzione, fai clic sul link URL per visualizzare
un browser web in cui è visualizzato il messaggio
Hello, World!
.
Esegui il deployment dell'app di esempio Cloud SQL come funzione
Configura e esegui il deployment dell'app di esempio Cloud SQL come funzione nelle funzioni Cloud Run. Innanzitutto, usa Cloud Shell per configurare e creare di esempio. Quindi, utilizzerai le funzioni di Cloud Run per eseguire il deployment dell'app di esempio.
Esistono due modi per configurare, compilare e implementare l'app, a seconda che tu abbia creato un'istanza Cloud SQL per MySQL con un IP pubblico o privato.
Configura un'app di esempio Cloud SQL
Esegui il deployment dell'app di esempio
I passaggi per eseguire il deployment dell'esempio nelle funzioni Cloud Run dipendono dal tipo di indirizzo IP assegnato all'istanza Cloud SQL.
Esegui la pulizia
Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.
-
Nella console Google Cloud, vai alla pagina Istanze Cloud SQL.
- Seleziona l'istanza
quickstart-instance
per aprire 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 poi fai clic su Elimina per eliminare l'istanza. -
Nella console Google Cloud, vai alla pagina Funzioni di Cloud Run.
- Seleziona la casella di controllo accanto al nome del servizio
quickstart-function
. - Fai clic su Elimina nella parte superiore della pagina delle funzioni di Cloud Run.
Passaggi facoltativi di pulizia
Se non utilizzi il ruolo Client Cloud SQL che hai assegnato al l'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 abilitate in 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 disabilitare e fai clic sul pulsante Disabilita 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 MySQL per la tua istanza Cloud SQL.
Per ulteriori informazioni sui prezzi, consulta la pagina Prezzi di Cloud SQL per MySQL.
Scopri di più su:
- Configura l'istanza Cloud SQL con un indirizzo IP pubblico.
- Configura l'istanza Cloud SQL con un indirizzo IP privato.
Inoltre, puoi scoprire come connetterti a un'istanza Cloud SQL altre applicazioni Google Cloud: