Questo documento spiega come funziona il pool in standby di istanze di macchine virtuali (VM) sospese e arrestate e come puoi utilizzare il pool in standby per accelerare lo scale out di un gruppo di istanze gestite (MIG).
Prima di iniziare
- Consulta la pagina introduttiva sulle VM sospese e arrestate in un gruppo di istanze gestite.
-
Se non l'hai ancora fatto, configura l'autenticazione.
L'autenticazione è il processo mediante il quale viene verificata l'identità per l'accesso ai servizi e alle API Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi autenticarti in Compute Engine nel seguente modo.
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Utilizza le VM sospese se le VM richiedono un'inizializzazione della memoria dispendiosa in termini di tempo, perché le VM sospese mantengono lo stato della memoria. Assicurati che la tua applicazione possa essere sospesa e ripresa. Mantenere lo stato della memoria richiede spazio di archiviazione aggiuntivo e potrebbe comportare costi aggiuntivi.
- Utilizza le VM arrestate se l'inizializzazione delle VM è incentrata principalmente sull'inizializzazione dei dati archiviati nei dischi permanenti.
Nella console Google Cloud, vai alla pagina Gruppi di istanze.
Nella colonna Nome dell'elenco, fai clic sul nome del gruppo di istanze in cui vuoi modificare il criterio di standby.
Fai clic su Modifica per modificare questo gruppo di istanze gestite.
Fai clic su Mostra configurazione avanzata.
Nella sezione Pool in standby, in Modalità, seleziona Scale out.
Nel campo Ritardo iniziale, inserisci il numero di secondi che il gruppo di istanze gestite deve attendere prima di sospendere o arrestare una VM. Il ritardo iniziale dà allo script di inizializzazione il tempo per preparare la VM per lo scale out rapido.
Fai clic su Salva.
MIG_NAME
: il nome del gruppo di istanze gestite.DELAY
: il numero di secondi che il gruppo di istanze gestite deve attendere prima di sospendere o arrestare una VM. Il ritardo iniziale dà allo script di inizializzazione il tempo per preparare la VM per lo scale out rapido.REGION
: per un gruppo di istanze gestite a livello di regione, la regione in cui si trova il gruppo di istanze gestite.ZONE
: per un gruppo di istanze gestite a livello di zona, la zona in cui si trova il gruppo di istanze gestite a livello di zona.PROJECT_ID
: l'ID del progetto.MIG_NAME
: il nome del gruppo di istanze gestite.DELAY
: il numero di secondi che il gruppo di istanze gestite deve attendere prima di sospendere o arrestare una VM. Il ritardo iniziale dà allo script di inizializzazione il tempo per preparare la VM per lo scale out rapido.REGION
: per un gruppo di istanze gestite a livello di regione, la regione in cui si trova il gruppo di istanze gestite.ZONE
: per un gruppo di istanze gestite a livello di zona, la zona in cui si trova il gruppo di istanze gestite a livello di zona.Nella console Google Cloud, vai alla pagina Gruppi di istanze.
Nella colonna Nome dell'elenco, fai clic sul nome del gruppo di istanze in cui vuoi modificare le dimensioni del pool in standby.
Fai clic su Modifica per modificare questo gruppo di istanze gestite.
Fai clic su Mostra configurazione avanzata.
Nella sezione Pool in standby, inserisci le nuove dimensioni nei campi VM sospese e VM arrestate.
Fai clic su Salva.
MIG_NAME
: nome del gruppo di istanze gestite in cui sospendere un'istanzaSUSPENDED_SIZE
: il numero di VM sospese che il gruppo di istanze gestite deve mantenere in un dato momentoSTOPPED_SIZE
: il numero di VM arrestate che il gruppo di istanze gestite deve mantenere in un dato momentoREGION
: per un gruppo di istanze gestite a livello di regione, la regione in cui si trova il gruppo di istanze gestiteZONE
: per un gruppo di istanze gestite a livello di zona, la zona in cui si trova il gruppo di istanze gestite a livello di zonaPROJECT_ID
: l'ID progetto per la richiestaZONE
: per un gruppo di istanze gestite a livello di zona, la zona in cui si trova il gruppo di istanze gestite- Per un gruppo di istanze gestite a livello di regione, sostituisci
zones/ZONE
conregions/REGION
e specifica la regione del gruppo di istanze gestite
- Per un gruppo di istanze gestite a livello di regione, sostituisci
MIG_NAME
: il nome del gruppo di istanze gestite in cui arrestare un'istanzaSUSPENDED_SIZE
: il numero di VM sospese che il gruppo di istanze gestite deve mantenere in un dato momentoSTOPPED_SIZE
: il numero di VM arrestate che il gruppo di istanze gestite deve mantenere in un dato momento- Scopri come sospendere o arrestare manualmente le VM in un gruppo di istanze gestite.
- Scopri di più sugli aggiornamenti per le VM sospese e arrestate in un gruppo di istanze gestite.
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Usa l'API MIG per la scalabilità automatica
Ti consigliamo di utilizzare il gestore della scalabilità automatica di Compute Engine per scalare automaticamente il gruppo di istanze gestite. Tuttavia, se per qualche motivo preferisci utilizzare un gestore della scalabilità automatica diverso, utilizza gli endpoint dell'API MIG per gestire le VM sospese e arrestate.
Con l'API MIG, puoi connettere il gestore della scalabilità automatica, ad esempio il gestore della scalabilità automatica GKE, e sfruttare il pool in standby di VM per uno scale out più rapido.
Scegli tra pool sospesi e arrestati
La scelta tra pool sospesi e arrestati dipende dal caso d'uso specifico. Per ottenere prestazioni ottimali, ti consigliamo di sperimentare diversi tipi di pool in standby per gli scenari di scale out, in modo da determinare quale sia il più adatto alle tue esigenze. Carichi di lavoro diversi potrebbero mostrare tempi di pubblicazione più brevi con opzioni diverse. In alcuni casi, l'operazione di copia dello stato della memoria dallo spazio di archiviazione alla VM potrebbe richiedere più tempo rispetto al riavvio della VM o alla creazione di una nuova VM da zero.
Per trovare l'approccio migliore, inizia da queste linee guida:
Modifica il criterio di standby in un gruppo di istanze gestite
Questa sezione descrive come impostare il ritardo iniziale e come impostare la modalità pool di standby per lo scale out del pool.
Console
gcloud
Utilizza il comando
beta instance-groups managed update
e specifica la modalità operativa e il ritardo iniziale.gcloud beta compute instance-groups managed update MIG_NAME \ --standby-policy-mode=scale-out-pool \ --standby-policy-initial-delay=DELAY \ [--region=REGION | --zone=ZONE]
Sostituisci quanto segue:
API
Utilizza il metodo
instanceGroupManager.update
e specifica la modalità operativa e il ritardo iniziale nel corpo della richiesta. Per i gruppi di istanze gestite a livello di regione, utilizza il metodoregionInstanceGroupManager.update
.PUT https://www.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { // ... "standbyPolicy": { "mode": "SCALE_OUT_POOL", "initialDelaySec": DELAY } // ... }
Sostituisci quanto segue:
Ridimensiona il pool in standby in un gruppo di istanze gestite
Questa sezione descrive come ridimensionare i pool di VM sospese e arrestate in un gruppo di istanze gestite.
Console
gcloud
Utilizza il comando
instance-groups managed resize
beta con i flag--suspended-size
e--stopped-size
.gcloud beta compute instance-groups managed resize MIG_NAME \ --suspended-size=SUSPENDED_SIZE \ --stopped-size=STOPPED_SIZE \ [--region=REGION | --zone=ZONE]
Sostituisci quanto segue:
API
Utilizza il metodo
instanceGroupManager.update
e specifica le dimensioni dei pool di VM sospese e arrestate nel corpo della richiesta. Per i gruppi di istanze gestite a livello di regione, utilizza il metodoregionInstanceGroupManager.update
.PUT https://www.googleapis.com/compute/beta/projects/PROJECT_ID/zones/ZONE/instanceGroupManagers/MIG_NAME { // ... "targetSuspendedSize": SUSPENDED_SIZE, "targetStoppedSize": STOPPED_SIZE // ... }
Sostituisci quanto segue:
Passaggi successivi
Salvo quando diversamente specificato, i contenuti di questa pagina sono concessi in base alla licenza Creative Commons Attribution 4.0, mentre gli esempi di codice sono concessi in base alla licenza Apache 2.0. Per ulteriori dettagli, consulta le norme del sito di Google Developers. Java è un marchio registrato di Oracle e/o delle sue consociate.
Ultimo aggiornamento 2024-08-02 UTC.
[{ "type": "thumb-down", "id": "hardToUnderstand", "label":"Hard to understand" },{ "type": "thumb-down", "id": "incorrectInformationOrSampleCode", "label":"Incorrect information or sample code" },{ "type": "thumb-down", "id": "missingTheInformationSamplesINeed", "label":"Missing the information/samples I need" },{ "type": "thumb-down", "id": "translationIssue", "label":"Problema di traduzione" },{ "type": "thumb-down", "id": "otherDown", "label":"Altra" }] [{ "type": "thumb-up", "id": "easyToUnderstand", "label":"Facile da capire" },{ "type": "thumb-up", "id": "solvedMyProblem", "label":"Il problema è stato risolto" },{ "type": "thumb-up", "id": "otherUp", "label":"Altra" }] -