Checkpoint
Create a Cloud SQL instance
/ 5
Create a database and configure a proxy on a Virtual Machine
/ 5
Implementare Cloud SQL (Azure)
Di recente un'azienda IT che utilizza Google Cloud ti ha assunto come principale fornitore di servizi cloud. In qualità di esperto di database SQL, avrai il compito di ricercare e adottare i servizi SQL offerti da Google Cloud. Alcune delle maggiori preoccupazioni sono:
- Deployment
- Sicurezza
- Integrazione app
- Metodi di connettività
Poiché hai lavorato con Azure nel tuo post precedente, sai come eseguire il deployment di SQL Server. Il modello di prezzi si basa su una quantità personalizzabile di unità di transazione del database (DTU) classificate in varie opzioni mirate a diversi scenari di utilizzo.
In Azure utilizzi quanto segue:
- Un'implementazione del proxy per garantire una connessione sicura al database.
- Un bilanciatore del carico HTTP per mantenere la disponibilità del database dell'applicazione.
Puoi utilizzare vari metodi per collegare diverse applicazioni di cui hai eseguito il deployment in precedenza, tra cui:
- Stringhe di connessione
- Integrazione dei servizi delle app web
- Cloud SQL con indirizzi IP privati.
Ora vedrai come puoi usare le funzionalità di Cloud SQL per creare e collegare un database sicuro a un'applicazione.
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 operative 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
Per ciascun lab, riceverai un nuovo progetto Google Cloud e un insieme di risorse per un periodo di tempo limitato senza alcun costo aggiuntivo.
-
Accedi a Qwiklabs utilizzando una finestra di navigazione in incognito.
-
Tieni presente la durata dell'accesso al lab (ad esempio,
1:15:00
) e assicurati di finire entro quell'intervallo di tempo.
Non è disponibile una funzionalità di pausa. Se necessario, puoi riavviare il lab ma dovrai ricominciare dall'inizio. -
Quando è tutto pronto, fai clic su Inizia lab.
-
Annota le tue credenziali del lab (Nome utente e Password). Le userai per accedere a Google Cloud Console.
-
Fai clic su Apri console Google.
-
Fai clic su Utilizza un altro account e copia/incolla le credenziali per questo lab nei prompt.
Se utilizzi altre credenziali, compariranno errori oppure ti verranno addebitati dei costi. -
Accetta i termini e salta la pagina di ripristino delle risorse.
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 (
), fai clic su SQL.
- 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 |
Regione | |
Zona | Qualsiasi |
Versione database | MySQL 5.7 |
-
Espandi Mostra opzioni di configurazione.
-
Espandi la sezione Tipo di macchina.
-
Esegui il provisioning della quantità corretta di vCPU e memoria. Per scegliere un Tipo di macchina, fai clic sul menu a discesa ed esplora le opzioni.
Nota: alcuni punti da considerare:
-
Per questo lab, seleziona standard 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:
- Fai clic su ciascuna opzione di capacità per vedere in che modo questa influisce sulla velocità effettiva. Reimposta l'opzione su 10 GB.
-
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.
Fai clic su Controlla i miei progressi per verificare l'obiettivo.
Attività 2: configura un proxy su una macchina virtuale
Se l'applicazione non risiede nella stessa rete connessa VPC e nella stessa area geografica 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.
-
Nel menu di navigazione (
) fai clic su Compute Engine.
-
Fai clic su SSH accanto a wordpress-proxy.
-
Scarica il proxy Cloud SQL e rendilo eseguibile:
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 istanza; 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:
- Per verificare che la variabile di ambiente sia impostata, esegui:
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:
L'output previsto è:
- Premi Invio.
Fai clic su Controlla i miei progressi per verificare l'obiettivo.
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:
-
Vai all'indirizzo IP esterno del server wordpress-proxy e configura l'applicazione Wordpress.
-
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 utente | root |
Password | [ROOT_PASSWORD] |
Host database | 127.0.0.1 |
-
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.
- 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
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.
- Nella console Cloud, nel menu di navigazione (
), fai clic su SQL.
- Fai clic su wordpress-db.
- Prendi nota dell'indirizzo IP privato del server Cloud SQL. Si chiamerà [SQL_PRIVATE_IP].
- Nel menu di navigazione, fai clic su Compute Engine.
-
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 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.
-
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.
Ora che conosci meglio la creazione e la configurazione di un database in Cloud SQL, vediamo alcune analogie e differenze tra Google Cloud SQL e Azure SQL.
Analogie:
- Azure e Google Cloud gestiscono l'infrastruttura dei database, che comprende le istanze, i backup, gli aggiornamenti e il failover.
- Entrambi Cloud SQL e Azure SQL eseguono il deployment di un proxy per ricevere in modo sicuro le connessioni al di fuori del VPC.
- Entrambi i servizi creano una connessione tramite una stringa di connessione.
- Entrambi i servizi possono utilizzare un IP interno per connettere direttamente un'applicazione e un'istanza di SQL Server se sono collocati all'interno della stessa regione e fanno parte della stessa rete VPC; utilizzando solo indirizzi IP interni puoi migliorare la sicurezza perché in questo modo le connessioni pubbliche non sono consentite.
Differenze:
- Le specifiche per la creazione di un SQL Server sono concepite in modo diverso tra Google Cloud e Azure. In Azure, puoi scegliere tra categorie, DTU e spazio di archiviazione definito. In Google Cloud specifichi direttamente il numero di CPU e lo spazio di archiviazione di cui hai bisogno.
- In Google Cloud disponi di un'autenticazione integrata del database (utente-password) e puoi implementare le librerie del proxy di autenticazione Cloud SQL e del connettore Cloud SQL per fornire un accesso basato su IAM. In Azure, invece, puoi usare i criteri per definire le modalità di ammissione delle richieste. Puoi anche usare un metodo di reindirizzamento (per impostazione predefinita) o un criterio di connessione proxy per elaborare la richiesta. È supportata anche l'autenticazione di Azure Active Directory.
- In Google Cloud ti colleghi all'istanza utilizzando Cloud SQL con due opzioni principali:
- Proxy di autenticazione Cloud SQL: un tunnel sicuro che non richiede una rete autorizzata o un SSL; l'autenticazione e l'autorizzazione avvengono tramite Identity and Access Management (IAM) e OAuth 2.0.
- IP privato: una connessione privata tra la tua rete VPC e la rete VPC del producer di servizi Google sottostante.
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.