

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à.

# Policy di dimensionamento con monitoraggio degli obiettivi per Dimensionamento automatico Amazon EC2
Policy di dimensionamento con monitoraggio degli obiettivi

Una politica di dimensionamento del tracciamento degli obiettivi ridimensiona automaticamente la capacità del gruppo Auto Scaling in base a un valore metrico target. Si adatta automaticamente ai modelli di utilizzo unici delle singole applicazioni. Ciò consente all'applicazione di mantenere prestazioni ottimali e un elevato utilizzo delle istanze EC2 per una migliore efficienza dei costi senza intervento manuale.

Con il monitoraggio degli obiettivi, devi selezionare un parametro e un valore target che rappresenti il livello di utilizzo o velocità di trasmissione effettiva ideale per la tua applicazione. Amazon EC2 Auto Scaling crea e CloudWatch gestisce gli allarmi che richiamano eventi di scalabilità quando la metrica si discosta dall'obiettivo. Ad esempio, è simile al modo in cui un termostato mantiene una temperatura target.

Ad esempio, immaginiamo di avere un'applicazione Web attualmente eseguita su due istanze e di volere che l'utilizzo della CPU del gruppo con scalabilità automatica rimanga intorno al 50% quando il carico sull'applicazione varia. Questo ti offre la capacità aggiuntiva per gestire i picchi di traffico senza dover mantenere un numero eccessivo di risorse inattive. 

È possibile soddisfare questa esigenza creando una policy di dimensionamento del monitoraggio degli obiettivi che si rivolge a un utilizzo medio della CPU del 50%. Quindi, il gruppo Auto Scaling eseguirà la scalabilità orizzontale o aumenterà la capacità quando la CPU supera il 50 percento per gestire un carico maggiore. Aumenterà o ridurrà la capacità quando la CPU scende al di sotto del 50 percento per ottimizzare i costi nei periodi di basso utilizzo.

