Panoramica
In questo lab configurerai un server Cloud SQL e imparerai a collegarvi un'applicazione tramite proxy su una connessione esterna. Inoltre, configurerai una connessione su un link IP privato che offre vantaggi in termini di prestazioni e sicurezza. L'app che abbiamo scelto di dimostrare in questo lab è Wordpress, ma le informazioni e le best practice sono applicabili a qualsiasi applicazione che richieda SQL Server.
Alla fine di questo lab, avrai due istanze worker del frontend di Wordpress collegate tra loro su due diversi tipi di connessione al backend dell'istanza SQL, come mostrato in questo diagramma:

Obiettivi
In questo lab imparerai a svolgere le seguenti attività:
- Creare un database Cloud SQL
- Configurare una macchina virtuale perché esegua un proxy
- Creare una connessione tra un'applicazione e Cloud SQL
- Connettere un'applicazione a Cloud SQL utilizzando un indirizzo IP privato
Configurazione e requisiti
Per ciascun lab, riceverai un nuovo progetto Google Cloud e un insieme di risorse per un periodo di tempo limitato senza alcun costo aggiuntivo.
-
Fai clic sul pulsante Avvia lab. Se devi effettuare il pagamento per il lab, si apre una finestra popup per permetterti di selezionare il metodo di pagamento.
A sinistra, trovi il riquadro Dettagli lab con le seguenti informazioni:
- Il pulsante Apri console Google Cloud
- Tempo rimanente
- Credenziali temporanee da utilizzare per il lab
- Altre informazioni per seguire questo lab, se necessario
-
Fai clic su Apri console Google Cloud (o fai clic con il tasto destro del mouse e seleziona Apri link in finestra di navigazione in incognito se utilizzi il browser Chrome).
Il lab avvia le risorse e apre un'altra scheda con la pagina di accesso.
Suggerimento: disponi le schede in finestre separate posizionate fianco a fianco.
Nota: se visualizzi la finestra di dialogo Scegli un account, fai clic su Usa un altro account.
-
Se necessario, copia il Nome utente di seguito e incollalo nella finestra di dialogo di accesso.
{{{user_0.username | "Username"}}}
Puoi trovare il Nome utente anche nel riquadro Dettagli lab.
-
Fai clic su Avanti.
-
Copia la Password di seguito e incollala nella finestra di dialogo di benvenuto.
{{{user_0.password | "Password"}}}
Puoi trovare la Password anche nel riquadro Dettagli lab.
-
Fai clic su Avanti.
Importante: devi utilizzare le credenziali fornite dal lab. Non utilizzare le credenziali del tuo account Google Cloud.
Nota: utilizzare il tuo account Google Cloud per questo lab potrebbe comportare addebiti aggiuntivi.
-
Fai clic nelle pagine successive:
- Accetta i termini e le condizioni.
- Non inserire opzioni di recupero o l'autenticazione a due fattori, perché si tratta di un account temporaneo.
- Non registrarti per le prove gratuite.
Dopo qualche istante, la console Google Cloud si apre in questa scheda.
Nota: per visualizzare un menu con un elenco di prodotti e servizi Google Cloud, fai clic sul menu di navigazione in alto a sinistra oppure digita il nome del servizio o del prodotto nel campo di ricerca.
Attività 1: crea un database Cloud SQL
In questa attività configurerai un server SQL in base alle best practice di Google Cloud e creerai una connessione mediante IP privato.
- Nel menu di navigazione (
) della console Google Cloud, fai clic su SQL.
Nota:
se compare un popup per esplorare Gemini in Databases fai clic su CHIUDI.
- Fai clic su Crea istanza.
- Fai clic su Scegli MySQL.
- Specifica quanto segue e non modificare le altre impostazioni predefinite:
Proprietà |
Valore |
ID istanza |
wordpress-db |
Password root |
digita una password |
Scegli una versione di Cloud SQL |
Enterprise |
Regione |
|
Zona |
Qualsiasi |
Versione database |
MySQL 5.7 |
Nota:
prendi nota della password root. Sarà utilizzata in un secondo momento e indicata come [ROOT_PASSWORD].
-
Espandi Mostra opzioni di configurazione.
-
Espandi la sezione Configurazione macchina.
-
Esegui il provisioning della quantità corretta di vCPU e memoria. Per scegliere un Configurazione macchina, fai clic sul menu a discesa ed esplora le opzioni.
Nota: alcuni punti da considerare:
Le macchine con core condivisi sono ideali per la prototipazione e non sono coperte dallo SLA di Cloud.
Ogni vCPU è soggetta a un limite di throughput di rete di 250 MB/s per offrire prestazioni di massimo livello. Ogni core aggiuntivo aumenta il limite di rete, fino a un massimo teorico di 2000 MB/s.
Per i carichi di lavoro sensibili alle prestazioni come l'elaborazione delle transazioni online (OLTP), una linea guida generale è quella di garantire che l'istanza disponga di memoria sufficiente per contenere l'intero set di lavoro e contenere il numero di connessioni attive.
-
Per questo lab, seleziona Core dedicato dal menu a discesa, quindi seleziona 1 vCPU, 3,75 GB.
-
Espandi la sezione Spazio di archiviazione, quindi scegli Tipo di archiviazione e Capacità dello spazio di archiviazione.
Nota: alcuni punti da considerare:
SSD (unità a stato solido) è la scelta migliore per la maggior parte dei casi d'uso. HDD (unità a disco rigido) offre prestazioni inferiori, ma i costi di archiviazione sono ridotti notevolmente, pertanto HDD potrebbe essere preferibile per l'archiviazione di dati a cui si accede raramente e che non richiedono una bassissima latenza.
Esiste una relazione diretta tra la capacità di archiviazione e il throughput.
-
Fai clic su ciascuna opzione di capacità per vedere in che modo questa influisce sul throughput. Reimposta l'opzione su 10 GB.
Nota:
l'impostazione di una capacità di archiviazione troppo bassa senza abilitare un aumento automatico dello spazio di archiviazione può provocare la perdita dello SLA (accordo sul livello del servizio) dell'istanza.
-
Espandi la sezione Connessioni.
-
Seleziona IP privato.
-
Nel menu a discesa Rete, seleziona predefinita.
-
Fai clic sul pulsante Configura connessione che viene mostrato.
-
Nel riquadro a destra, fai clic su Abilita API, fai clic su Utilizza un intervallo IP allocato automaticamente, poi fai clic su Continua e infine su Crea connessione.
-
Fai clic su Crea istanza nella parte inferiore della pagina per creare l'istanza di database.
Note:
Potresti dover attendere la propagazione delle modifiche all'IP privato prima che il pulsante Crea diventi cliccabile.
Fai clic su Controlla i miei progressi per verificare l'obiettivo.
Crea un'istanza di Cloud SQL
Attività 2: configura un proxy su una macchina virtuale
In questa attività configurerai un proxy su una macchina virtuale denominata wordpress-proxy per connetterti in modo sicuro a un'istanza Cloud SQL denominata wordpress-db.
Se l'applicazione non risiede nella stessa rete connessa VPC e nella stessa regione della tua istanza Cloud SQL, utilizza un proxy per proteggere la connessione esterna.
Per configurare il proxy devi avere il nome della connessione dell'istanza Cloud SQL.
Nota:
il lab include due macchine virtuali preconfigurate con Wordpress e le sue dipendenze. Puoi visualizzare lo script di avvio e l'accesso al service account facendo clic sul nome di una macchina virtuale. Abbiamo utilizzato il principio del privilegio minimo e concediamo l'accesso SQL solo per questa VM. Inoltre sono presenti un tag di rete e un firewall preconfigurati per autorizzare la porta 80 da qualsiasi host.
-
Nel menu di navigazione (
) della console Google Cloud, fai clic su Compute Engine.
-
Fai clic su SSH accanto a wordpress-proxy.
-
Scarica il proxy Cloud SQL e rendilo eseguibile:
wget https://dl.google.com/cloudsql/cloud_sql_proxy.linux.amd64 -O cloud_sql_proxy && chmod +x cloud_sql_proxy
Per poter avviare il proxy devi avere il nome della connessione dell'istanza Cloud SQL. Tieni aperta la finestra SSH e torna alla console Cloud.
-
Nel menu di navigazione (
), fai clic su SQL.
-
Fai clic sull'istanza wordpress-db e attendi che accanto al nome venga mostrato un segno di spunta verde che indica che è operativa. L'operazione potrebbe richiedere un paio di minuti.
-
Prendi nota del Nome connessione; verrà usato in un secondo momento e denominato [SQL_CONNECTION_NAME].
-
Inoltre, affinché l'applicazione funzioni, è necessario creare una tabella. Fai clic su Database.
-
Fai clic su Crea database, digita wordpress, ovvero il nome dell'applicazione, e fai clic su Crea.
-
Torna alla finestra SSH e salva il nome della connessione in una variabile di ambiente, sostituendo [SQL_CONNECTION_NAME] con il nome univoco che hai copiato in un passaggio precedente:
export SQL_CONNECTION=[SQL_CONNECTION_NAME]
- Per verificare che la variabile di ambiente sia impostata, esegui:
echo $SQL_CONNECTION
Il nome della connessione deve essere stampato.
- Per attivare la connessione proxy al database Cloud SQL e inviare il processo in background, esegui questo comando:
./cloud_sql_proxy -instances=$SQL_CONNECTION=tcp:3306 &
L'output previsto è:
Listening on 127.0.0.1:3306 for [SQL_CONNECTION_NAME]
Ready for new connections
- Premi Invio.
Nota:
il proxy rimane in ascolto su 127.0.0.1:3306 (localhost) e sul proxy che si connette in modo sicuro a Cloud SQL tramite un tunnel protetto usando l'indirizzo IP esterno della macchina.
Fai clic su Controlla i miei progressi per verificare l'obiettivo.
Crea un database e configura un proxy su una macchina virtuale
Attività 3: collega un'applicazione all'istanza Cloud SQL
In questa attività collegherai un'applicazione di esempio all'istanza Cloud SQL.
- Configura l'applicazione Wordpress. Per trovare l'indirizzo IP esterno della tua macchina virtuale, esegui una query sui relativi metadati:
curl -H "Metadata-Flavor: Google" http://169.254.169.254/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip && echo
- Vai all'indirizzo IP esterno del server wordpress-proxy e configura l'applicazione Wordpress.
Nota: se viene visualizzato un popup che indica che EXTERNAL_IP non supporta una connessione sicura, fai clic su Continua sul sito.
-
Fai clic su Iniziamo.
-
Specifica quanto segue, sostituendo [ROOT_PASSWORD] con la password che hai configurato al momento della creazione della macchina e lascia le restanti impostazioni come predefinite:
Proprietà |
Valore |
Nome database |
wordpress |
Nome utente |
root |
Password |
[ROOT_PASSWORD] |
Host database |
127.0.0.1 |
Nota:
stai utilizzando 127.0.0.1, localhost come IP di database, perché il proxy che hai avviato ascolti su questo indirizzo e reindirizzi il traffico al tuo server SQL in modo sicuro.
-
Fai clic su Invia.
-
Una volta stabilita una connessione, fai clic su Esegui l'installazione per creare un'istanza di Wordpress e del relativo database in Cloud SQL. L'operazione potrebbe richiedere qualche istante.
-
Completa le informazioni del tuo sito dimostrativo con informazioni casuali e fai clic su Installa Wordpress. Non dovrai ricordare né utilizzare questi dettagli.
Nota:
l'installazione di Wordpress potrebbe richiedere fino a tre minuti perché propaga tutti i suoi dati al tuo SQL Server.
- Quando viene visualizzata la finestra "Operazione riuscita", rimuovi il testo che segue l'indirizzo IP nella barra degli indirizzi del browser web e premi Invio.
Verrà visualizzato un blog Wordpress funzionante.
Attività 4: connettiti a Cloud SQL tramite IP interno
In questa attività configurerai l'applicazione per connetterti a un'istanza Cloud SQL denominata wordpress-db utilizzando il relativo indirizzo IP privato.
Se puoi ospitare l'applicazione nella stessa regione e nella stessa rete connessa VPC del tuo Cloud SQL, puoi utilizzare una configurazione più sicura ed efficiente mediante l'IP privato.
Se utilizzi l'IP privato, puoi aumentare le prestazioni diminuendo la latenza e ridurre al minimo la superficie di attacco dell'istanza Cloud SQL, perché puoi comunicare con quest'ultima solo su IP interni.
- Nel menu di navigazione (
) della console Google Cloud, fai clic su SQL.
- Fai clic su wordpress-db.
- Prendi nota dell'indirizzo IP interno del server Cloud SQL. Si chiamerà [SQL_PRIVATE_IP].
- Nel menu di navigazione, fai clic su Compute Engine.
Nota:
tieni presente che wordpress-private-ip si trova in , dove si trova il tuo Cloud SQL, il che ti consente di sfruttare una connessione più sicura.
-
Copia l'indirizzo IP esterno di wordpress-us-private-ip, incollalo in una finestra del browser e premi Invio.
-
Fai clic su Iniziamo.
-
Specifica quanto segue e non modificare le altre impostazioni predefinite:
Proprietà |
Valore |
Nome database |
wordpress |
Nome utente |
root |
Password |
digita la [ROOT_PASSWORD] configurata al momento della creazione dell'istanza Cloud SQL |
Host database |
[SQL_PRIVATE_IP] |
- Fai clic su Invia.
Nota:
tieni presente che questa volta devi creare una connessione diretta a un IP privato, anziché configurare un proxy. Questa connessione è privata, vale a dire che non trasmette traffico in uscita verso internet, con conseguente miglioramento delle prestazioni e della sicurezza.
-
Fai clic su Esegui l'installazione.
Viene visualizzata la finestra "Già installata", a indicare che l'applicazione è connessa al server Cloud SQL tramite IP privato.
-
Nella barra degli indirizzi del browser web, rimuovi il testo che segue l'indirizzo IP e premi Invio.
Verrà visualizzato un blog Wordpress funzionante.
Attività 5: riepilogo
In questo lab hai creato un database Cloud SQL e lo hai configurato in modo che utilizzasse sia una connessione esterna su un proxy sicuro sia su un indirizzo IP privato, più sicuro e più efficiente. Ricorda che puoi connetterti tramite IP privato solo se l'applicazione e il server Cloud SQL si trovano nella stessa regione e fanno parte della stessa rete VPC. Se la tua applicazione è ospitata in un'altra regione, in un altro VPC o anche in un altro progetto, utilizza un proxy per proteggerne la connessione sulla connessione esterna.
Termina il lab
Una volta completato il lab, fai clic su Termina lab. Google Cloud Skills Boost rimuove le risorse che hai utilizzato ed esegue la pulizia dell'account.
Avrai la possibilità di inserire una valutazione in merito alla tua esperienza. Seleziona il numero di stelle applicabile, inserisci un commento, quindi fai clic su Invia.
Il numero di stelle corrisponde alle seguenti valutazioni:
- 1 stella = molto insoddisfatto
- 2 stelle = insoddisfatto
- 3 stelle = esperienza neutra
- 4 stelle = soddisfatto
- 5 stelle = molto soddisfatto
Se non vuoi lasciare un feedback, chiudi la finestra di dialogo.
Per feedback, suggerimenti o correzioni, utilizza la scheda Assistenza.
Copyright 2020 Google LLC Tutti i diritti riservati. Google e il logo Google sono marchi di Google LLC. Tutti gli altri nomi di società e prodotti sono marchi delle rispettive società a cui sono associati.