API Compute Engine


Questo tutorial mostra come configurare un servizio web disponibile a livello globale Google Compute Engine gruppi di istanze gestite con scalabilità automatica per soddisfare le esigenze di capacità. Puoi utilizzare le tecniche mostrate in questo tutorial per implementare le tue distribuito a livello globale e su Compute Engine.

Obiettivi

  • Esegui il deployment di più gruppi di istanze gestite Compute Engine regionali con e la scalabilità automatica.
  • Creare un bilanciatore del carico tra regioni.
  • Generare traffico di prova da diverse regioni del mondo.
  • Utilizza la Console Google Cloud visualizzare come il bilanciatore del carico instrada le richieste e come l'istanza della scalabilità automatica dei gruppi per soddisfare la domanda.

Costi

Questo tutorial utilizza i componenti fatturabili di Google Cloud, tra cui:

  • Compute Engine

Prima di iniziare

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  2. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  3. Attiva l'API Compute Engine.

    Abilita l'API

Architettura dell'applicazione

L'applicazione include i seguenti componenti di Compute Engine:

  1. Modello di istanza: Un modello utilizzato per creare ogni istanza nei gruppi di istanze.
  2. Gruppi di istanze: Più gruppi di istanze con scalabilità automatica in base al traffico in entrata.
  3. Bilanciatore del carico: Un bilanciatore del carico HTTP che distribuisce il traffico tra i gruppi di istanze.
  4. Istanze: Più istanze di test per generare traffico di prova da parti diverse del globo terrestre.

Diagramma dell'architettura di sistema che mostra un bilanciatore del carico con più gruppi di istanze regionali

Configura il servizio web

crea i gruppi di istanze

Console

  1. Creare una rete per i gruppi di istanze.

    1. Nella console Google Cloud, vai alla pagina Reti VPC.

      Vai alle reti VPC

    2. Fai clic su Crea rete VPC.

    3. Imposta il Nome su fortressnet.

    4. Imposta Modalità creazione subnet su Automatica.

    5. Fai clic su Crea nella parte inferiore della pagina.

  2. Crea una regola firewall per la rete. Questa regola consentirà tutte le richieste HTTP inviate alle tue istanze.

    1. Nella console Google Cloud, vai alla pagina Regole firewall.

      Vai a Regole firewall

    2. Fai clic su Crea regola firewall.

    3. Imposta il Nome su fortressnet-allow-http.

    4. In corrispondenza di Rete, seleziona fortressnet.

    5. In Target, seleziona All instances in the network.

    6. Imposta Intervalli IPv4 di origine su 0.0.0.0/0.

    7. Per Protocolli e porte, scegli Protocolli e porte specificati quindi seleziona la casella di controllo tcp e inserisci 80.

    8. Fai clic su Crea.

  3. Creare un modello di istanza. Includi uno script di avvio che avvii un semplice server web Apache su ogni istanza.

    1. Nella console Google Cloud, vai alla pagina Modelli di istanza.

      Vai a Modelli di istanza

    2. Fai clic su Crea modello istanza.

    3. Imposta il Nome su fort-template.

    4. Per Configurazione macchina, seleziona e2-micro (2 vCPU, 1 GB di memoria).

    5. Nella sezione Opzioni avanzate, espandi Networking, quindi:

      1. Nella sezione Interfacce di rete, espandi la rete a riga di comando per modificarlo.
      2. In Rete, seleziona fortressnet.
    6. Nella sezione Gestione, per Automazione inserisci quanto segue Script di avvio:

      apt update && apt -y install apache2
      

    7. Fai clic su Crea.

  4. Crea più gruppi di istanze gestite a livello di regione utilizzando l'istanza modello. Configura la scalabilità automatica per ogni gruppo di istanze.

    1. Nella console Google Cloud, vai alla pagina Gruppi di istanze.

      Vai a Gruppi di istanze

    2. Fai clic su Crea gruppo di istanze per creare una nuova istanza gestita. gruppo.

    3. Seleziona Nuovo gruppo di istanze gestite (stateless).

    4. Imposta il Nome su us-central1-pool.

    5. In Modello di istanza, seleziona fort-template.

    6. In Località, seleziona Più zone.

    7. In Regione, seleziona us-central1. In Zone, lascia la sono stati selezionati valori predefiniti.

    8. Per Modalità di scalabilità automatica, seleziona On: aggiungi e rimuovi istanze a gruppo.

    9. Imposta Numero minimo di istanze su 1.

    10. Imposta Numero massimo di istanze su 5.

    11. Per Indicatori di scalabilità automatica, modifica la selezione predefinita (CPU ) e imposta il Tipo di indicatore su Bilanciamento del carico HTTP all'utilizzo delle risorse.

    12. Imposta Utilizzo bilanciamento del carico HTTP di destinazione su 80.

    13. Fai clic su Fine.

    14. Fai clic su Crea. In una finestra di dialogo viene visualizzato il messaggio che indica che devi Assegna il gruppo di istanze a un servizio di backend di un carico HTTP. con il bilanciatore del carico di rete passthrough esterno regionale.

    15. Nella finestra di dialogo di conferma, fai clic su Conferma. Puoi configurare il bilanciatore del carico dopo aver creato tutti i gruppi di istanze.

    16. Ripeti questi passaggi per creare altri due gruppi di istanze con le seguenti modifiche:

      • Crea un gruppo con Nome come europe-west1-pool e Regione come europe-west1.
      • Crea un gruppo con Nome come asia-east1-pool e Regione come asia-east1.
  5. (Facoltativo) Verifica che le istanze siano in stato integro e stiano gestendo il traffico HTTP. Testa l'indirizzo IP esterno di una o più istanze. Potresti dover attendere un minuto per il completamento del processo di avvio da parte delle istanze.

    1. Nella console Google Cloud, vai alla pagina Istanze VM.

      Vai a Istanze VM

    2. Verifica che a ogni istanza in esecuzione sia presente un segno di spunta verde nella Colonna Stato accanto al nome del gruppo di istanze.

    3. Copia l'IP esterno di un'istanza e incollalo in un browser web.

    Dovresti vedere la "pagina predefinita di Apache2 Debian" pagina web.

    Se non funziona, prova ad attendere qualche istante.