**Topics**
+ [

## Policy di dimensionamento con monitoraggio degli obiettivi multipli
](#target-tracking-multiple-policies)
+ [

## Selezionare i parametri.
](#target-tracking-choose-metrics)
+ [

## Definire il valore target
](#target-tracking-define-target-value)
+ [

## Definisci il tempo di riscaldamento dell'istanza
](#as-target-tracking-scaling-warmup)
+ [

## Considerazioni
](#target-tracking-considerations)
+ [

# Creazione di una policy di dimensionamento con monitoraggio degli obiettivi
](policy_creating.md)
+ [

# Crea una politica di tracciamento degli obiettivi utilizzando metriche ad alta risoluzione per una risposta più rapida
](policy-creating-high-resolution-metrics.md)
+ [

# Crea una politica di ridimensionamento del tracciamento degli obiettivi utilizzando la matematica metrica
](ec2-auto-scaling-target-tracking-metric-math.md)

## Policy di dimensionamento con monitoraggio degli obiettivi multipli


Per ottimizzare le prestazioni di dimensionamento, è possibile utilizzare più policy di dimensionamento con monitoraggio degli obiettivi insieme, a condizione che ciascuna di esse utilizzi un parametro diverso. Ad esempio, l'utilizzo e la velocità di trasmissione effettiva possono influenzarsi a vicenda. Ogni volta che uno di questi parametri cambia, di solito implica che anche altri parametri saranno interessati. L'uso di più metriche fornisce quindi informazioni aggiuntive sul carico a cui è sottoposto il gruppo Auto Scaling. Questo può aiutare Amazon EC2 Auto Scaling a prendere decisioni più informate nel determinare la capacità da aggiungere al gruppo. 

L'intenzione di Amazon EC2 Auto Scaling è quella di dare sempre la priorità alla disponibilità. Se una delle politiche di tracciamento di destinazione è pronta per essere scalata orizzontalmente, il gruppo Auto Scaling verrà ridimensionato. Sarà scalabile solo se tutte le politiche di tracciamento del target (con la scala in parte abilitata) sono pronte per essere ampliate.

## Selezionare i parametri.


Puoi creare policy di dimensionamento con monitoraggio degli obiettivi sia con parametri predefiniti che personalizzati. Le metriche predefinite consentono di accedere più facilmente alle metriche più comunemente utilizzate per la scalabilità. Le metriche personalizzate consentono di scalare in base ad altre metriche disponibili, comprese le CloudWatch metriche [ad alta risoluzione](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Resolution_definition) che vengono pubblicate a intervalli più precisi nell'ordine di pochi secondi. Puoi pubblicare le tue metriche ad alta risoluzione o le metriche pubblicate da altri servizi. AWS 

Per ulteriori informazioni sulla creazione di politiche di tracciamento degli obiettivi utilizzando metriche ad alta risoluzione, consulta. [Crea una politica di tracciamento degli obiettivi utilizzando metriche ad alta risoluzione per una risposta più rapida](policy-creating-high-resolution-metrics.md)

Target Tracking supporta le seguenti metriche predefinite:
+ `ASGAverageCPUUtilization`: utilizzo medio CPU del gruppo Auto Scaling.
+ `ASGAverageNetworkIn`: numero medio di byte ricevuti su tutte le interfacce di rete dal gruppo Auto Scaling.
+ `ASGAverageNetworkOut`: numero medio di byte inviati su tutte le interfacce di rete dal gruppo Auto Scaling.
+ `ALBRequestCountPerTarget`: conteggio medio di richieste Application Load Balancer per destinazione per il gruppo Auto Scaling.

**Importante**  
*Altre informazioni utili sulle metriche relative all'utilizzo della CPU, all'I/O di rete e al numero di richieste di Application Load Balancer per target sono disponibili nell'argomento [Elenco delle metriche CloudWatch disponibili per le istanze nella Guida per l'utente di *Amazon EC2* e nelle metriche per](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewing_metrics_with_cloudwatch.html) l'Application Load [Balancer nella User Guide CloudWatch for Application Load Balancers](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html), rispettivamente.*

Puoi scegliere altre CloudWatch metriche disponibili o le tue metriche specificando una metrica personalizzata. CloudWatch Per un esempio che specifica una specifica metrica personalizzata per una politica di ridimensionamento di Target Tracking utilizzando il, vedi. AWS CLI[Esempi di politiche di scalabilità per AWS CLI](examples-scaling-policies.md)

Quando scegli un parametro, tieni presente quanto segue:
+ Ti consigliamo di utilizzare solo metriche disponibili a intervalli di un minuto o inferiori per aiutarti a scalare più rapidamente in risposta ai cambiamenti di utilizzo. Le metriche pubblicate a intervalli più bassi consentono alla policy di tracciamento degli obiettivi di rilevare e rispondere più rapidamente ai cambiamenti nell'utilizzo del gruppo Auto Scaling.
+ Se scegli metriche predefinite pubblicate da Amazon EC2, come l'utilizzo della CPU, ti consigliamo di abilitare il monitoraggio dettagliato. Per impostazione predefinita, tutte le metriche di Amazon EC2 vengono pubblicate a intervalli di cinque minuti, ma sono configurabili su un intervallo inferiore di un minuto abilitando il monitoraggio dettagliato. Per informazioni su come abilitare il monitoraggio dettagliato, consulta. [Configurare il monitoraggio per le istanze Auto Scaling](enable-as-instance-metrics.md)
+ Non tutti i parametri personalizzati funzionano per il monitoraggio degli obiettivi. Il parametro deve essere un parametro di utilizzo valido e deve descrivere quanto è impegnata un'istanza. Il valore del parametro deve aumentare e diminuire in proporzione al numero di istanze nel gruppo con scalabilità automatica. In questo modo i dati dei parametri possono essere utilizzati per il dimensionamento proporzionalmente al numero di istanze. Ad esempio, l'utilizzo della CPU di un gruppo con scalabilità automatica (ovvero il parametro Amazon EC2 `CPUUtilization` con la dimensione di parametro `AutoScalingGroupName`) funziona se il carico sul gruppo con scalabilità automatica viene distribuito tra le istanze. 
+ I seguenti parametri non funzionano per il monitoraggio degli obiettivi:
  + Il numero di richieste ricevute dal load balancer rivolto al gruppo con scalabilità automatica (ovvero, il parametro Elastic Load Balancing `RequestCount`). Il numero di richieste ricevute dal load balancer non cambia in base all'utilizzo del gruppo con scalabilità automatica.
  + La latenza della richiesta del load balancer (ovvero, il parametro Elastic Load Balancing `Latency`). La latenza della richiesta può aumentare in base all'aumento dell'utilizzo, ma non cambia necessariamente in modo proporzionale.
  + La CloudWatch metrica della coda di Amazon SQS. `ApproximateNumberOfMessagesVisible` Il numero di messaggi in una coda potrebbe non cambiare in proporzione alla dimensione del gruppo con scalabilità automatica che elabora i messaggi provenienti dalla coda. Tuttavia, un parametro personalizzato che misuri il numero di messaggi nella coda per ogni istanza EC2 nel gruppo con scalabilità automatica può funzionare. Per ulteriori informazioni, consulta [Policy di scalabilità basata su Amazon SQS](as-using-sqs-queue.md).
+ Per utilizzare il parametro `ALBRequestCountPerTarget`, è necessario specificare il parametro `ResourceLabel` affinché identifichi il gruppo di destinazione del load balancer associato al parametro. Per un esempio che specifica il `ResourceLabel` parametro per una politica di scalabilità di tracciamento degli obiettivi utilizzando il, vedi. AWS CLI[Esempi di politiche di scalabilità per AWS CLI](examples-scaling-policies.md)
+ Quando una metrica emette valori 0 reali su CloudWatch (ad esempio`ALBRequestCountPerTarget`), un gruppo Auto Scaling può scalare fino a 0 quando non c'è traffico verso l'applicazione per un periodo di tempo prolungato. Per fare in modo che il gruppo con scalabilità automatica si riduca orizzontalmente a 0 istanze quando non vengono instradate richieste, la capacità minima del gruppo deve essere impostata a 0.
+ Invece di pubblicare nuove metriche da utilizzare nella policy di scalabilità, è possibile utilizzare la matematica delle metriche per combinare quelle esistenti. Per ulteriori informazioni, consulta [Crea una politica di ridimensionamento del tracciamento degli obiettivi utilizzando la matematica metrica](ec2-auto-scaling-target-tracking-metric-math.md).

## Definire il valore target


Quando si crea una policy di dimensionamento del monitoraggio degli obiettivi, è necessario specificare un valore target. Il valore di destinazione rappresenta l'utilizzo medio ideale o la velocità di trasmissione effettiva per il gruppo con scalabilità automatica nel suo complesso. Per utilizzare le risorse in modo efficiente in termini di costi, impostare il valore target il più alto possibile con un buffer ragionevole per aumenti di traffico imprevisti. Quando l'applicazione viene aumentata orizzontalmente in modo ottimale per un normale flusso di traffico, il valore del parametro effettivo deve essere pari o appena inferiore al valore target. 

Quando una policy di scalabilità si basa sulla velocità di trasmissione effettiva, ad esempio il conteggio delle richieste per destinazione per un Application Load Balancer, I/O di rete o altri parametri di conteggio, il valore di destinazione rappresenta la velocità di trasmissione effettiva media ottimale da una singola istanza per un periodo di un minuto.

## Definisci il tempo di riscaldamento dell'istanza


Come opzione, è possibile specificare il numero di secondi necessari per la preparazione di un’istanza appena avviata. Finché non trascorre il tempo di preparazione specificato, l’istanza non viene conteggiata per i parametri aggregati dell’istanza EC2 del gruppo Auto Scaling.

Durante il periodo di riscaldamento delle istanze, le politiche di scalabilità vengono ridimensionate solo se il valore della metrica delle istanze che non si stanno riscaldando è superiore all'utilizzo previsto dalla policy.

Se il gruppo si dimensiona di nuovo, le istanze in fase di preparazione vengono conteggiate come parte della capacità desiderata per l'attività di dimensionamento successiva. L’intenzione è di aumentare di continuo (ma non in eccesso).

Durante l'attività di scalabilità orizzontale, tutte le attività di scalabilità avviate dalle politiche di scalabilità vengono bloccate fino al termine del riscaldamento delle istanze. Al termine del riscaldamento delle istanze, se si verifica un problema di scalabilità, tutte le istanze attualmente in fase di chiusura verranno conteggiate ai fini della capacità attuale del gruppo nel calcolo della nuova capacità desiderata. Pertanto, non rimuoviamo dal gruppo Auto Scaling più istanze del necessario.

**Valore predefinito**  
Se non viene impostato alcun valore, la politica di ridimensionamento utilizzerà il valore predefinito, che è il valore per il [riscaldamento dell'istanza predefinito definito](ec2-auto-scaling-default-instance-warmup.md) per il gruppo. [Se il riscaldamento dell'istanza predefinito è nullo, torna al valore del cooldown predefinito.](ec2-auto-scaling-scaling-cooldowns.md#set-default-cooldown) Si consiglia di utilizzare il riscaldamento predefinito dell'istanza per semplificare l'aggiornamento di tutte le politiche di ridimensionamento quando cambia il tempo di riscaldamento.

## Considerazioni


Le seguenti considerazioni si applicano quando si usano le policy di dimensionamento con monitoraggio degli obiettivi:
+ Non creare, modificare o eliminare gli CloudWatch allarmi utilizzati con una politica di ridimensionamento di Target Tracking. Amazon EC2 Auto Scaling crea e CloudWatch gestisce gli allarmi associati alle politiche di scalabilità di tracciamento di destinazione e può modificarli, sostituirli o eliminarli quando necessario per personalizzare l'esperienza di scalabilità delle applicazioni e i loro mutevoli modelli di utilizzo. 
+ Una policy di dimensionamento del monitoraggio degli obiettivi dà priorità alla disponibilità durante i periodi di fluttuazione dei livelli di traffico, riducendo orizzontalmente in modo più graduale quando il traffico diminuisce. Se desideri un maggiore controllo, una politica di scalabilità graduale potrebbe essere l'opzione migliore. Puoi disabilitare temporaneamente la parte scalabile di una policy di tracciamento di Target. Questo aiuta a mantenere un numero minimo di istanze per implementazioni di successo. 
+ Se nella metrica mancano punti dati, lo stato di CloudWatch allarme passa a. `INSUFFICIENT_DATA` In questo caso, Dimensionamento automatico Amazon EC2 non può dimensionare il gruppo finché non vengono trovati nuovi punti dati.
+ Se la metrica viene riportata scarsamente in base alla progettazione, la matematica metrica può essere utile. Ad esempio, per utilizzare i valori più recenti, utilizzate la `FILL(m1,REPEAT)` funzione dove `m1` è la metrica.
+ Potrebbero esserci delle differenze tra il valore di destinazione e i punti dati dei parametri reali. Ciò avviene perché agiamo sempre con prudenza, arrotondando per eccesso o per difetto, quando stabiliamo il numero di istanze da aggiungere o rimuovere. Ciò impedisce l'aggiunta di un numero insufficiente di istanze o la rimozione di troppe istanze. Tuttavia, per gruppi Auto Scaling più piccoli e con un numero inferiore di istanze, l'utilizzo del gruppo potrebbe sembrare lontano dal valore di destinazione.

  Ad esempio, supponiamo di impostare un valore obiettivo del 50 percento per l'utilizzo della CPU e che il gruppo Auto Scaling superi l'obiettivo. Potremmo stabilire che l'aggiunta di 1,5 istanze diminuirà l'utilizzo della CPU a quasi il 50%. Poiché non è possibile aggiungere 1,5 istanze, arrotondiamo e aggiungiamo due istanze. Questo potrebbe diminuire l'utilizzo della CPU a un valore al di sotto del 50%, ma garantisce che l'applicazione disponga di un numero sufficiente di risorse per essere supportata. Analogamente, se stabiliamo che la rimozione di 0,5 istanze aumenta l'utilizzo della CPU a oltre il 50 percento, sceglieremo di non effettuare la scalabilità fino a quando la metrica non sarà sufficientemente bassa da ritenere che il ridimensionamento non provochi oscillazioni. 

  Per i gruppi Auto Scaling di grandi dimensioni e con più istanze, l'utilizzo viene distribuito su un maggior numero di istanze, nel qual caso l'aggiunta o la rimozione di istanze provoca un intervallo minore tra il valore di destinazione e i punti di dati dei parametri reali.
+ Una policy di dimensionamento con monitoraggio degli obiettivi presuppone l'aumento orizzontale del gruppo con scalabilità automatica quando il parametro specificato supera il valore di destinazione. Quando il parametro specificato è inferiore al valore di destinazione, non è possibile utilizzare una policy di dimensionamento con monitoraggio degli obiettivi per aumentare orizzontalmente il gruppo con scalabilità automatica.

# Creazione di una policy di dimensionamento con monitoraggio degli obiettivi


Per creare una politica di ridimensionamento del tracciamento degli obiettivi per il tuo gruppo Auto Scaling, utilizza uno dei seguenti metodi. 

Prima di iniziare, verifica che la metrica preferita sia disponibile a intervalli di 1 minuto (rispetto all'intervallo predefinito di 5 minuti dei parametri di Amazon EC2).

------
#### [ Console ]

**Creazione di una policy di dimensionamento con monitoraggio degli obiettivi per un nuovo gruppo con dimensionamento automatico**

1. Apri la console Amazon EC2 all'indirizzo [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)e scegli **Auto Scaling** Groups dal pannello di navigazione.

1. Selezionare **Create Auto Scaling group (Crea un gruppo con scalabilità automatica)**.

1. Nelle fasi 1, 2 e 3, scegli le opzioni desiderate e procedere a **Step 4: Configure group size and scaling policies (Fase 4: configurazione delle dimensioni del gruppo e delle policy di dimensionamento)**.

1. Nella sezione **Dimensionamento**, specifica l'intervallo entro il quale desideri scalare, aggiornando la **Capacità minima desiderata** e la **Capacità massima desiderata**. Queste due impostazioni permettono al gruppo con scalabilità automatica di dimensionare dinamicamente. Per ulteriori informazioni, consulta [Impostare i limiti di dimensionamento per il gruppo con dimensionamento automatico](asg-capacity-limits.md).

1. In **Policy di dimensionamento**, scegli **Policy di dimensionamento con monitoraggio degli obiettivi**.

1. Per definire una policy, effettua le operazioni seguenti:

   1. Specificare un nome per la policy.

   1. Scegliere un parametro per **Tipo parametro**. 

      Se hai scelto **Application Load Balancer request count per target (Conteggio delle richieste Application Load Balancer per destinazione)**, scegli un gruppo destinazione in **Target group (Gruppo di destinazione)**.

   1. Specifica un **Target value (Valore di destinazione)** per il parametro.

   1. (Facoltativo) Per il **riscaldamento dell'istanza**, aggiorna il valore di riscaldamento dell'istanza secondo necessità.

   1. (Facoltativo) Selezionare **Disable scale in (Disabilita riduzione)** per creare solo una policy di espansione. In questo modo, se desiderato, è possibile creare una policy di riduzione separata di tipo diverso.

1. Procedi e crea il gruppo con dimensionamento automatico. La policy di dimensionamento verrà creata dopo la creazione del gruppo con scalabilità automatica. 

**Creazione di una policy di dimensionamento con monitoraggio degli obiettivi per un gruppo con scalabilità automatica esistente**

1. Apri la console Amazon EC2 all'indirizzo [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)e scegli **Auto Scaling** Groups dal pannello di navigazione.

1. Seleziona la casella di controllo accanto al gruppo con dimensionamento automatico.

   Si aprirà un riquadro diviso nella parte inferiore della pagina. 

1. Verifica che i limiti di dimensionamento siano impostati in modo appropriato. Ad esempio, se la capacità desiderata del gruppo è già al suo valore massimo, specifica un nuovo valore massimo per il dimensionamento orizzontale. Per ulteriori informazioni, consulta [Impostare i limiti di dimensionamento per il gruppo con dimensionamento automatico](asg-capacity-limits.md).

1. Nella scheda **Automatic scaling** (Scalabilità automatica) scegli **Add policy** (Aggiungi policy) in **Dynamic scaling policies** (Policy di dimensionamento dinamico).

1. Per definire una policy, effettua le operazioni seguenti:

   1. Per **Tipo di policy** lascia l'impostazione di default per il **Target tracking scaling (Dimensionamento con monitoraggio degli obiettivi)**. 

   1. Specificare un nome per la policy.

   1. Scegliere un parametro per **Tipo parametro**. È possibile scegliere un solo tipo di parametro. Per utilizzare più di un parametro, crea più policy.

      Se hai scelto **Application Load Balancer request count per target (Conteggio delle richieste Application Load Balancer per destinazione)**, scegli un gruppo destinazione in **Target group (Gruppo di destinazione)**.

   1. Specifica un **Target value (Valore di destinazione)** per il parametro.

   1. (Facoltativo) Per il **riscaldamento dell'istanza**, aggiorna il valore di riscaldamento dell'istanza secondo necessità.

   1. (Facoltativo) Selezionare **Disable scale in (Disabilita riduzione)** per creare solo una policy di espansione. In questo modo, se desiderato, è possibile creare una policy di riduzione separata di tipo diverso.

1. Scegli **Create** (Crea).

------
#### [ AWS CLI ]

Per creare una politica di ridimensionamento del tracciamento degli obiettivi, puoi utilizzare il seguente esempio per iniziare. Sostituisci ogni *user input placeholder* con le tue informazioni.

**Nota**  
Per ulteriori esempi, consulta [Esempi di politiche di scalabilità per AWS CLI](examples-scaling-policies.md).

**Creazione di una policy di dimensionamento con monitoraggio degli obiettivi (AWS CLI)**

1. Utilizzate il `cat` comando seguente per memorizzare un valore target per la vostra politica di scalabilità e una specifica metrica predefinita in un file JSON denominato `config.json` nella vostra home directory. Di seguito è riportato un esempio di configurazione di tracciamento degli obiettivi che mantiene l'utilizzo medio della CPU al 50%.

   ```
   $ cat ~/config.json
   {
     "TargetValue": 50.0,
     "PredefinedMetricSpecification": 
       {
         "PredefinedMetricType": "ASGAverageCPUUtilization"
       }
   }
   ```

   Per ulteriori informazioni, consulta il riferimento [PredefinedMetricSpecification](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_PredefinedMetricSpecification.html)all'*API Amazon EC2 Auto Scaling*.

1. Utilizzare il comando [put-scaling-policy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scaling-policy.html) insieme al file `config.json` creato nella fase precedente per creare la policy di dimensionamento.

   ```
   aws autoscaling put-scaling-policy --policy-name cpu50-target-tracking-scaling-policy \
     --auto-scaling-group-name my-asg --policy-type TargetTrackingScaling \
     --target-tracking-configuration file://config.json
   ```

   In caso di successo, questo comando restituisce i nomi ARNs e i nomi dei due CloudWatch allarmi creati per tuo conto.

   ```
   {
       "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:228f02c2-c665-4bfd-aaac-8b04080bea3c:autoScalingGroupName/my-asg:policyName/cpu50-target-tracking-scaling-policy",
       "Alarms": [
           {
               "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e",
               "AlarmName": "TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e"
           },
           {
               "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2",
               "AlarmName": "TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2"
           }
       ]
   }
   ```

------

# Crea una politica di tracciamento degli obiettivi utilizzando metriche ad alta risoluzione per una risposta più rapida
Crea una politica utilizzando metriche ad alta risoluzione

Il monitoraggio di Target supporta CloudWatch metriche ad alta risoluzione con punti dati di secondo livello pubblicati a intervalli inferiori a un minuto. Configura le politiche di tracciamento degli obiettivi per monitorare l'utilizzo attraverso CloudWatch metriche ad alta risoluzione per applicazioni con modelli di domanda volatili, come API per il servizio clienti, servizi di live streaming, siti di e-commerce ed elaborazione dati su richiesta. Per ottenere una maggiore precisione nell'abbinare la capacità alla domanda, Target Tracking utilizza questo monitoraggio approfondito per rilevare e rispondere più rapidamente ai cambiamenti della domanda e all'utilizzo delle istanze EC2.

Per ulteriori informazioni su come pubblicare i tuoi parametri ad alta risoluzione, consulta [Publish custom metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) nella *Amazon CloudWatch User* Guide. [Per accedere e pubblicare i parametri EC2, come l'utilizzo della CPU ad alta risoluzione, potresti voler utilizzare l'agente. CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html)

## Regioni AWS


Il tracciamento degli obiettivi mediante metriche ad alta risoluzione è disponibile in tutti i formati tranne che in. Regioni AWS AWS GovCloud (US) Regions

## Come funziona la politica di tracciamento degli obiettivi con metriche ad alta risoluzione


Puoi creare politiche di tracciamento degli obiettivi definendo la metrica che desideri monitorare e il valore obiettivo che desideri mantenere per la metrica. Per scalare in base a una metrica ad alta risoluzione, specifica il nome della metrica e imposta il periodo della metrica in cui il tracciamento del target osserva questa metrica su un valore inferiore a 60 secondi. Attualmente l'intervallo minimo supportato è di 10 secondi. Puoi pubblicare la tua metrica a intervalli inferiori a questi.

**Nota**  
Un periodo metrico superiore a 60 non è supportato.

Puoi configurare il tracciamento degli obiettivi su una singola CloudWatch metrica o interrogare più CloudWatch metriche e utilizzare espressioni matematiche per creare nuove serie temporali singole basate su queste metriche. Entrambe le opzioni consentono di definire il periodo metrico.

## Esempi


**Esempio 1**  
L'esempio seguente crea una politica di tracciamento degli obiettivi basata su una metrica ad alta risoluzione CloudWatch . La metrica viene pubblicata con una risoluzione di 10 secondi. Definendo il periodo, puoi abilitare il tracciamento degli obiettivi per monitorare questa metrica con una granularità di 10 secondi. Sostituisci ogni *user input placeholder* con le tue informazioni.

```
$ cat ~/config.json
{
  "TargetValue": 100.0,
  "CustomizedMetricSpecification": {
      "MetricName": "MyHighResolutionMetric",
      "Namespace": "MyNamespace",
      "Dimensions": [
        {
          "Name": "MyOptionalDimensionName",
          "Value": "MyOptionalMetricDimensionValue"
        }
      ],
      "Statistic": "Average",
      "Unit": "None"
      "Period": "10                  
  }
}
```

**Esempio 2**  
È possibile utilizzare espressioni matematiche metriche per combinare più metriche in un'unica serie temporale per la scalabilità. La matematica metrica è particolarmente utile per convertire le metriche esistenti in media per istanza. La conversione delle metriche è essenziale perché il tracciamento del target presuppone che la metrica sia inversamente proporzionale alla capacità del gruppo Auto Scaling. Pertanto, quando la capacità aumenta, la metrica dovrebbe diminuire quasi della stessa proporzione.

Ad esempio, supponiamo di avere una metrica che rappresenta i lavori in sospeso che devono essere elaborati dall'applicazione. È possibile utilizzare la matematica metrica per dividere i lavori in sospeso per la capacità operativa del gruppo Auto Scaling. Auto Scaling pubblica la metrica della capacità con una granularità di 1 minuto, quindi non ci sarà alcun valore per questa metrica per intervalli inferiori al minuto. Se si desidera utilizzare una risoluzione più elevata per la scalabilità, ciò può portare a una discrepanza periodica tra la capacità e la metrica dei lavori in sospeso. Per evitare questa mancata corrispondenza, si consiglia di utilizzare l'espressione FILL per riempire i valori mancanti con il numero di capacità registrato nel timestamp del minuto precedente. 

L'esempio seguente utilizza la matematica metrica per dividere la metrica dei lavori in sospeso per la capacità. Per il periodo, stiamo impostando entrambe le metriche su 10 secondi. Poiché la metrica viene pubblicata a intervalli di 1 minuto, utilizziamo l'operazione FILL sulla metrica della capacità.

Per utilizzare la matematica metrica per modificare più metriche

```
{
    "CustomizedMetricSpecification": {
        "Metrics": [
            {
                "Label": "Pending jobs to be processed",
                "Id": "m1",
                "MetricStat": {
                    "Metric": {
                        "MetricName": "MyPendingJobsMetric",
                        "Namespace": "Custom",
                    },
                    "Stat": "Sum"
                    "Period": 10
                },
                "ReturnData": false
            },
            {
                "Label": "Get the running instance capacity (matching the period to that of the m1)",
                "Id": "m2",
                "MetricStat": {
                    "Metric": {
                        "MetricName": "GroupInServiceInstances",
                        "Namespace": "AWS/AutoScaling",
                        "Dimensions": [
                            {
                                "Name": "AutoScalingGroupName",
                                "Value": "my-asg"
                            }
                        ]
                    },
                    "Stat": "Average"
                    "Period": 10
                },
                "ReturnData": false
            },
            {
                "Label": "Calculate the pending job per capacity (note the use of the FILL expression)",
                "Id": "e1",
                "Expression": "m1 / FILL(m2,REPEAT)",
                "ReturnData": true
            }
        ]
    },
    "TargetValue": 100
}
```

## Considerazioni


Considerate quanto segue quando utilizzate il tracciamento degli obiettivi e le metriche ad alta risoluzione.
+ Per assicurarti di non avere punti dati mancanti che potrebbero portare a risultati di ridimensionamento automatico indesiderati, la CloudWatch metrica deve essere pubblicata con una risoluzione uguale o superiore a quella del periodo specificato.
+ Definite il valore target come valore per-instance-per-minute metrico che desiderate mantenere per il vostro gruppo Auto Scaling. L'impostazione di un valore target appropriato è fondamentale se si utilizza una metrica il cui valore può moltiplicarsi in base al periodo della metrica. Ad esempio, qualsiasi metrica basata sul conteggio, come il numero di richieste o i lavori in sospeso, che utilizza la statistica SUM, avrà un valore di metrica diverso a seconda del periodo scelto. Dovresti comunque presumere che stai fissando un obiettivo rispetto alla media al minuto.
+ Sebbene non siano previsti costi aggiuntivi per l'utilizzo di Amazon EC2 Auto Scaling, è necessario pagare per risorse come CloudWatch istanze, parametri e allarmi di Amazon EC2. CloudWatch Gli allarmi ad alta risoluzione creati nell'esempio precedente hanno un prezzo diverso rispetto agli allarmi standard. CloudWatch Per ulteriori informazioni sui CloudWatch prezzi, consulta la pagina [ CloudWatch dei prezzi di Amazon](https://aws.amazon.com/cloudwatch/pricing/).
+ Il monitoraggio di Target richiede che le metriche rappresentino l'utilizzo medio per istanza delle istanze EC2. A tal fine, puoi utilizzare le [operazioni matematiche metriche come parte della configurazione della politica di tracciamento](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html) degli obiettivi. Dividete la metrica per la capacità operativa del gruppo Auto Scaling. Assicurati che lo stesso periodo metrico sia definito per ciascuna delle metriche che utilizzi per creare una singola serie temporale. Se queste metriche vengono pubblicate a intervalli diversi, utilizza l'operazione FILL sulla metrica con l'intervallo più alto per inserire i punti dati mancanti.

# Crea una politica di ridimensionamento del tracciamento degli obiettivi utilizzando la matematica metrica
Utilizzare la matematica dei parametri

Utilizzando la matematica metrica, puoi interrogare più CloudWatch metriche e utilizzare espressioni matematiche per creare nuove serie temporali basate su queste metriche. Puoi visualizzare le serie temporali risultanti nella CloudWatch console e aggiungerle ai dashboard. *Per ulteriori informazioni sulla matematica dei parametri, consulta [Using metric Math nella](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html) Amazon User Guide. CloudWatch * 

Alle espressioni matematiche dei parametri si applicano le seguenti considerazioni:
+ Puoi interrogare qualsiasi metrica disponibile. CloudWatch Ogni parametro è una combinazione univoca di nome del parametro, spazio dei nomi e nessuna o più dimensioni. 
+ È possibile utilizzare qualsiasi operatore aritmetico (\$1 - \$1/^), funzione statistica (come AVG o SUM) o altra funzione che supporti. CloudWatch 
+ È possibile utilizzare i parametri e i risultati di altre espressioni matematiche nelle formule dell'espressione matematica. 
+ Qualsiasi espressione utilizzata in una specifica dei parametri deve restituire una singola serie temporale.
+ È possibile verificare che un'espressione matematica metrica sia valida utilizzando la console o l'API. CloudWatch CloudWatch [GetMetricData](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_GetMetricData.html)

## Esempio: backlog della coda di Amazon SQS per istanza


Per calcolare il backlog della coda di Amazon SQS per istanza, prendi il numero approssimativo di messaggi disponibili per il recupero dalla coda e dividi tale numero per la capacità operativa del gruppo con scalabilità automatica, ossia il numero di istanze nello stato `InService`. Per ulteriori informazioni, consulta [Policy di scalabilità basata su Amazon SQS](as-using-sqs-queue.md).

La logica dell'espressione è questa:

 `sum of (number of messages in the queue)/(number of InService instances)`

Quindi le informazioni sulla CloudWatch metrica sono le seguenti.


| ID | CloudWatch parametro | Statistic | Periodo | 
| --- | --- | --- | --- | 
| m1 | ApproximateNumberOfMessagesVisible | Somma | 1 minuto | 
| m2 | GroupInServiceInstances | Media | 1 minuto | 

L'ID dell'operazione matematica sui parametri e l'espressione sono i seguenti.


| ID | Expression | 
| --- | --- | 
| e1 | (m1)/(m2) | 

Il diagramma seguente illustra l'architettura di questa metrica:

![\[Dimensionamento automatico Amazon EC2 usando il diagramma architettonico delle code\]](http://docs.aws.amazon.com/it_it/autoscaling/ec2/userguide/images/sqs-as-custom-metric-diagram.png)


**Per utilizzare questa matematica dei parametri al fine di creare una policy di dimensionamento con monitoraggio degli obiettivi (AWS CLI)**

1. Memorizza l'espressione matematica dei parametri come parte di un specifico parametro personalizzato in un file JSON denominato `config.json`. 

   Utilizza la tabella seguente come guida. Sostituisci ogni *user input placeholder* con le tue informazioni.

   ```
   {
       "CustomizedMetricSpecification": {
           "Metrics": [
               {
                   "Label": "Get the queue size (the number of messages waiting to be processed)",
                   "Id": "m1",
                   "MetricStat": {
                       "Metric": {
                           "MetricName": "ApproximateNumberOfMessagesVisible",
                           "Namespace": "AWS/SQS",
                           "Dimensions": [
                               {
                                   "Name": "QueueName",
                                   "Value": "my-queue"
                               }
                           ]
                       },
                       "Stat": "Sum"
                   },
                   "ReturnData": false
               },
               {
                   "Label": "Get the group size (the number of InService instances)",
                   "Id": "m2",
                   "MetricStat": {
                       "Metric": {
                           "MetricName": "GroupInServiceInstances",
                           "Namespace": "AWS/AutoScaling",
                           "Dimensions": [
                               {
                                   "Name": "AutoScalingGroupName",
                                   "Value": "my-asg"
                               }
                           ]
                       },
                       "Stat": "Average"
                   },
                   "ReturnData": false
               },
               {
                   "Label": "Calculate the backlog per instance",
                   "Id": "e1",
                   "Expression": "m1 / m2",
                   "ReturnData": true
               }
           ]
       },
       "TargetValue": 100
   }
   ```

   Per ulteriori informazioni, consulta il riferimento [TargetTrackingConfiguration](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_TargetTrackingConfiguration.html)all'*API Amazon EC2 Auto Scaling*.
**Nota**  
Di seguito sono riportate alcune risorse aggiuntive che possono aiutarti a trovare nomi di metriche, namespace, dimensioni e statistiche per le metriche: CloudWatch   
Per informazioni sui parametri disponibili per AWS i servizi, consulta i [AWS servizi che pubblicano CloudWatch metriche](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html) nella *Amazon CloudWatch User* Guide.
[Per ottenere il nome esatto della metrica, lo spazio dei nomi e le dimensioni (se applicabili) di una CloudWatch metrica con, consulta list-metrics. AWS CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudwatch/list-metrics.html) 

1. Per creare questo criterio, esegui il [put-scaling-policy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scaling-policy.html)comando utilizzando il file JSON come input, come illustrato nell'esempio seguente.

   ```
   aws autoscaling put-scaling-policy --policy-name sqs-backlog-target-tracking-scaling-policy \
     --auto-scaling-group-name my-asg --policy-type TargetTrackingScaling \
     --target-tracking-configuration file://config.json
   ```

   In caso di successo, questo comando restituisce l'Amazon Resource Name (ARN) ARNs della policy e i due CloudWatch allarmi creati per tuo conto.

   ```
   {
       "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:228f02c2-c665-4bfd-aaac-8b04080bea3c:autoScalingGroupName/my-asg:policyName/sqs-backlog-target-tracking-scaling-policy",
       "Alarms": [
           {
               "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e",
               "AlarmName": "TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e"
           },
           {
               "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2",
               "AlarmName": "TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2"
           }
       ]
   }
   ```
**Nota**  
Se questo comando genera un errore, assicurati di averlo aggiornato AWS CLI localmente alla versione più recente.