Quando crei un criterio di scalabilità automatica con più indicatori, il gestore della scalabilità automatica applica la scalabilità in base all'indicatore che fornisce il maggior numero di istanze di macchine virtuali (VM) nel gruppo di istanze gestite. Ciò garantisce che ci siano sempre abbastanza VM per gestire i carichi di lavoro delle applicazioni e ti consente di scalare le applicazioni con più possibili colli di bottiglia.
Per saperne di più sui diversi tipi di indicatori di scalabilità automatica, consulta Criterio di scalabilità automatica.
Prima di iniziare
- Scopri i concetti fondamentali del gestore della scalabilità automatica.
-
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.
cpuUtilization
con target di 0,8loadBalancingUtilization
con target di 0,6customMetricUtilization
per la metrica1 con target di 1000customMetricUtilization
per la metrica 2 con target di 2000scalingSchedules
- Un minimo di 6 VM ogni sabato e domenica alle 00:00 per 24 ore
- Un minimo di 15 VM ogni lunedì e venerdì alle 9:00 per 8 ore
- 0,5 per l'utilizzo della CPU
- Utilizzo bilanciamento del carico 0,4
- 1100 per metric1
- 2700 per metric2
- 7 VM in base all'utilizzo della CPU
- 7 VM in base all'utilizzo del bilanciamento del carico
- 11 VM in base alla metrica1
- 14 VM in base alla metrica2
- 6 VM ogni sabato e domenica per l'intera giornata in base alla prima pianificazione della scalabilità
- 15 VM ogni lunedì al venerdì dalle 9:00 alle 17:00 in base alla seconda pianificazione della scalabilità
Nella console Google Cloud, vai alla pagina Gruppi di istanze.
Fai clic sul nome di un gruppo di istanze gestite nell'elenco. Poi, fai clic su Modifica.
Nella pagina di modifica in Modalità di scalabilità automatica, attiva la scalabilità automatica selezionando On: aggiungi e rimuovi istanze al gruppo dal menu a discesa.
In Numero minimo di istanze, inserisci il numero minimo di VM che vuoi per questo gruppo di istanze gestite. La dimensione minima di questo gruppo di istanze gestite viene sempre mantenuta indipendentemente dai relativi indicatori di scalabilità automatica.
In Numero massimo di istanze, inserisci il numero massimo di VM che vuoi per questo gruppo di istanze gestite. La dimensione massima di questo gruppo di istanze gestite non viene mai superata, indipendentemente dalle dimensioni consigliate generate dagli indicatori di scalabilità automatica.
Per ogni indicatore di scalabilità automatica basata sulle metriche che vuoi aggiungere, fai clic su Aggiungi metrica in Metriche di scalabilità automatica.
- Per creare un indicatore di scalabilità automatica in base all'utilizzo medio della CPU, in Tipo di metrica seleziona Utilizzo CPU dal menu a discesa. Quindi, inserisci un valore in Utilizzo CPU target e fai clic su Fine. Per maggiori informazioni, consulta Scalabilità basata sull'utilizzo della CPU.
- Per creare un indicatore di scalabilità automatica basato sulla capacità di gestione del bilanciamento del carico HTTP, in Tipo di metrica seleziona Utilizzo bilanciamento del carico HTTP dal menu a discesa. A questo punto, inserisci un valore nel campo Utilizzo bilanciamento del carico HTTP di destinazione e fai clic su Fine. Per saperne di più, consulta Scalabilità basata sulla capacità di gestione del bilanciamento del carico.
- Per creare un indicatore di scalabilità automatica basato sulle metriche di Cloud Monitoring, in Tipo di metrica seleziona Metrica Cloud Monitoring dal menu a discesa. Poi, compila i campi rimanenti e fai clic su Fine. Per maggiori informazioni, consulta Scalabilità basata sulle metriche di Cloud Monitoring.
Per ogni indicatore di scalabilità automatica basata su pianificazione che vuoi aggiungere, espandi la sezione Pianificazioni di scalabilità automatica, fai clic su Gestisci pianificazioni, quindi fai clic su Crea pianificazione.
Nel nuovo riquadro Crea pianificazione di scalabilità, compila i campi obbligatori e fai clic su Salva. Nel riquadro Pianificazioni di scalabilità, fai clic su Fine. Per saperne di più, consulta Scalabilità basata su pianificazioni.
In Periodo di inizializzazione, inserisci il numero di secondi necessari per l'inizializzazione dell'applicazione. In questo modo, le VM possono completare l'inizializzazione prima che il gestore della scalabilità automatica consideri affidabili i suoi dati sull'utilizzo. Per ulteriori informazioni, consulta la sezione Periodo di inizializzazione.
(Facoltativo) Per abilitare i controlli di scale in, fai clic su Controlli di scale in, poi seleziona la casella di controllo Abilita controlli di scale in. Per ulteriori informazioni, consulta Controlli di scale in
Fai clic su Salva.
MIG_NAME
: il nome di un gruppo di istanze gestite.PATH_TO_CUSTOM_METRIC_1
ePATH_TO_CUSTOM_METRIC_2
: facoltativi: i percorsi delle metriche personalizzate con un formato simile acustom.cloudmonitoring.googleapis.com/path/to/metric1
ecustom.cloudmonitoring.googleapis.com/path/to/metric2
. Per scoprire di più, consulta la sezione Metriche personalizzate.PROJECT
: il tuo ID progetto.ZONE
: la zona in cui si trova il gruppo di istanze gestite.MIG_NAME
: il nome di un gruppo di istanze gestite.PATH_TO_CUSTOM_METRIC_1
ePATH_TO_CUSTOM_METRIC_2
: facoltativi: i percorsi delle metriche personalizzate con un formato simile acustom.cloudmonitoring.googleapis.com/path/to/metric1
ecustom.cloudmonitoring.googleapis.com/path/to/metric2
. Per scoprire di più, consulta la sezione Metriche personalizzate.
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.
In che modo il gestore della scalabilità automatica gestisce più indicatori
Un gestore della scalabilità automatica gestisce più indicatori calcolando il numero consigliato di VM per ogni indicatore, quindi sceglie l'indicatore che genera il maggior numero di VM nel gruppo di istanze gestite.
Un gestore della scalabilità automatica può gestire un indicatore per tipo di metrica, tranne nel caso delle metriche di Cloud Monitoring e delle pianificazioni di scalabilità. Puoi scegliere fino a 5 indicatori di scalabilità automatica per le metriche di Cloud Monitoring e creare fino a 128 pianificazioni per gruppo di istanze gestite. Ad esempio, puoi creare un gestore della scalabilità automatica che utilizza fino a 1 indicatore di utilizzo della CPU, fino a 1 segnale di bilanciamento del carico, fino a 5 indicatori di metrica personalizzata e fino a 128 pianificazioni di scalabilità.
Ad esempio, puoi definire un gestore della scalabilità automatica con tutti i seguenti indicatori:
In questo esempio, supponi che il gestore della scalabilità automatica misuri i seguenti valori di utilizzo medi per un gruppo di istanze gestite che contiene 10 VM al momento della misurazione:
Utilizzando i valori precedenti, il gestore della scalabilità automatica calcola il numero consigliato di VM in base a ciascun indicatore:
Il gestore della scalabilità automatica sceglie l'indicatore che genera il maggior numero di VM nel gruppo di istanze gestite e imposta le dimensioni consigliate del gruppo di istanze gestite su quel valore. In questo caso, il gestore della scalabilità automatica ridimensiona il gruppo di istanze gestite a 15 VM se la seconda pianificazione è attualmente attiva o a 14 VM in caso contrario.
Crea un gestore della scalabilità automatica con più indicatori
La creazione di un gestore della scalabilità automatica con più indicatori è leggermente diversa a seconda che utilizzi la console Google Cloud, gcloud CLI o REST.
Console
gcloud
Per creare un gestore della scalabilità automatica con più indicatori, utilizza il comando
set-autoscaling
. Trasmetti più specifiche di indicatori utilizzando i rispettivi flag della riga di comando.Ad esempio, il seguente comando crea un gestore della scalabilità automatica che utilizza l'utilizzo della CPU, la capacità di gestione del bilanciamento del carico, due metriche personalizzate e una pianificazione di scalabilità. I flag
--max-num-replicas
e--min-num-replicas
limitano le dimensioni massime o minime del gruppo di istanze gestite.gcloud compute instance-groups managed set-autoscaling MIG_NAME \ --target-cpu-utilization=0.8 \ --target-load-balancing-utilization=0.6 \ --custom-metric-utilization metric=PATH_TO_CUSTOM_METRIC_1,utilization-target=1000.0,utilization-target-type=GAUGE \ --custom-metric-utilization metric=PATH_TO_CUSTOM_METRIC_2,utilization-target=2000.0,utilization-target-type=DELTA_PER_SECOND \ --set-schedule=workday-capacity \ --schedule-cron="30 8 * * Mon-Fri" \ --schedule-duration-sec=30600 \ --schedule-min-required-replicas=10 \ --schedule-description="Have at least 10 VMs every Monday through Friday from 8:30 AM to 5 PM UTC" \ --min-num-replicas=1 \ --max-num-replicas=50
Sostituisci quanto segue:
Ad eccezione dei flag delle metrica personalizzata, puoi passare un solo flag per ogni tipo di metrica per ogni comando
gcloud
. Per le metriche personalizzate, puoi fornire più metriche personalizzate in un singolo comando ripetendo il flag--custom-metric-utilization
.Per saperne di più su come configurare i flag per ogni tipo di indicatore di scalabilità automatica, consulta le seguenti pagine:
REST
Per creare un gestore della scalabilità automatica, utilizza il metodo
autoscalers.insert
per un gruppo di istanze gestite a livello di zona o il metodoregionAutoscalers.insert
per un gruppo di istanze gestite a livello di regione.Ad esempio, la richiesta seguente crea un gestore della scalabilità automatica che utilizza l'utilizzo della CPU, la capacità di gestione del bilanciamento del carico, due metriche personalizzate e due pianificazioni di scalabilità. I campi
maxNumReplicas
eminNumReplicas
limitano le dimensioni ridotte o le dimensioni del gruppo di istanze gestite.POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/autoscalers { "autoscalingPolicy" : { "cpuUtilization":{ "utilizationTarget": 0.8 }, "loadBalancingUtilization":{ "utilizationTarget": 0.6 }, "customMetricUtilizations":[ { "metric": "PATH_TO_CUSTOM_METRIC_1", "utilizationTarget": 1000, "utilizationTargetType":"GAUGE" }, { "metric": "PATH_TO_CUSTOM_METRIC_2", "utilizationTarget": 2000, "utilizationTargetType": "DELTA_PER_SECOND" } ], "scalingSchedules": { "workday-capacity": { "minRequiredReplicas": 10, "schedule": "30 8 * * Mon-Fri", "durationSec": 30600, "description": "Have at least 10 VMs every Monday through Friday from 8:30 AM to 5 PM UTC" }, "january-30-2030-schedule": { "minRequiredReplicas": 30, "schedule": "0 0 30 1 * 2030", "timeZone": "America/New_York", "durationSec": 86400, "description": "Schedule a minimum of 30 VMs all day for January 30, 2030" } }, "maxNumReplicas": 50, "minNumReplicas": 1 }, "target": "https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instanceGroupManagers/MIG_NAME", "name": "MIG_NAME" }
Sostituisci quanto segue:
Come mostrato in questo esempio, puoi fornire più metriche personalizzate e pianificazioni di scalabilità nella stessa richiesta.
Per saperne di più su come configurare i campi per ogni tipo di indicatore di scalabilità automatica, consulta le seguenti pagine:
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-16 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" }] -