gcloud

  1. Creare una rete per i gruppi di istanze.

    gcloud compute networks create fortressnet --subnet-mode auto
    
  2. Crea una regola firewall per la rete. Questa regola consentirà tutte le richieste HTTP inviate alle tue istanze.

    gcloud compute firewall-rules create fortressnet-allow-http \
        --network fortressnet \
        --allow tcp:80
    
  3. Creare un modello di istanza. Includi uno script di avvio che avvii un semplice server web Apache su ogni istanza.

    gcloud compute instance-templates create fort-template \
        --machine-type e2-micro \
        --network fortressnet \
        --metadata startup-script='apt update && apt -y install apache2'
    
  4. Crea più gruppi di istanze gestite a livello di regione utilizzando l'istanza modello. Configura la scalabilità automatica per ogni gruppo di istanze.

    gcloud compute instance-groups managed create us-central1-pool \
        --region us-central1 \
        --template fort-template \
        --size 1
    gcloud compute instance-groups managed set-autoscaling us-central1-pool \
        --region us-central1 \
        --min-num-replicas 1 \
        --max-num-replicas 5 \
        --scale-based-on-load-balancing \
        --target-load-balancing-utilization .8
    
    gcloud compute instance-groups managed create europe-west1-pool \
        --region europe-west1 \
        --template fort-template \
        --size 1
    gcloud compute instance-groups managed set-autoscaling europe-west1-pool \
        --region europe-west1 \
        --min-num-replicas 1 \
        --max-num-replicas 5 \
        --scale-based-on-load-balancing \
        --target-load-balancing-utilization .8
    
    gcloud compute instance-groups managed create asia-east1-pool \
        --region asia-east1 \
        --template fort-template \
        --size 1
    gcloud compute instance-groups managed set-autoscaling asia-east1-pool \
        --region asia-east1 \
        --min-num-replicas 1 \
        --max-num-replicas 5 \
        --scale-based-on-load-balancing \
        --target-load-balancing-utilization .8
    
  5. (Facoltativo) Verifica che le istanze siano in stato integro e stiano gestendo il traffico HTTP. Testa l'indirizzo IP esterno di una o più istanze. Potresti dover attendere un minuto per il completamento del processo di avvio da parte delle istanze.

    1. Elenca le tue istanze.

      gcloud compute instances list
      

    2. Verifica nella colonna STATUS che le istanze siano RUNNING.

    3. Controlla un'istanza eseguendo una query sul suo indirizzo IP in EXTERNAL_IP colonna.

      curl http://EXTERNAL_IP | head
      

    Dovresti vedere del testo HTML, inclusa la riga <title>Apache2 Debian Default Page: It works</title>.

    Se non funziona, prova ad attendere qualche istante.

