Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Crea una politica di scalabilità predittiva per un gruppo Auto Scaling
Le seguenti procedure consentono di creare una politica di scalabilità predittiva utilizzando o. Console di gestione AWS AWS CLI
Se il gruppo con scalabilità automatica è nuovo, prima che Dimensionamento automatico Amazon EC2 possa generare una previsione deve fornire almeno 24 ore di dati.
Indice
Creazione di una policy di dimensionamento predittivo (console)
Se è la prima volta che crei una politica di scalabilità predittiva, ti consigliamo di utilizzare la console per creare più policy di scalabilità predittiva in modalità solo previsione. Ciò consente di testare i potenziali effetti di diverse metriche e valori obiettivo. È possibile creare più criteri di dimensionamento predittivo per ciascun gruppo con scalabilità automatica, ma solo una delle policy può essere utilizzata per il dimensionamento attivo.
Utilizza la procedura seguente per creare una policy di dimensionamento predittivo utilizzando i parametri predefiniti (numero di richieste di CPU, I/O di rete o Application Load Balancer per destinazione). Il modo più semplice per creare una policy di dimensionamento predittivo è utilizzare i parametri predefiniti. Se preferisci utilizzare i parametri personalizzati, consulta Creazione di una policy di dimensionamento predittivo nella console (parametri predefiniti).
Creazione di una policy di dimensionamento predittivo
Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/
e scegli Auto Scaling Groups dal pannello di navigazione. -
Seleziona la casella di controllo accanto al gruppo con dimensionamento automatico.
Si aprirà un riquadro diviso nella parte inferiore della pagina.
-
Nella scheda Automatic scaling (Scalabilità automatica) scegli Create predictive scaling policy (Crea policy di dimensionamento predittivo) in Scaling policies (Policy di dimensionamento).
-
Inserisci un nome per la policy.
-
Attiva Scale based on forecast (Dimensiona in base al forecast) per dare a Dimensionamento automatico Amazon EC2 l'autorizzazione ad avviare subito il dimensionamento.
Per mantenere la policy in modalità forecast only (solo forecast), mantieni l'opzioneScale based on forecast (Dimensiona in base al forecast) disattivata.
-
In Metrics (Parametri), scegli i parametri nell'elenco di opzioni. Le opzioni includono: CPU,Network In (Rete in ingresso),Rete in uscita (Network Out), Application Load Balancer request count (Conteggio richieste Application Load Balancer) e Custom metric pair (Coppia di parametri personalizzati).
Se hai scelto Application Load Balancer request count per target (Conteggio delle richieste Application Load Balancer per destinazione), scegli un gruppo di destinazione in Target group (Gruppo di destinazione). Application Load Balancer request count per target (Conteggio di richieste Application Load Balancer per destinazione) è supportato solo avrai allegato un gruppo di destinazione Application Load Balancer al gruppo con scalabilità automatica.
Se hai scelto Custom metric pair (Coppia di parametri personalizzati), scegli i singoli parametri dagli elenchi a discesa per Load metric (Parametro del carico) e Scaling metric (Parametro di dimensionamento).
-
In Target utilization (Utilizzo di destinazione), inserisci il valore di destinazione che Dimensionamento automatico Amazon EC2 deve mantenere. Dimensionamento automatico Amazon EC2 aumenta la capacità finché l'utilizzo medio arriva a quello di destinazione o finché non raggiunge il numero massimo di istanze specificato.
Se il parametro di dimensionamento è... Allora l'utilizzo target rappresenta... CPU La percentuale di CPU che ogni istanza dovrebbe idealmente utilizzare.
Rete in ingresso Il numero medio di byte al minuto che ogni istanza dovrebbe idealmente ricevere.
Rete in uscita Il numero medio di byte al minuto che ogni istanza dovrebbe idealmente inviare.
Conteggio di richieste Application Load Balancer per destinazione Il numero medio di richieste al minuto che ogni istanza dovrebbe idealmente ricevere.
-
(Facoltativo) In Pre-launch instances (Pre-avviare le istanze), scegli con quale anticipo desideri avviare le istanze prima che il forecast richieda l'aumento del carico.
-
(Facoltativo) In Max capacity behavior (Comportamento di capacità max), scegli se consentire a Dimensionamento automatico Amazon EC2 di aumentare la capacità massima del gruppo quando la capacità predittiva prevista supera la capacità massima definita. L'attivazione di questa impostazione permette l'aumento orizzontale durante i periodi in cui si prevede che il traffico sia al massimo.
-
(Facoltativo) In Buffer maximum capacity above the forecasted capacity (Capacità massima del buffer superiore alla capacità prevista), scegli la capacità aggiuntiva da utilizzare quando quella prevista è prossima o superiore alla capacità massima. Il valore è specificato come una percentuale relativa alla capacità di previsione. Ad esempio, se il buffer è 10, indica un buffer del 10%. Pertanto, se la capacità di previsione è 50 e quella massima è 40, la capacità massima effettiva è 55.
Se impostato su 0, Dimensionamento automatico Amazon EC2 potrebbe essere in grado di dimensionare una capacità superiore alla capacità massima, in modo da uguagliare ma non superare quella prevista.
-
Scegli Create predictive scaling policy (Crea policy di dimensionamento predittivo).
Utilizza la procedura seguente per creare una policy di dimensionamento predittivo utilizzando i parametri personalizzati. Le metriche personalizzate possono includere altre metriche fornite da CloudWatch o metriche su cui pubblichi. CloudWatch Per utilizzare il numero di richieste di CPU, I/O di rete o Application Load Balancer per destinazione, consulta Creazione di una policy di dimensionamento predittivo nella console (parametri predefiniti).
Utilizza la procedura seguente per creare una policy di dimensionamento predittivo utilizzando i parametri personalizzati.
-
È necessario fornire le query non elaborate che consentano ad Amazon EC2 Auto Scaling di interagire con i parametri. CloudWatch Per ulteriori informazioni, consulta Politica di scalabilità predittiva avanzata che utilizza metriche personalizzate. Per essere sicuri che Amazon EC2 Auto Scaling possa estrarre i dati CloudWatch delle metriche, verifica che ogni query restituisca punti dati. Confermalo utilizzando la CloudWatch console o il funzionamento dell' CloudWatch GetMetricDataAPI.
Nota
Forniamo dei payload JSON di esempio nell'editor JSON nella console Dimensionamento automatico Amazon EC2. Questi esempi forniscono un riferimento per le coppie chiave-valore necessarie per aggiungere altre CloudWatch metriche fornite da AWS o metriche su cui hai pubblicato in precedenza. CloudWatch Puoi utilizzarli come punto di partenza, quindi personalizzarli in base alle tue esigenze.
-
Se per i parametri usi una formula, devi costruire manualmente il JSON per adattarlo al tuo scenario univoco. Per ulteriori informazioni, consulta Utilizzare le espressioni matematiche del parametro. Prima di utilizzare la formula del parametro nella tua policy, verifica che le query dei parametri basate su espressioni matematiche siano valide e restituiscano una singola serie temporale. Confermalo utilizzando la CloudWatch console o l'operazione API. CloudWatch GetMetricData
Se commetti un errore in una query fornendo dati errati, ad esempio il nome del gruppo con scalabilità automatica errato, la previsione non conterrà alcun dato. Per la risoluzione dei problemi relativi ai parametri personalizzati, consulta Considerazioni sulle metriche personalizzate in una politica di scalabilità predittiva.
Creazione di una policy di dimensionamento predittivo
Apri la console Amazon EC2 all'indirizzo https://console.aws.amazon.com/ec2/
e scegli Auto Scaling Groups dal pannello di navigazione. -
Seleziona la casella di controllo accanto al gruppo con dimensionamento automatico.
Si aprirà un riquadro diviso nella parte inferiore della pagina.
-
Nella scheda Automatic scaling (Scalabilità automatica) scegli Create predictive scaling policy (Crea policy di dimensionamento predittivo) in Scaling policies (Policy di dimensionamento).
-
Inserisci un nome per la policy.
-
Attiva Scale based on forecast (Dimensiona in base al forecast) per dare a Dimensionamento automatico Amazon EC2 l'autorizzazione ad avviare subito il dimensionamento.
Per mantenere la policy in modalità forecast only (solo forecast), mantieni l'opzioneScale based on forecast (Dimensiona in base al forecast) disattivata.
-
Per Metrics (Parametri), scegli Custom metric pair (Coppia di parametri personalizzati).
-
Per Load metric, scegli Custom CloudWatch metric per utilizzare un parametro personalizzato. Crea il payload JSON che contiene la definizione dei parametri di carico per la policy e incollalo nella casella dell'editor JSON, sostituendo ciò che è già presente nella casella.
-
Per Scaling metric, scegli Metrica personalizzata per utilizzare una CloudWatch metrica personalizzata. Crea il payload JSON che contiene la definizione dei parametri di dimensionamento per la policy e incollalo nella casella dell'editor JSON, sostituendo ciò che è già presente nella casella.
-
(Facoltativo) Per aggiungere un parametro di capacità personalizzato, seleziona la casella di controllo Add custom capacity metric (Aggiungi parametro di capacità personalizzato). Crea il payload JSON che contiene la definizione dei parametri di capacità per la policy e incollalo nella casella dell'editor JSON, sostituendo ciò che è già presente nella casella.
È necessario abilitare questa opzione solo per creare una nuova serie temporale per la capacità solo se i dati dei parametri di capacità riguardano più gruppi con scalabilità automatica. In questo caso, dovrai utilizzare la formula dei parametri per aggregare i dati in un'unica serie temporale.
-
-
In Target utilization (Utilizzo di destinazione), inserisci il valore di destinazione che Dimensionamento automatico Amazon EC2 deve mantenere. Dimensionamento automatico Amazon EC2 aumenta la capacità finché l'utilizzo medio arriva a quello di destinazione o finché non raggiunge il numero massimo di istanze specificato.
-
(Facoltativo) In Pre-launch instances (Pre-avviare le istanze), scegli con quale anticipo desideri avviare le istanze prima che il forecast richieda l'aumento del carico.
-
(Facoltativo) In Max capacity behavior (Comportamento di capacità max), scegli se consentire a Dimensionamento automatico Amazon EC2 di aumentare la capacità massima del gruppo quando la capacità predittiva prevista supera la capacità massima definita. L'attivazione di questa impostazione permette l'aumento orizzontale durante i periodi in cui si prevede che il traffico sia al massimo.
-
(Facoltativo) In Buffer maximum capacity above the forecasted capacity (Capacità massima del buffer superiore alla capacità prevista), scegli la capacità aggiuntiva da utilizzare quando quella prevista è prossima o superiore alla capacità massima. Il valore è specificato come una percentuale relativa alla capacità di previsione. Ad esempio, se il buffer è 10, indica un buffer del 10%. Pertanto, se la capacità di previsione è 50 e quella massima è 40, la capacità massima effettiva è 55.
Se impostato su 0, Dimensionamento automatico Amazon EC2 potrebbe essere in grado di dimensionare una capacità superiore alla capacità massima, in modo da uguagliare ma non superare quella prevista.
-
Scegli Create predictive scaling policy (Crea policy di dimensionamento predittivo).
Creazione di una policy di dimensionamento predittivo (AWS CLI)
Utilizza AWS CLI quanto segue per configurare le politiche di scalabilità predittiva per il tuo gruppo Auto Scaling. Sostituisci ogni user input placeholder con le tue informazioni.
Per ulteriori informazioni sui CloudWatch parametri che puoi specificare, consulta il riferimento alle API PredictiveScalingMetricSpecificationdi Amazon EC2 Auto Scaling.
Esempio 1: policy di dimensionamento predittivo in grado di creare forecast ma non di dimensionare
La policy di esempio seguente mostra una configurazione completa delle policy che utilizzano i parametri di utilizzo della CPU per il dimensionamento predittivo con un utilizzo di destinazione 40. ForecastOnly viene utilizzato per impostazione predefinita, a meno che non specifichi esplicitamente quale modalità utilizzare. Salva questa configurazione in un file denominato config.json.
{ "MetricSpecifications": [ { "TargetValue":40, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ASGCPUUtilization" } } ] }
Per creare la policy dalla riga di comando, esegui il put-scaling-policy
aws autoscaling put-scaling-policy --policy-namecpu40-predictive-scaling-policy\ --auto-scaling-group-namemy-asg--policy-type PredictiveScaling \ --predictive-scaling-configurationfile://config.json
In caso di esito positivo, questo comando restituisce l'Amazon Resource Name (ARN) della policy.
{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:2f4f5048-d8a8-4d14-b13a-d1905620f345:autoScalingGroupName/my-asg:policyName/cpu40-predictive-scaling-policy",
"Alarms": []
}
Esempio 2: policy di dimensionamento predittivo in grado di creare forecast e di dimensionare
Per una policy che permette a Dimensionamento automatico Amazon EC2 di prevedere e dimensionare, aggiungi la proprietà Modecon un valore di ForecastAndScale. Nell'esempio seguente viene illustrata una configurazione di policy che utilizza i parametri del conteggio delle richieste di Application Load Balancer. L'utilizzo di destinazione è 1000 e il dimensionamento predittivo è impostato sulla modalità ForecastAndScale.
{ "MetricSpecifications": [ { "TargetValue":1000, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ALBRequestCount", "ResourceLabel": "app/my-alb/778d41231b141a0f/targetgroup/my-alb-target-group/943f017f100becff" } } ], "Mode": "ForecastAndScale" }
Per creare questa politica, esegui il put-scaling-policy
aws autoscaling put-scaling-policy --policy-namealb1000-predictive-scaling-policy\ --auto-scaling-group-namemy-asg--policy-type PredictiveScaling \ --predictive-scaling-configurationfile://config.json
In caso di esito positivo, questo comando restituisce l'Amazon Resource Name (ARN) della policy.
{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:19556d63-7914-4997-8c81-d27ca5241386:autoScalingGroupName/my-asg:policyName/alb1000-predictive-scaling-policy",
"Alarms": []
}
Esempio 3: policy di dimensionamento predittivo in grado di dimensionare oltre la capacità massima
Nell'esempio seguente viene illustrato come creare una policy in grado di dimensionare oltre al limite di dimensione massima del gruppo quando è necessario per gestire un carico superiore al normale. Per impostazione predefinita, Dimensionamento automatico Amazon EC2 non dimensiona la capacità EC2 oltre la capacità massima definita. Tuttavia, potrebbe essere utile lasciarla dimensionare più in alto, con una capacità leggermente superiore, per evitare problemi di prestazioni o disponibilità.
Per fornire spazio a Dimensionamento automatico Amazon EC2 per il provisioning di capacità aggiuntiva quando prevedi che la capacità sarà pari o molto vicina alle dimensioni massime del tuo gruppo, specifica le proprietà MaxCapacityBreachBehaviore MaxCapacityBuffer, come mostrato nell'esempio seguente. Devi specificare MaxCapacityBreachBehavior con un valore di IncreaseMaxCapacity. Il numero massimo di istanze che il gruppo può avere dipende dal valore di MaxCapacityBuffer.
{ "MetricSpecifications": [ { "TargetValue":70, "PredefinedMetricPairSpecification": { "PredefinedMetricType": "ASGCPUUtilization" } } ], "MaxCapacityBreachBehavior": "IncreaseMaxCapacity", "MaxCapacityBuffer":10}
In questo esempio, la policy è configurata per usare un buffer del 10% ("MaxCapacityBuffer": 10), in modo che se la capacità prevista è 50 e quella massima è 40, la capacità massima effettiva è 55. Una policy in grado di dimensionare una capacità superiore alla capacità massima in modo da uguagliare ma non superare la capacità prevista avrebbe un buffer di 0 ("MaxCapacityBuffer":
0).
Per creare questa politica, esegui il put-scaling-policy
aws autoscaling put-scaling-policy --policy-namecpu70-predictive-scaling-policy\ --auto-scaling-group-namemy-asg--policy-type PredictiveScaling \ --predictive-scaling-configurationfile://config.json
In caso di esito positivo, questo comando restituisce l'Amazon Resource Name (ARN) della policy.
{
"PolicyARN": "arn:aws:autoscaling:region:account-id:scalingPolicy:d02ef525-8651-4314-bf14-888331ebd04f:autoScalingGroupName/my-asg:policyName/cpu70-predictive-scaling-policy",
"Alarms": []
}