
Before you begin
- Labs create a Google Cloud project and resources for a fixed time
- Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
- On the top left of your screen, click Start lab to begin
Configure HTTP and health check firewall rules
/ 25
Configure instance templates and instance group
/ 25
Configure the HTTP Load Balancer
/ 25
Blacklist the siege-vm
/ 25
Il bilanciamento del carico delle applicazioni di Google Cloud è implementato sul perimetro della rete Google, nei punti di presenza (POP) Google in tutto il mondo. Il traffico utente indirizzato a un bilanciatore del carico delle applicazioni entra nella rete Google attraverso il POP più vicino all'utente. Quindi, il carico viene bilanciato sulla rete Google globale e indirizzato verso il backend più vicino con capacità disponibile sufficiente.
Le liste IP bloccate/consentite di Cloud Armor consentono di limitare o consentire l'accesso al bilanciatore del carico delle applicazioni sul perimetro di Google Cloud, nel punto più vicino all'utente e a potenziale traffico dannoso. In questo modo è possibile impedire a utenti malintenzionati di utilizzare una quantità eccessiva di risorse o di penetrare nelle reti VPC (Virtual Private Cloud).
In questo lab configurerai un bilanciatore del carico delle applicazioni con backend globali, come illustrato dal diagramma riportato di seguito. Successivamente, sottoporrai il bilanciatore del carico a uno stress test e inserirai l'IP dello stress test in una lista bloccata utilizzando Cloud Armor.
In questo lab imparerai a eseguire le attività seguenti:
Leggi le seguenti istruzioni. I lab sono a tempo e non possono essere messi in pausa. Il timer si avvia quando fai clic su Avvia lab e ti mostra per quanto tempo avrai a disposizione le risorse Google Cloud.
Con questo lab pratico avrai la possibilità di completare le attività in prima persona, in un ambiente cloud reale e non di simulazione o demo. Riceverai delle nuove credenziali temporanee che potrai utilizzare per accedere a Google Cloud per la durata del lab.
Per completare il lab, avrai bisogno di:
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:
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.
Se necessario, copia il Nome utente di seguito e incollalo nella finestra di dialogo di accesso.
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.
Puoi trovare la Password anche nel riquadro Dettagli lab.
Fai clic su Avanti.
Fai clic nelle pagine successive:
Dopo qualche istante, la console Google Cloud si apre in questa scheda.
Configura regole firewall per consentire il traffico HTTP nei backend e il traffico TCP proveniente dal controllo di integrità di Google Cloud.
Crea una regola firewall per consentire il traffico HTTP verso i backend.
Nella console Cloud, vai a Menu di navigazione () > Rete VPC > Firewall.
Osserva le regole firewall ICMP, interno, RDP ed SSH esistenti.
Ogni progetto di Google Cloud viene avviato con la rete predefinita e queste regole firewall.
Fai clic su Crea regola firewall.
Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Nome | default-allow-http |
Rete | predefinita |
Destinazioni | Tag di destinazione specificati |
Tag di destinazione | http-server |
Filtro di origine | Intervalli IPv4 |
Intervalli IPv4 di origine | 0.0.0.0/0 |
Protocolli e porte | Protocolli e porte specificati, quindi seleziona TCP e digita: 80 |
Assicurati di includere la porzione /0 nel campo Intervalli IPv4 di origine per specificare tutte le reti.
I controlli di integrità determinano quali istanze di un bilanciatore del carico possono ricevere nuove connessioni. Per il bilanciatore del carico delle applicazioni, i probe di controllo di integrità che verificano le tue istanze con bilanciamento del carico provengono da indirizzi inclusi negli intervalli 130.211.0.0/22
e 35.191.0.0/16
. Le regole firewall devono consentire queste connessioni.
Sempre nella pagina Criteri firewall, fai clic su Crea regola firewall.
Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Nome | default-allow-health-check |
Rete | predefinita |
Destinazioni | Tag di destinazione specificati |
Tag di destinazione | http-server |
Filtro di origine | Intervalli IPv4 |
Intervalli IPv4 di origine |
130.211.0.0/22 , 35.191.0.0/16
|
Protocolli e porte | Protocolli e porte specificati, quindi seleziona TCP |
Fai clic su Crea.
Fai clic su Controlla i miei progressi per verificare l'obiettivo.
Un gruppo di istanze gestite utilizza un modello di istanza per creare un gruppo di istanze identiche, che puoi utilizzare per creare i backend del bilanciatore del carico delle applicazioni.
Un modello di istanza è una risorsa API che puoi utilizzare per creare istanze VM e gruppi di istanze gestite. I modelli di istanza definiscono il tipo di macchina, l'immagine del disco di avvio, la subnet, le etichette e altre proprietà dell'istanza.
Crea un modello di istanza per
Nella console Cloud, vai a Menu di navigazione () > Compute Engine > Modelli di istanza e fai clic su Crea modello istanza.
Per Nome, digita
Per Località, seleziona Globale.
In corrispondenza di Serie, seleziona E2.
Per Tipo di macchina, seleziona e2-micro.
Fai clic su Opzioni avanzate.
Fai clic su Networking. Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Tag di rete | http-server |
Fai clic su valore predefinito in Interfacce di rete. Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Rete | predefinita |
Subnet | predefinita |
Fai clic su Fine.
Il tag di rete http-server assicura che a queste istanze vengano applicate le regole firewall per HTTP e Controllo di integrità.
Fai clic sulla scheda Gestione.
In Metadati, fai clic su + AGGIUNGI ELEMENTO e specifica quanto segue:
Chiave | Valore |
---|---|
startup-script-url | gs://cloud-training/gcpnet/httplb/startup.sh |
L'opzione startup-script-url
indica uno script che viene eseguito quando vengono avviate le istanze. Questo script installa Apache e modifica la pagina di benvenuto per includere l'indirizzo IP del client e il nome, la regione e la zona dell'istanza VM. Puoi esaminare il codice dello script qui.
Ora crea un altro modello di istanza per subnet-b copiando
Crea un gruppo di istanze gestite in
Sempre in Compute Engine, fai clic su Gruppi di istanze nel menu a sinistra.
Fai clic su Crea gruppo di istanze.
Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Nome |
|
Modello di istanza |
|
Località | Più zone |
Regione | |
Numero minimo di istanze | 1 |
Numero massimo di istanze | 2 |
Indicatori di scalabilità automatica > Clic sul menu a discesa > Tipo di indicatore | Utilizzo CPU |
Utilizzo CPU target | 80, fai clic su Fine. |
Periodo di inizializzazione | 45 |
I gruppi di istanze gestite offrono funzionalità di scalabilità automatica che permettono di aggiungere o rimuovere automaticamente le istanze da un gruppo di istanze gestite in base agli incrementi o alle riduzioni del carico. La scalabilità automatica consente alle applicazioni di gestire agevolmente l'aumento del traffico e riduce i costi quando il fabbisogno di risorse è inferiore. È sufficiente definire i criteri di scalabilità automatica e il gestore della scalabilità automatica eseguirà il ridimensionamento in base al carico misurato.
Ora ripeti la stessa procedura per creare un secondo gruppo di istanze per
Fai clic su Crea gruppo di istanze.
Imposta i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Nome |
|
Modello di istanza |
|
Località | Più zone |
Regione | |
Numero minimo di istanze | 1 |
Numero massimo di istanze | 2 |
Indicatori di scalabilità automatica > Clic sul menu a discesa > Tipo di indicatore | Utilizzo CPU |
Utilizzo CPU target | 80, fai clic su Fine. |
Periodo di inizializzazione | 45 |
Fai clic su Crea.
Fai clic su Controlla i miei progressi per verificare l'obiettivo.
Verifica che le istanze VM vengano create in entrambe le regioni e che siano in grado di accedere ai propri siti HTTP.
Sempre in Compute Engine, nel menu a sinistra, fai clic su Istanze VM.
Nota le istanze che iniziano con
Queste istanze fanno parte dei gruppi di istanze gestite.
Fai clic sull'IP esterno di un'istanza di
Dovresti vedere l'indirizzo IP client (il tuo indirizzo IP), il Nome host (che inizia con
Fai clic sull'IP esterno di un'istanza di
Dovresti vedere l'indirizzo IP client (il tuo indirizzo IP), il Nome host (che inizia con
Configura il bilanciatore del carico delle applicazioni per bilanciare il traffico tra i due backend (
Nella console Cloud, fai clic sul menu di navigazione () > fai clic su VISUALIZZA TUTTI I PRODOTTI > Networking > Servizi di rete > Bilanciamento del carico.
Fai clic su Crea bilanciatore del carico.
In Bilanciatore del carico delle applicazioni (HTTP/S), fai clic su Avanti.
In Pubblico o interno, seleziona Pubblico (esterno) e fai clic su Avanti.
In Deployment globale o in una regione singola, seleziona Ideale per carichi di lavoro globali e fai clic su Avanti.
In Crea bilanciatore del carico, fai clic su Configura.
Imposta Nome bilanciatore del carico su http-lb
.
Le regole relative a host e percorso determinano come sarà indirizzato il traffico. Ad esempio, potresti decidere di indirizzare il traffico video a un backend e il traffico statico a un altro. Tuttavia, non configurerai le regole relative a host e percorso in questo lab.
Fai clic su Configurazione frontend.
Specifica quanto segue, lasciando le impostazioni predefinite per tutti gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Protocollo | HTTP |
Versione IP | IPv4 |
Indirizzo IP | Temporaneo |
Porta | 80 |
Fai clic su Fine.
Fai clic su Aggiungi IP e porta frontend.
Specifica quanto segue, lasciando le impostazioni predefinite per tutti gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Protocollo | HTTP |
Versione IP | IPv6 |
Indirizzo IP | Allocazione automatica |
Porta | 80 |
Fai clic su Fine.
Il bilanciamento del carico delle applicazioni supporta sia indirizzi IPv4 sia indirizzi IPv6 per il traffico client. Le richieste client da indirizzi IPv6 vengono terminate al livello del bilanciamento del carico globale e, successivamente, vengono inviate tramite proxy ai tuoi backend su IPv4.
I servizi di backend indirizzano il traffico in ingresso a uno o più backend collegati. Ciascun backend è composto da un gruppo di istanze e da metadati aggiuntivi relativi alla capacità di distribuzione.
Fai clic su Configurazione backend.
In Servizi e bucket di backend, fai clic su Crea un servizio di backend.
Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (seleziona l'opzione come specificato) |
---|---|
Nome | http-backend |
Gruppo di istanze |
|
Numeri di porta | 80 |
Modalità di bilanciamento | Frequenza |
Massimo RPS | 50 |
Capacità | 100 |
Questa configurazione fa sì che il bilanciatore del carico tenti di mantenere il numero di richieste al secondo inviate a ciascuna istanza di
Fai clic su Fine.
Fai clic su Aggiungi un backend.
Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (seleziona l'opzione come specificato) |
---|---|
Gruppo di istanze |
|
Numeri di porta | 80 |
Modalità di bilanciamento | Utilizzo |
Utilizzo backend massimo | 80 |
Capacità | 100 |
Con questa configurazione, il bilanciatore del carico tenta di mantenere l'utilizzo della CPU entro l'80% per ciascuna istanza di
Fai clic su Fine.
In Controllo di integrità, seleziona Crea un controllo di integrità.
Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (seleziona l'opzione come specificato) |
---|---|
Nome | http-health-check |
Protocollo | TCP |
Porta | 80 |
I controlli di integrità determinano quali istanze ricevono nuove connessioni. Questo controllo di integrità HTTP esegue il polling delle istanze ogni 5 secondi, attende fino a 5 secondi una risposta e considera 2 tentativi riusciti o 2 tentativi non riusciti rispettivamente come stato integro o non integro.
1
.[LB_IP_v4]
e [LB_IP_v6]
.Fai clic su Controlla i miei progressi per verificare l'obiettivo.
Ora che hai creato il bilanciatore del carico delle applicazioni per i tuoi backend, verifica che il traffico sia inoltrato al servizio di backend.
Per testare l'accesso al bilanciatore del carico delle applicazioni su IPv4, apri una nuova scheda del browser e vai all'indirizzo http://[LB_IP_v4]
. Accertati di sostituire [LB_IP_v4]
con l'indirizzo IPv4 del bilanciatore del carico.
Se hai un indirizzo IPv6 locale, prova a utilizzare l'indirizzo IPv6 del bilanciatore del carico delle applicazioni andando all'indirizzo http://[LB_IP_v6]
. Accertati di sostituire [LB_IP_v6]
con l'indirizzo IPv6 del bilanciatore del carico.
Crea una nuova macchina virtuale per simulare un carico sul bilanciatore del carico delle applicazioni utilizzando siege
. Quindi, determina se il carico viene bilanciato su entrambi i backend in condizioni di carico elevato.
Nella console, vai a Menu di navigazione () > Compute Engine > Istanze VM.
Fai clic su Crea istanza.
Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Nome | siege-vm |
Regione | |
Zona | |
Serie | E2 |
Dato che
[LB_IP_v4]
con l'indirizzo IPv4.Nella console Cloud, fai clic sul menu di navigazione () > fai clic su VISUALIZZA TUTTI I PRODOTTI > Networking > Servizi di rete > Bilanciamento del carico.
Fai clic su Backend.
Fai clic su http-backend.
Vai a http-lb.
Fai clic sulla scheda Monitoring.
In Ubicazione frontend (Traffico totale in entrata), osserva per 2 o 3 minuti il traffico tra il Nord America e i due backend.
All'inizio, il traffico dovrebbe essere indirizzato soltanto verso
Questo dimostra che, per impostazione predefinita, il traffico viene inoltrato al backend più vicino, ma non appena il carico diventa eccessivo, il traffico può essere distribuito tra i due backend.
L'output dovrebbe essere simile al seguente:
Utilizzando Cloud Armor inserisci siege-vm nella lista bloccata in modo che non acceda al bilanciatore del carico delle applicazioni.
Crea un criterio di sicurezza di Cloud Armor con una regola di lista bloccata per siege-vm.
[SIEGE_IP]
.Nella console Cloud, fai clic sul menu di navigazione () > fai clic su VISUALIZZA TUTTI I PRODOTTI > Networking > Sicurezza di rete > Policy di Cloud Armor.
Fai clic su Crea policy.
Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Nome | denylist-siege |
Azione regola predefinita | Consenti |
Fai clic su Passaggio successivo.
Fai clic su Aggiungi una regola.
Specifica i valori seguenti e lascia le impostazioni predefinite per gli altri valori:
Proprietà | Valore (digita il valore o seleziona l'opzione come specificato) |
---|---|
Condizione > Corrispondenza | Inserisci SIEGE_IP |
Azione | Nega |
Codice risposta | 403 (Forbidden) |
Priorità | 1000 |
Fai clic su Fine.
Fai clic su Passaggio successivo.
Fai clic su Aggiungi target.
In Tipo, seleziona Servizio di backend (bilanciatore del carico delle applicazioni esterno).
In Destinazione, seleziona http-backend.
Fai clic su Crea policy.
Fai clic su Controlla i miei progressi per verificare l'obiettivo.
Verifica che siege-vm non sia in grado di accedere al bilanciatore del carico delle applicazioni.
L'output dovrebbe essere simile al seguente:
http://[LB_IP_v4]
. Accertati di sostituire [LB_IP_v4]
con l'indirizzo IPv4 del bilanciatore del carico.Il comando non genererà alcun output.
Esamina i log del criterio di sicurezza per determinare se anche questo traffico viene bloccato.
L'origine della richiesta dovrebbe essere l'indirizzo IP di siege-vm. In caso contrario, espandi un'altra voce di log.
DENY
e quello di name denylist-siege
.I criteri di sicurezza di Cloud Armor creano log che possono essere consultati per sapere quando il traffico viene rifiutato e quando viene consentito, nonché per conoscere l'origine del traffico.
Hai configurato un bilanciatore del carico delle applicazioni con backend in
Per informazioni sui concetti fondamentali di Cloud Armor, consulta la documentazione di Cloud Armor.
Per saperne di più sul bilanciamento del carico, consulta la documentazione sul bilanciamento del carico.
… per utilizzare al meglio le tecnologie Google Cloud. I nostri corsi ti consentono di sviluppare competenze tecniche e best practice per aiutarti a metterti subito al passo e avanzare nel tuo percorso di apprendimento. Offriamo vari livelli di formazione, dal livello base a quello avanzato, con opzioni di corsi on demand, dal vivo e virtuali, in modo da poter scegliere il più adatto in base ai tuoi impegni. Le certificazioni ti permettono di confermare e dimostrare le tue abilità e competenze relative alle tecnologie Google Cloud.
Ultimo aggiornamento del manuale: 24 ottobre 2024
Ultimo test del lab: 18 aprile 2024
Copyright 2025 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.