Configura il bilanciatore del carico

Il bilanciatore del carico distribuirà le richieste client tra i vari backend.

Console

Avvia la configurazione

  1. Nella console Google Cloud, vai alla pagina Bilanciamento del carico.

    Vai a Bilanciamento del carico

  2. Fai clic su Crea bilanciatore del carico.
  3. Per Tipo di bilanciatore del carico, seleziona Bilanciatore del carico delle applicazioni (HTTP/HTTPS) e fai clic su Avanti.
  4. Per Pubblico o interno, seleziona Rivolto al pubblico (esterno) e fai clic su Avanti.
  5. Per Deployment globale o in una regione singola, seleziona Ideale per carichi di lavoro e fai clic su Avanti.
  6. Per Generazione del bilanciatore del carico, seleziona Esterno globale Bilanciatore del carico delle applicazioni e fai clic su Avanti.
  7. Fai clic su Configura.

Configurazione di base

  1. Imposta Nome bilanciatore del carico su fortressnet-balancer.

Configurazione backend

  1. Nella pagina Crea bilanciatore del carico delle applicazioni esterno globale, fai clic su Configurazione backend.
  2. Nel campo Creare o selezionare servizi di backend e menu a discesa dei bucket di backend seleziona Servizi di backend, quindi Crea un servizio di backend. Dovresti visualizzare la finestra di dialogo Crea servizio di backend.
  3. Imposta il Nome del servizio di backend su fortressnet-backend-service.
  4. Nella finestra di dialogo Nuovo backend, imposta Gruppo di istanze su asia-east1-pool.
  5. In Modalità di bilanciamento seleziona Tariffa.
  6. Imposta Numero massimo di RPS su 100 RPS per istanza.
  7. Fai clic su Fine.
  8. Fai clic su Aggiungi backend.
  9. Nella finestra di dialogo Nuovo backend, imposta Gruppo di istanze su europe-west1-pool.
  10. In Modalità di bilanciamento seleziona Tariffa.
  11. Imposta Numero massimo di RPS su 100 RPS per istanza.
  12. Fai clic su Fine.
  13. Fai clic su Aggiungi backend.
  14. Nella finestra di dialogo Nuovo backend, imposta Gruppo di istanze su us-central1-pool.
  15. In Modalità di bilanciamento seleziona Tariffa.
  16. Imposta Numero massimo di RPS su 100 RPS per istanza.
  17. Fai clic su Fine.
  18. In Controllo di integrità, seleziona Crea un controllo di integrità.
  19. Imposta il Nome su http-basic-check.
  20. In Protocollo, seleziona HTTP.
  21. Imposta Porta su 80.
  22. Fai clic su Salva e continua.
  23. Fai clic su Crea.

Regole host e percorso

  1. Nel riquadro sinistro della pagina Crea bilanciatore del carico delle applicazioni esterno globale, fai clic su Host e regole percorso.
    Per questo esempio, non è necessario configurare host o percorsi poiché tutto il traffico viene assegnato alla regola predefinita. Possiamo quindi accettare i valori predefiniti precompilati.

Configurazione frontend

  1. Nel riquadro sinistro della pagina Crea bilanciatore del carico delle applicazioni esterno globale, fai clic su Configurazione frontend.
  2. Imposta Nome su fortressnet-http-rule.
  3. Per Versione IP, seleziona IPv4.
  4. In Indirizzo IP, seleziona Crea indirizzo IP.
  5. Nella finestra di dialogo Prenota un nuovo IP statico, imposta Nome su fortressnet-ip.
  6. Fai clic su Prenota e attendi qualche istante.
  7. Fai clic su Fine nella parte inferiore della finestra di dialogo Nuovo IP e porta frontend .
  8. Fai clic su Aggiungi IP e porta frontend.
  9. Imposta Nome su fortressnet-http-ipv6-rule.
  10. Per Versione IP, seleziona IPv6.
  11. In Indirizzo IP, seleziona Crea indirizzo IP.
  12. Nella finestra di dialogo, imposta Nome su fortressnet-ipv6.
  13. Fai clic su Prenota e attendi qualche istante.
  14. Fai clic su Fine nella parte inferiore della finestra di dialogo Nuovo IP e porta frontend .

