Questo documento descrive come creare un modello con scalabilità automatica gruppo di istanze gestite che aggiunge e rimuove automaticamente le VM in base all'utilizzo medio della CPU il gruppo. Ad esempio, se l'utilizzo della CPU da parte del gruppo è basso, il gruppo rimuove automaticamente le VM per risparmiare sui costi.
È possibile ridimensionare automaticamente un MIG in base a vari tipi di indicatori di ridimensionamento automatico. Per ulteriori informazioni, consulta la panoramica sul gestore della scalabilità automatica.
Puoi anche leggere altre informazioni scenari di base per la creazione di un gruppo di istanze gestite.
Prima di iniziare
- Crea un modello di istanza, necessario per creare un modello gruppo di istanze gestite.
-
Se non l'hai già fatto, configura l'autenticazione.
Autenticazione è
Il processo di verifica dell'identità per l'accesso ai servizi e alle API di Google Cloud.
Per eseguire codice o esempi da un ambiente di sviluppo locale, puoi eseguire l'autenticazione
Compute Engine come segue.
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
-
Installa Google Cloud CLI, quindi initialize eseguendo questo comando:
gcloud init
- Set a default region and zone.
- Installa Google Cloud CLI.
-
Per initialize gcloud CLI, esegui questo comando:
gcloud init
-
Crea credenziali di autenticazione locali per il tuo Account Google:
gcloud auth application-default login
-
Nella console, vai alla pagina Gruppi di istanze.
I passaggi rimanenti vengono visualizzati nella console Google Cloud.
-
Se hai un gruppo di istanze, selezionalo e fai clic su Modifica. Se non hai un gruppo di istanze, fai clic su
Crea gruppo di istanze . - Per un nuovo gruppo di istanze, assegna un nome, quindi scegli un modello di istanza per il gruppo di istanze, oppure creane uno nuovo.
- Se non esiste una configurazione di scalabilità automatica, in Scalabilità automatica, fai clic su Configura scalabilità automatica.
-
In
Modalità di scalabilità automatica , seleziona On: aggiungi e rimuovi istanze al gruppo per abilitare la scalabilità automatica. - Specifica il numero minimo e massimo di istanze che il gestore della scalabilità automatica dovrà creare in questo gruppo.
-
Se nella sezione Metriche di scalabilità automatica non esiste ancora una metrica Utilizzo CPU, aggiungine una:
-
Fai clic su
Aggiungi metrica . -
In
Tipo di metrica , seleziona Utilizzo CPU. -
Inserisci la metrica Utilizzo CPU target desiderata. Questo valore viene trattato come una percentuale. Ad esempio, per il 75% di utilizzo della CPU, inserisci
75
. -
In Scalabilità automatica predittiva, seleziona
Off . Per ulteriori informazioni sulla scalabilità automatica predittiva e per sapere se è adatta al tuo carico di lavoro, consulta Scalabilità basata sulle previsioni. - Fai clic su Fine.
-
Fai clic su
- Puoi impostare un periodo di inizializzazione per indicare al gestore della scalabilità automatica il tempo necessario per l'inizializzazione dell'applicazione. Specificare un periodo di inizializzazione preciso migliora le decisioni del gestore della scalabilità automatica. Ad esempio, durante lo scale out, il gestore della scalabilità automatica ignora i dati provenienti dalle VM che sono ancora in fase di inizializzazione, perché potrebbero non rappresentare il normale utilizzo della tua applicazione. Il periodo di inizializzazione predefinito è di 60 secondi.
- Per creare il gruppo di istanze gestite, fai clic su
Crea . - Scopri di più sulla scalabilità automatica e sulle diverse tipi di indicatori di scalabilità che puoi aggiungere criterio di scalabilità automatica.
- Informazioni Gestione dei gestori della scalabilità automatica.
- Configura la riparazione automatica basata sulle applicazioni che verifica periodicamente che la tua applicazione risponda come previsto in data ciascuna delle VM del gruppo di istanze gestite e ricrea automaticamente le VM che non rispondono.
- Scopri come applicare una nuova configurazione a tutte o a un sottoinsieme delle VM in un gruppo di istanze gestite impostando e applicando modello di istanza, configurazione di tutte le istanze o configurazione per istanza.
- Scopri come aggiungere un frontend del bilanciatore del carico HTTP(S) esterno alla tua istanza . Per per informazioni sugli altri tipi di bilanciatori del carico, consulta Bilanciamento del carico Panoramica.
Terraform
Per utilizzare gli esempi di Terraform in questa pagina in un ambiente dell'ambiente di sviluppo, installare e inizializzare gcloud CLI quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
Per ulteriori informazioni, vedi Set up authentication for a local development environment.
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.
Installa Google Cloud CLI, quindi initialize eseguendo questo comando:
gcloud init
Per ulteriori informazioni, vedi Esegui l'autenticazione per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud.
Limitazioni
Per visualizzare l'elenco completo delle limitazioni del gruppo di istanze gestite, che varia in base alla configurazione che utilizzi, vedi Limitazioni del gruppo di istanze gestite.
Crea un MIG e abilita la scalabilità automatica
Utilizzare la console Google Cloud , il gcloud CLI Terraform, o REST.
Console
gcloud
Prima di poter abilitare la scalabilità automatica, devi creare un gruppo di istanze gestite. Segui le istruzioni per crea un gruppo di istanze gestite con VM confinate in una singola zona o creando un gruppo di istanze gestite con VM distribuite in più zone all'interno di una regione.
Quindi utilizza
set-autoscaling
per abilitare la scalabilità automatica per il gruppo. Ad esempio: Il comando seguente crea un gestore della scalabilità automatica con CPU target massimo del 60%. Insieme al parametro--target-cpu-utilization
, È richiesto anche il parametro--max-num-replicas
quando crei un gestore della scalabilità automatica.Se vuoi, puoi impostare
--min-num-replicas
che indica il numero minimo di VM che vuoi nel gruppo. Se non imposti minimo, per impostazione predefinita il gruppo di istanze gestite imposta questo valore su 2.Puoi utilizzare il flag
--cool-down-period
per impostare il periodo di inizializzazione, che indica gestore della scalabilità automatica: il tempo necessario per l'inizializzazione della tua applicazione. Specificare un periodo di inizializzazione preciso migliora le decisioni del gestore della scalabilità automatica. Ad esempio, durante lo scale out, il gestore della scalabilità automatica ignora i dati provenienti dalle VM che sono ancora in fase di inizializzazione, perché potrebbero non rappresentare il normale utilizzo della tua applicazione. Il periodo di inizializzazione predefinito è di 60 secondi.gcloud compute instance-groups managed set-autoscaling example-managed-instance-group \ --max-num-replicas 20 \ --target-cpu-utilization 0.60 \ --cool-down-period 90
Se vuoi, puoi abilitare la scalabilità automatica predittiva per fare lo scale out prima carico previsto. Per scoprire se la scalabilità automatica predittiva è adatta per i carichi di lavoro, consulta Scalabilità basata sulle previsioni.
Puoi verificare che la scalabilità automatica sia abilitata utilizzando il metodo Comando
instance-groups managed describe
, che descrive il gruppo di istanze gestite corrispondente e fornisce informazioni funzionalità di scalabilità automatica per quel gruppo:gcloud compute instance-groups managed describe example-managed-instance-group
Terraform
Prima di poter abilitare la scalabilità automatica, devi creare un gruppo di istanze gestite. Segui le istruzioni per crea un gruppo di istanze gestite con VM confinate in una singola zona o creando un gruppo di istanze gestite con VM distribuite in più zone all'interno di una regione.
Per configurare la scalabilità automatica in un gruppo di istanze gestite, puoi utilizzare il
google_compute_autoscaler
risorsa.L'esempio seguente configura la scalabilità automatica in base all'utilizzo della CPU in un un gruppo di istanze gestite a livello di zona.
Per scoprire come applicare o rimuovere una configurazione Terraform, consulta: Comandi Terraform di base.
REST
Prima di poter abilitare la scalabilità automatica, devi crea un gruppo di istanze gestite con VM confinate in una singola zona o creando un gruppo di istanze gestite con VM distribuite in più zone all'interno di una regione.
Se hai un gruppo di istanze gestite a livello di zona, effettua una richiesta
POST
alautoscalers.insert
. Se hai un gruppo di istanze gestite a livello di regione, utilizza MetodoregionAutoscalers.insert
.Ad esempio:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/autoscalers/
Il corpo della richiesta deve contenere
name
,target
eautoscalingPolicy
campi. Il campoautoscalingPolicy
deve definire il target ValorecpuUtilization
e valoremaxNumReplicas
.Se vuoi, puoi impostare
minNumReplicas
che indica il numero minimo di VM che vuoi nel gruppo. Se non imposti minimo, per impostazione predefinita il gruppo di istanze gestite imposta questo valore su 2.Puoi utilizzare il campo
coolDownPeriodSec
per impostare il periodo di inizializzazione, che indica gestore della scalabilità automatica: il tempo necessario per l'inizializzazione della tua applicazione. Specificare un periodo di inizializzazione preciso migliora le decisioni del gestore della scalabilità automatica. Ad esempio, durante lo scale out, il gestore della scalabilità automatica ignora i dati provenienti dalle VM che sono ancora in fase di inizializzazione, perché potrebbero non rappresentare il normale utilizzo della tua applicazione. Il periodo di inizializzazione predefinito è di 60 secondi.{ "name": "example-autoscaler", "target": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/instanceGroupManagers/example-managed-instance-group", "autoscalingPolicy": { "maxNumReplicas": 10, "cpuUtilization": { "utilizationTarget": 0.6 }, "coolDownPeriodSec": 90 } }
Se vuoi, puoi abilitare la scalabilità automatica predittiva per fare lo scale out prima carico previsto. Per scoprire se la scalabilità automatica predittiva è adatta per i carichi di lavoro, consulta Scalabilità basata sulle previsioni.
Per saperne di più sull'abilitazione della scalabilità automatica basata sull'utilizzo della CPU, consulta Scalabilità basata sull'utilizzo della CPU.
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-07-19 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" }] -