Esamina e finalizza

  1. Nel riquadro sinistro della pagina Crea bilanciatore del carico delle applicazioni esterno globale, fai clic su Esamina e finalizza.
  2. Confronta le tue impostazioni con lo scopo previsto creare.
  3. Se le impostazioni sono corrette, fai clic su Crea in basso a sinistra dal riquadro. Tornerai alla schermata Bilanciamento del carico. Dopo il caricamento un bilanciatore del carico, un segno di spunta verde accanto indica che in esecuzione.

gcloud

Configurazione backend

  1. Crea un controllo di integrità di base. Questo controllerà se un bilanciatore del carico il backend risponde alle richieste HTTP.

    gcloud compute health-checks create http http-basic-check
    
  2. Creare un servizio di backend globale. Questo servizio di backend riceverà HTTP proveniente dal bilanciatore del carico.

    gcloud compute backend-services create fortressnet-backend-service \
        --protocol HTTP \
        --health-checks http-basic-check \
        --global
    
  3. Aggiungi i gruppi di istanze come backend regionali del servizio di backend. Questa configurazione distribuirà il traffico tra i backend in base a una numero massimo di richieste al secondo (RPS) per istanza.

    gcloud compute backend-services add-backend fortressnet-backend-service \
        --balancing-mode RATE \
        --max-rate-per-instance 100 \
        --instance-group us-central1-pool \
        --instance-group-region us-central1 \
        --global
    gcloud compute backend-services add-backend fortressnet-backend-service \
        --balancing-mode RATE \
        --max-rate-per-instance 100 \
        --instance-group europe-west1-pool \
        --instance-group-region europe-west1 \
        --global
    gcloud compute backend-services add-backend fortressnet-backend-service \
        --balancing-mode RATE \
        --max-rate-per-instance 100 \
        --instance-group asia-east1-pool \
        --instance-group-region asia-east1 \
        --global
    

Regole host e percorso

  1. Definisci una mappa URL. Mappe di URL instradano URL diversi a backend diversi i servizi di machine learning. Dato che abbiamo un solo servizio di backend, lo impostiamo semplicemente come servizio predefinito per tutti gli URL.

    gcloud compute url-maps create fortressnet-balancer \
        --default-service fortressnet-backend-service
    
  2. Creare una route proxy HTTP. Le route proxy HTTP accettano richieste HTTP e indirizzale in base alla tua mappa URL. In questo caso, invierà tutte richieste al tuo singolo servizio di backend.

    gcloud compute target-http-proxies create fortressnet-http-proxy \
        --url-map fortressnet-balancer
    

Configurazione frontend

  1. Crea due indirizzi IP esterni statici globali: uno per IPv4 e uno per IPv6. Questi saranno gli indirizzi IP esterni globali del carico con il bilanciatore del carico di rete passthrough esterno regionale.

    gcloud compute addresses create fortressnet-ip \
        --ip-version IPV4 \
        --network-tier=PREMIUM \
        --global
    gcloud compute addresses create fortressnet-ipv6 \
        --ip-version IPV6 \
        --network-tier=PREMIUM \
        --global
    
  2. Cerca gli indirizzi IP esterni del bilanciatore del carico.

    gcloud compute addresses list
    
  3. Crea regole di forwarding globali per gli indirizzi IP esterni. In questo modo le richieste HTTP sia IPv4 che IPv6 al proxy HTTP.

    gcloud compute forwarding-rules create fortressnet-http-rule \
        --load-balancing-scheme=EXTERNAL \
        --network-tier=PREMIUM \
        --global \
        --target-http-proxy fortressnet-http-proxy \
        --ports 80 \
        --address LOAD_BALANCER_IP_ADDRESS
    
    gcloud compute forwarding-rules create fortressnet-http-ipv6-rule \
        --load-balancing-scheme=EXTERNAL \
        --network-tier=PREMIUM \
        --global \
        --target-http-proxy fortressnet-http-proxy \
        --ports 80 \
        --address LOAD_BALANCER_IPV6_ADDRESS
    

(Facoltativo) Verifica che il bilanciatore del carico funzioni. Potresti dover attendere un minuto o tre.

Console

  1. Nella console Google Cloud, vai alla pagina Bilanciamento del carico.

    Vai a Bilanciamento del carico

  2. Attendi che fortressnet-balancer appaia un segno di spunta verde sotto Colonna Backend.

  3. Fai clic su fortressnet-balancer.

  4. In Frontend, copia l'indirizzo IPv4 nella colonna IP:Port. (gli indirizzi IPv4 sono nel formato www.xxx.yyy.zzz. Non è necessaria numero di porta finale :nn. Se manca la sezione Frontend, prova attendere qualche istante prima di ricaricare la pagina web.

  5. Inserisci l'indirizzo IP in un browser web.

Dovresti vedere la "pagina predefinita di Apache2 Debian" pagina web.

Se viene visualizzato il messaggio "Errore 404 (non trovato)" pagina web, prova ad attendere altri minuti.

gcloud

  1. Cerca gli indirizzi IP esterni del bilanciatore del carico.

    gcloud compute addresses list
    
  2. Esegui una query sull'indirizzo IPv4. Gli indirizzi IPv4 hanno il formato www.xxx.yyy.zzz.

    curl http://LOAD_BALANCER_IP_ADDRESS | head
    

Dovresti vedere del testo HTML, inclusa la riga <title>Apache2 Debian Default Page: It works</title>.

Se vedi invece <title>Error 404 (Not Found)!!1</title>, prova ad attendere un qualche minuto in più.

Best practice: crea un firewall sicuro per consentire solo il traffico interno proveniente dal bilanciatore del carico e il controllo di integrità. Quindi elimina il firewall originale consentito qualsiasi richiesta HTTP. In questo modo le singole istanze non vengono accessibili a clienti esterni.

Console

  1. Creare un nuovo firewall che consenta il traffico solo dal bilanciatore del carico e il controllo di integrità.

    1. Nella console Google Cloud, vai alla pagina Regole firewall.

      Vai a Regole firewall

    2. Fai clic su Crea regola firewall.

    3. Imposta il Nome su fortressnet-allow-load-balancer.

    4. In corrispondenza di Rete, seleziona fortressnet.

    5. In Target, seleziona All instances in the network.

    6. In Intervalli IP di origine digita 130.211.0.0/22 e premi il Invio, quindi digita 35.191.0.0/16 e premi di nuovo Invio.

    7. In Protocolli e porte seleziona TCP e inserisci 80.

    8. Fai clic su Crea.

  2. Elimina il vecchio firewall allow-Tutto.

    1. Seleziona il segno di spunta accanto a fortressnet-allow-http.
    2. Fai clic su Elimina nella parte superiore della pagina.
    3. Nella finestra di dialogo, fai clic su Elimina.

gcloud

  1. Creare un nuovo firewall che consenta il traffico solo dal bilanciatore del carico e il controllo di integrità.

    gcloud compute firewall-rules create fortressnet-allow-load-balancer \
        --network fortressnet \
        --source-ranges 130.211.0.0/22,35.191.0.0/16 \
        --allow tcp:80
    
  2. Elimina il vecchio firewall allow-Tutto.

    gcloud compute firewall-rules delete fortressnet-allow-http -q
    

(Facoltativo) Verificare che la scalabilità automatica e il bilanciamento del carico funzionino

Genera traffico di prova

Supponiamo che sia mattina in Europa e che il tuo servizio web diventi improvvisamente virale sulla internet. Generare contemporaneamente un numero elevato di richieste dei client dall'Europa.

Console

  1. Crea un'istanza installata con lo strumento di test di carico Siege.

    1. Nella console Google Cloud, vai alla pagina Crea un'istanza.

      Vai a Crea un'istanza

    2. Imposta il Nome su europe-loadtest.

    3. In corrispondenza di Regione, seleziona europe-west1.

    4. Per le impostazioni avanzate, espandi le Opzioni avanzate ed eseguire le seguenti operazioni:

      1. Espandi la sezione Gestione.
      2. Nel campo Automazione, inserisci la seguente avvio script:
        apt -y install siege
        
    5. Per creare la VM, fai clic su Crea.

  2. Recupera l'indirizzo IPv4 del bilanciatore del carico.

    1. Nella console Google Cloud, vai alla pagina Bilanciamento del carico.

      Vai a Bilanciamento del carico

    2. Fai clic su fortressnet-balancer.

    3. In Frontend, copia l'indirizzo IPv4 nella colonna IP:Port. Gli indirizzi IPv4 sono nel formato www.xxx.yyy.zzz.

  3. Accedi tramite SSH all'istanza di test di carico.

    1. Nella console Google Cloud, vai alla pagina Istanze VM.

      Vai a Istanze VM

    2. Attendi che l'istanza europe-loadtest abbia un segno di spunta verde nella colonna Nome.

    3. Fai clic su SSH su europe-loadtest nella colonna Connetti.

  4. Inizia l'assedio. Scegli come target l'indirizzo IPv4 del bilanciatore del carico.

    siege -c150 http://LOAD_BALANCER_IP_ADDRESS
    

gcloud

  1. Crea un'istanza installata con lo strumento di test di carico Siege.

    gcloud compute instances create europe-loadtest \
        --network default \
        --zone europe-west1-c \
        --metadata startup-script='apt -y install siege'
    
  2. Recupera l'indirizzo IPv4 del bilanciatore del carico.

    gcloud compute addresses list
    
  3. Apri una nuova sessione shell in cui è disponibile il comando gcloud.

    1. Nella nuova sessione di shell, accedi tramite SSH all'istanza di test di carico.

      gcloud compute ssh --zone europe-west1-c europe-loadtest
      
    2. Inizia l'assedio. Scegli come target l'indirizzo IPv4 del bilanciatore del carico.

      siege -c150 http://LOAD_BALANCER_IP_ADDRESS
      

Dopo aver eseguito il comando siege, dovresti vedere l'output che dichiara The server is now under siege...

[alert] Zip encoding disabled; siege requires zlib support to enable it
** SIEGE 4.0.2
** Preparing 150 concurrent users for battle.
The server is now under siege...

Monitoraggio del bilanciamento del carico e della scalabilità automatica

  1. Nella console Google Cloud, vai alla pagina Bilanciamento del carico.

    Vai a Bilanciamento del carico

  2. Fai clic sul bilanciatore del carico denominato fortressnet-balancer.

  3. Fai clic sulla scheda Monitoring.

  4. Nel menu a discesa Backend, seleziona fortressnet-backend-service.

Potrebbero essere necessari fino a 10 minuti per visualizzare una quantità sufficiente di dati. A breve dovresti vedere una simile alla seguente:

Display di monitoraggio della console Google Cloud che mostra le richieste provenienti dall&#39;Europa distribuite equamente tra tutti e tre i backend.

Che cosa succede qui:

  1. Il test di carico inizia a inviare una grande quantità di traffico contemporaneamente. All'inizio, il bilanciatore del carico distribuisce le richieste equamente tra i tre backend. La il numero di richieste supera rapidamente i limiti di scalabilità automatica e potrebbe persino causerà la restituzione di Backend 5xx errors da parte dei tuoi server, che verrà visualizzato display di monitoraggio. Il gestore della scalabilità automatica inizia ad avviare altre istanze necessaria.

  2. La scalabilità automatica soddisfa le esigenze di capacità. Per ridurre al minimo la latenza delle richieste, I bilanciatori del carico di Compute Engine tentano di instradare le richieste al backend è più vicino al cliente. In questo caso, poiché il carico verifica il traffico proviene dall'Europa, il bilanciatore del carico preferisce indirizzare più richieste per il backend Europe. Di conseguenza, la scalabilità automatica può avviare al backend Europe per gestire una frazione più elevata di richieste.

Genera traffico di prova altrove

Supponiamo che il tuo web service si preoccupi anche in Asia con la connessione a internet pomeridiana pubblico. Generare un numero elevato di richieste dall'Asia.

Console

  1. Per creare un'altra istanza installata con lo strumento di test di carico Siege, procedi nel seguente modo: le seguenti:

    1. Nella console Google Cloud, vai alla pagina Istanze VM.

      Vai a Istanze VM

    2. Fai clic su Crea istanza.

    3. Imposta il Nome su asia-loadtest.

    4. In corrispondenza di Regione, seleziona asia-east1.

    5. Espandi la sezione Opzioni avanzate.

    6. Espandi la sezione Gestione.

    7. Nella sezione Automazione, inserisci il seguente script di avvio:

      apt -y install siege
      

    8. Fai clic su Crea.

  2. Per ottenere l'indirizzo IP del bilanciatore del carico, segui questi passaggi:

    1. Nella console Google Cloud, vai alla pagina Bilanciamento del carico.

      Vai a Bilanciamento del carico

    2. Fai clic su fortressnet-balancer.

    3. In Frontend, copia l'indirizzo IPv4 nel campo IP:Porta. colonna. Gli indirizzi IPv4 sono nel formato www.xxx.yyy.zzz.

  3. Accedi tramite SSH all'istanza di test di carico.

    1. Attendi che l'istanza asia-loadtest abbia un segno di spunta verde sotto la colonna Nome.
    2. Fai clic su SSH su asia-loadtest nella colonna Connetti.
  4. Inizia l'assedio. Scegli come target l'indirizzo IPv4 del bilanciatore del carico.

    siege -c150 http://LOAD_BALANCER_IP_ADDRESS
    

gcloud

  1. Nella sessione di shell originale, crea un'altra istanza installata lo strumento di test del carico Siege.

    gcloud compute instances create asia-loadtest \
        --network default \
        --zone asia-east1-c \
        --metadata startup-script='apt -y install siege'
    
  2. Recupera l'indirizzo IPv4 del bilanciatore del carico.

    gcloud compute addresses list
    
  3. Apri una nuova sessione shell in cui è disponibile il comando gcloud.

    1. Nella nuova sessione di shell, accedi tramite SSH all'istanza di test di carico.

      gcloud compute ssh --zone asia-east1-c asia-loadtest
      
    2. Inizia l'assedio. Scegli come target l'indirizzo IPv4 del bilanciatore del carico.

      siege -c150 http://LOAD_BALANCER_IP_ADDRESS
      

Anche in questo caso, dovresti vedere un output che dichiara The server is now under siege...

[alert] Zip encoding disabled; siege requires zlib support to enable it
** SIEGE 4.0.2
** Preparing 150 concurrent users for battle.
The server is now under siege...

Monitoraggio del bilanciamento del carico e della scalabilità automatica

Torna alla visualizzazione del monitoraggio del bilanciamento del carico dall'ultima volta. L'operazione potrebbe richiedere a dieci minuti per visualizzare una quantità sufficiente di nuovi dati. A breve dovresti vedere un display simile a:

Visualizzazione di monitoraggio della console Google Cloud che mostra le richieste da Europa e Asia distribuite tra tutti e tre i backend

Che cosa succede qui:

  1. Anche in questo caso, il test di carico invia un altro numero elevato di richieste contemporaneamente. Alle ore per prima cosa il bilanciatore del carico distribuisce equamente le richieste tra i tre di backend. Se il numero di richieste supera i limiti di scalabilità automatica, il gestore della scalabilità automatica inizia ad avviare altre istanze secondo necessità.

  2. La scalabilità automatica soddisfa le nuove esigenze di capacità. Il bilanciatore del carico continua preferisce instradare le richieste ai backend più vicini disponibili. Di conseguenza, alla fine il backend per l'Asia riceve richieste principalmente dall'Asia, Il backend per l'Europa riceve richieste principalmente dall'Europa e il backend degli Stati Uniti riceve tutto il resto.

Esegui la pulizia

Al termine del tutorial, puoi eseguire la pulizia delle risorse che hai creato in modo che smettono di usare la quota e comportano addebiti. Le seguenti sezioni descrivono come eliminare o disattivare queste risorse.

Elimina il progetto

Il modo più semplice per eliminare la fatturazione creato per il tutorial.

Per eliminare il progetto:

  1. Nella console Google Cloud, vai alla pagina Gestisci risorse.

    Vai a Gestisci risorse

  2. Nell'elenco dei progetti, seleziona il progetto che vuoi eliminare, quindi fai clic su Elimina.
  3. Nella finestra di dialogo, digita l'ID del progetto e fai clic su Chiudi per eliminare il progetto.

Eliminazione di istanze

Per eliminare un'istanza di Compute Engine:

  1. Nella console Google Cloud, vai alla pagina Istanze VM.

    Vai a Istanze VM

  2. Seleziona la casella di controllo per l'istanza che vuoi eliminare.
  3. Per eliminare l'istanza, fai clic su Altre azioni, quindi su Elimina e segui le istruzioni.

Passaggi successivi