

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

# Auto Scaling dei cluster Valkey e Redis OSS
<a name="AutoScaling"></a>

## Prerequisiti
<a name="AutoScaling-Prerequisites"></a>

ElastiCache L'Auto Scaling è limitato a quanto segue:
+ Cluster Valkey o Redis OSS (modalità cluster abilitata) che eseguono Valkey 7.2 e versioni successive o Redis OSS 6.0 in poi
+ Cluster di data tiering (modalità cluster abilitata) che eseguono Valkey 7.2 e versioni successive o Redis OSS 7.0.7 in poi 
+ Dimensioni XLarge delle istanze: grandi, 2 XLarge
+ Famiglie di tipi di istanza: R7g, R6g, R6gd, R5, M7g, M6g, M5, C7gn
+ L'Auto Scaling in non ElastiCache è supportato per i cluster in esecuzione in datastore globali, Outposts o Local Zones.

## Gestione automatica della capacità con ElastiCache Auto Scaling con Valkey o Redis OSS
<a name="AutoScaling-Managing"></a>

ElastiCache la scalabilità automatica con Valkey o Redis OSS è la capacità di aumentare o diminuire automaticamente gli shard o le repliche desiderati nel servizio. ElastiCache ElastiCache sfrutta il servizio Application Auto Scaling per fornire questa funzionalità. Per ulteriori informazioni, consulta [Application Auto Scaling](https://docs.aws.amazon.com/autoscaling/application/userguide/what-is-application-auto-scaling.html). Per utilizzare il ridimensionamento automatico, è necessario definire e applicare una politica di ridimensionamento che utilizza CloudWatch metriche e valori target assegnati dall'utente. ElastiCache la scalabilità automatica utilizza la policy per aumentare o diminuire il numero di istanze in risposta ai carichi di lavoro effettivi. 

È possibile utilizzare il Console di gestione AWS per applicare una politica di scalabilità basata su una metrica predefinita. Un `predefined metric` viene definito in un'enumerazione in modo che tu possa specificarlo per nome nel codice o utilizzarlo nella Console di gestione AWS. I parametri personalizzati non possono essere selezionati tramite Console di gestione AWS. In alternativa, puoi utilizzare l'API Application Auto Scaling AWS CLI o l'API Application Auto Scaling per applicare una politica di scalabilità basata su una metrica predefinita o personalizzata. 

ElastiCache per Valkey e Redis OSS supporta la scalabilità per le seguenti dimensioni:
+ **Partizioni** : Aggiungi/rimuovi automaticamente frammenti nel cluster in modo simile al risharding online manuale. In questo caso, il ridimensionamento ElastiCache automatico attiva la scalabilità per tuo conto.
+ Repliche: **replica** automaticamente in modo uniforme su tutti add/remove replicas in the cluster similar to manual Increase/Decrease replica operations. ElastiCache auto scaling for Valkey and Redis OSS adds/removes gli shard del cluster.

ElastiCache per Valkey e Redis OSS supporta i seguenti tipi di policy di scalabilità automatica:
+ [Policy di dimensionamento con monitoraggio degli obiettivi](AutoScaling-Scaling-Policies-Target.md)— Aumenta o diminuisci il numero di operazioni shards/replicas eseguite dal servizio in base a un valore target per una metrica specifica. Questa operazione può essere paragonata al modo in cui il termostato regola la temperatura di una casa. Tu selezioni la temperatura, il termostato si occupa del resto.
+ [Scalabilità pianificata per la tua applicazione.](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-scheduled-scaling.html) — ElastiCache per Valkey e Redis OSS, la scalabilità automatica può aumentare o diminuire il numero di operazioni eseguite shards/replicas dal servizio in base alla data e all'ora.

![\[Immagine di ridimensionamento automatico ElastiCache per Valkey e Redis OSS\]](http://docs.aws.amazon.com/it_it/AmazonElastiCache/latest/dg/images/Auto-scaling.png)


I seguenti passaggi riassumono il processo di scalabilità automatica ElastiCache per Valkey e Redis OSS come mostrato nel diagramma precedente: 

1. È possibile creare una policy di scalabilità ElastiCache automatica per il gruppo di replica.

1. ElastiCache il ridimensionamento automatico crea un paio di CloudWatch allarmi per tuo conto. Ogni coppia rappresenta i tuoi limiti superiore e inferiore per i parametri. Questi CloudWatch allarmi vengono attivati quando l'utilizzo effettivo del cluster si discosta dall'utilizzo previsto per un periodo di tempo prolungato. Puoi ora visualizzare gli allarm nella console .

1. Se il valore della metrica configurata supera l'utilizzo previsto (o scende al di sotto dell'obiettivo) per un periodo di tempo specifico, CloudWatch attiva un allarme che richiama l'auto scaling per valutare la politica di scalabilità.

1. ElastiCache auto scaling invia una richiesta di modifica per regolare la capacità del cluster. 

1. ElastiCache elabora la richiesta di modifica, aumentando (o diminuendo) dinamicamente la Shards/Replicas capacità del cluster in modo che si avvicini all'utilizzo previsto. 

 Per capire come funziona ElastiCache Auto Scaling, supponiamo di avere un cluster denominato. `UsersCluster` Monitorando le CloudWatch metriche per`UsersCluster`, si determina il numero massimo di shard richiesti dal cluster quando il traffico è al suo picco e il numero minimo di shard quando il traffico è nel punto più basso. Decidi anche un valore di destinazione per l'utilizzo della CPU per il cluster. `UsersCluster` ElastiCache auto scaling utilizza il suo algoritmo di tracciamento del target per garantire che gli shard di `UsersCluster` forniti vengano regolati secondo necessità in modo che l'utilizzo rimanga pari o vicino al valore target. 

**Nota**  
La scalabilità potrebbe richiedere molto tempo e richiederà risorse di cluster aggiuntive per il ribilanciamento degli shard. ElastiCache Auto Scaling modifica le impostazioni delle risorse solo quando il carico di lavoro effettivo rimane elevato (o depresso) per un periodo prolungato di diversi minuti. L'algoritmo di tracciamento del target con scalabilità automatica cerca di mantenere l'utilizzo del target pari o vicino al valore prescelto a lungo termine. 

# Policy di Auto Scaling
<a name="AutoScaling-Policies"></a>

Una policy di dimensionamento dispone dei seguenti componenti:
+ Una metrica di destinazione: la CloudWatch metrica utilizzata da Valkey e Redis OSS Auto Scaling per determinare quando e quanto scalare. ElastiCache 
+ Capacità minima e massima: il numero minimo e massimo di shard o repliche da utilizzare per il dimensionamento. 
**Importante**  
Durante la creazione della politica di Auto Scaling, se la capacità corrente è superiore alla capacità massima configurata, eseguiamo lo ScaleIn durante la creazione della politica. MaxCapacity Allo stesso modo, se la capacità attuale è inferiore alla capacità minima configurata, scaleOut viene impostato su. MinCapacity 
+ Un tempo di raffreddamento: la quantità di tempo, in secondi, dopo il completamento di un'attività per ridurre orizzontalmente o aumentare orizzontalmente prima che un'altra attività per aumentare orizzontalmente si possa avviare. 
+ Un ruolo collegato al servizio: un ruolo di AWS Identity and Access Management (IAM) collegato a un servizio specifico. AWS Un ruolo collegato al servizio include tutte le autorizzazioni richieste dal servizio per chiamare altri AWS servizi per tuo conto. ElastiCache Auto Scaling genera automaticamente questo ruolo per te. `AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG` 
+ Attiva o disabilita le attività di riduzione orizzontale: capacità di abilitare o disabilitare le attività di riduzione orizzontale per una policy.

**Topics**
+ [Parametro di destinazione per Auto Scaling](#AutoScaling-TargetMetric)
+ [Capacità minima e massima](#AutoScaling-MinMax)
+ [Periodo di raffreddamento](#AutoScaling-Cooldown)
+ [Abilitazione o disabilitazione delle attività di riduzione](#AutoScaling-enable-disable-scale-in)

## Parametro di destinazione per Auto Scaling
<a name="AutoScaling-TargetMetric"></a>

In questo tipo di politica, una metrica predefinita o personalizzata e un valore target per la metrica vengono specificati in una configurazione della politica di scalabilità di tracciamento degli obiettivi. ElastiCache per Valkey e Redis OSS Auto Scaling crea e CloudWatch gestisce allarmi che attivano la politica di scalabilità e calcola la regolazione della scalabilità in base alla metrica e al valore target. La politica di scalabilità aggiunge o rimuove shards/replicas se necessario per mantenere la metrica pari o vicina al valore target specificato. Oltre a mantenere il parametro vicino al valore di destinazione, una policy di dimensionamento con monitoraggio degli obiettivi si adatta anche alle oscillazioni del parametro dovute a un carico di lavoro mutevole. Tale politica riduce inoltre al minimo le rapide fluttuazioni del numero di elementi disponibili per il cluster. shards/replicas 

Ad esempio, prendi una policy di dimensionamento che usa il parametro medio di default `ElastiCachePrimaryEngineCPUUtilization`. Tale policy può mantenere l'utilizzo della CPU a una percentuale specifica di utilizzo, come il 70 percento, o vicino ad essa. 

**Nota**  
Per ogni cluster , è possibile creare solo una policy di Auto Scaling per ogni parametro di destinazione. 

## Capacità minima e massima
<a name="AutoScaling-MinMax"></a>

**Shard**

È possibile specificare il numero massimo di shard a cui è possibile scalare ElastiCache per la scalabilità automatica di Valkey e Redis OSS. Questo valore deve essere uguale o inferiore a 250 con un minimo di 1. È inoltre possibile specificare il numero minimo di shard da gestire mediante la scalabilità automatica. Questo valore deve essere almeno 1 e o uguale o minore del valore specificato per il numero massimo di 250 shard. 

**Repliche**

È possibile specificare il numero massimo di repliche da ElastiCache gestire per la scalabilità automatica di Valkey e Redis OSS. Questo valore deve essere maggiore o uguale a 5. È inoltre possibile specificare il numero minimo di repliche da gestire mediante la scalabilità automatica. Questo valore deve essere almeno 1 e o uguale o inferiore del valore 5 specificato per il numero massimo repliche.

Per determinare il numero minimo e massimo di shards/replicas cui hai bisogno per il traffico tipico, verifica la configurazione Auto Scaling con la velocità di traffico prevista per il tuo modello. 

**Nota**  
ElastiCache le politiche di scalabilità automatica aumentano la capacità del cluster fino a raggiungere la dimensione massima definita o fino all'applicazione dei limiti di servizio. Per richiedere un aumento dei limiti, consulta [AWS Limiti del servizio](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) e seleziona il tipo di limite **Nodi per cluster per tipo di istanza**. 

**Importante**  
Ridurre orizzontalmente in assenza di traffico Se il traffico di una variante diventa zero, ElastiCache viene ridimensionato automaticamente fino al numero minimo di istanze specificato.

## Periodo di raffreddamento
<a name="AutoScaling-Cooldown"></a>

È possibile sintonizzare i tempi di risposta di una policy di dimensionamento con monitoraggio degli obiettivi aggiungendo dei tempi di raffreddamento che influiscano sul dimensionamento del cluster. Un periodo di attesa blocca le richieste di riduzione o aumento ulteriori finché il periodo non scade. Ciò rallenta le eliminazioni dei shards/replicas cluster ElastiCache for Valkey e Redis OSS per le richieste di scalabilità in entrata e la creazione di richieste di scalabilità orizzontale. shards/replicas Puoi specificare i seguenti periodi di attesa:
+ Un'attività scalabile riduce il numero di persone presenti nel cluster. shards/replicas Un periodo di attesa di riduzione specifica la quantità di tempo che deve passare, in secondi, tra il completamento di un'attività di riduzione e l'inizio di un'altra attività di questo tipo.
+ Un'attività con scalabilità orizzontale aumenta il numero di membri del shards/replicas cluster. Un periodo di attesa di aumento specifica la quantità di tempo che deve passare, in secondi, tra il completamento di un'attività di aumento e l'inizio di un'altra attività di questo tipo. 

Quando un periodo di raffreddamento di riduzione orizzontale o di aumento orizzontale non viene specificato, il valore di default per ogni aumento orizzontale è pari a 600 secondi e 900 per ogni riduzione orizzontale. 

## Abilitazione o disabilitazione delle attività di riduzione
<a name="AutoScaling-enable-disable-scale-in"></a>

Puoi abilitare o disabilitare le attività di riduzione per una policy. L'abilitazione delle attività di scalabilità consente l'eliminazione della politica di scalabilità. shards/replicas. When scale-in activities are enabled, the scale-in cooldown period in the scaling policy applies to scale-in activities. Disabling scale-in activities prevents the scaling policy from deleting shards/replicas 

**Nota**  
Le attività di scalabilità orizzontale sono sempre abilitate in modo che la politica di scalabilità possa creare ElastiCache frammenti o repliche in base alle esigenze.

## Autorizzazioni IAM richieste per l'Auto Scaling
<a name="AutoScaling-IAM-permissions"></a>

ElastiCache per Valkey e Redis OSS Auto Scaling è reso possibile da una combinazione di ElastiCache CloudWatch, e Application Auto Scaling. APIs I cluster vengono creati e aggiornati con ElastiCache, gli allarmi vengono creati e le politiche di scalabilità vengono create con CloudWatch Application Auto Scaling. Oltre alle autorizzazioni IAM standard per la creazione e l'aggiornamento dei cluster, l'utente IAM che accede alle impostazioni di ElastiCache Auto Scaling deve disporre delle autorizzazioni appropriate per i servizi che supportano la scalabilità dinamica. In questa policy più recente abbiamo aggiunto il supporto per il ridimensionamento verticale di Memcached, con l'azione. `elasticache:ModifyCacheCluster` Gli utenti IAM devono disporre dell'autorizzazione per utilizzare le operazioni nella seguente policy di esempio: 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "application-autoscaling:*",
                "elasticache:DescribeReplicationGroups",
                "elasticache:ModifyReplicationGroupShardConfiguration",
                "elasticache:IncreaseReplicaCount",
                "elasticache:DecreaseReplicaCount",
                "elasticache:DescribeCacheClusters",
                "elasticache:DescribeCacheParameters",
                "cloudwatch:DeleteAlarms",
                "cloudwatch:DescribeAlarmHistory",
                "cloudwatch:DescribeAlarms",
                "cloudwatch:DescribeAlarmsForMetric",
                "cloudwatch:GetMetricStatistics",
                "cloudwatch:ListMetrics",
                "cloudwatch:PutMetricAlarm",
                "cloudwatch:DisableAlarmActions",
                "cloudwatch:EnableAlarmActions",
                "iam:CreateServiceLinkedRole",
                "sns:CreateTopic",
                "sns:Subscribe",
                "sns:Get*",
                "sns:List*"
            ],
            "Resource": "arn:aws:iam::123456789012:role/autoscaling-roles-for-cluster"
        }
    ]
}
```

------

## Ruolo collegato al servizio
<a name="AutoScaling-SLR"></a>

Il servizio di scalabilità automatica ElastiCache per Valkey e Redis OSS richiede inoltre l'autorizzazione per descrivere i cluster e gli CloudWatch allarmi e le autorizzazioni per modificare la capacità di destinazione per tuo ElastiCache conto. Se abiliti Auto Scaling per il tuo cluster, viene creato un ruolo collegato al servizio denominato. `AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG` Questo ruolo collegato al servizio concede l'autorizzazione alla scalabilità ElastiCache automatica per descrivere gli allarmi per le tue politiche, monitorare la capacità attuale del parco veicoli e modificare la capacità del parco veicoli. Il ruolo collegato ai servizi è il ruolo predefinito per la scalabilità ElastiCache automatica. Per ulteriori informazioni, consulta [Ruoli collegati ai servizi ElastiCache per la scalabilità automatica Redis OSS nella Application Auto Scaling](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-service-linked-roles.html) User Guide.

## Best practice Auto Scaling
<a name="AutoScaling-best-practices"></a>

Prima di effettuare la registrazione a Auto Scaling, ti consigliamo di attenerti alle seguenti indicazioni:

1. **Usa una sola metrica di tracciamento**: consente di identificare se il cluster dispone di carichi di lavoro che utilizzano notevoli risorse di CPU o dati e di utilizzare la metrica predefinita corrispondente per definire la policy di dimensionamento. 
   + CPU del motore: `ElastiCachePrimaryEngineCPUUtilization` (dimensione partizione) o `ElastiCacheReplicaEngineCPUUtilization` (dimensione replica)
   + Utilizzo del database: `ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage` questa policy di dimensionamento è ideale con maxmemory-policy impostato su noeviction sul cluster.

   Ti consigliamo di evitare più policy per dimensione nel cluster. ElastiCache per Valkey e Redis OSS Auto scaling ridimensionerà la destinazione scalabile se alcune policy di tracciamento delle destinazioni sono pronte per la scalabilità orizzontale, ma la scalerà solo se tutte le politiche di tracciamento della destinazione (con la parte scalabile abilitata) sono pronte per la scalabilità orizzontale. Se più policy impongono alla destinazione scalabile un dimensionamento orizzontale o verticale contemporaneamente, viene dimensionata in base al criterio che fornisce la capacità massima sia per riduzione orizzontale che per il dimensionamento orizzontale.

1. **Metriche personalizzate per il monitoraggio degli obiettivi**: prestare attenzione quando si utilizzano le metriche personalizzati per il monitoraggio degli obiettivi, poiché il dimensionamento automatico è più adatto alla scalabilità orizzontale/ridimensionamento proporzionale alle modifiche delle metriche scelte per la policy. Se tali metriche non cambiano proporzionalmente alle operazioni di dimensionamento utilizzate per la creazione della policy, potrebbero verificarsi operazioni di scalabilità orizzontale o ridimensionamento continue che possono influire sulla disponibilità o sui costi. 

    Per i cluster dei livelli di dati (tipi di istanza della famiglia r6gd), evita di utilizzare metriche basate sulla memoria per il dimensionamento.

1. **Scalabilità pianificata**: se ritieni che il tuo carico di lavoro sia deterministico (viene raggiunto high/low in un momento specifico), ti consigliamo di utilizzare Scheduled Scaling e configurare la capacità target in base alle necessità. Il monitoraggio dell’obiettivo è ideale per carichi di lavoro non deterministici e per il cluster per un funzionamento con la metrica obiettivo richiesta, con aumento orizzontale quando occorrono più risorse e riduzione orizzontale quando occorrono meno risorse. 

1. **Disabilita la scalabilità in entrata**: la scalabilità automatica su Target Tracking è la soluzione ideale per i cluster con carichi di lavoro graduali, poiché le metriche possono innescare oscillazioni consecutive increase/decrease di scale-out/in. spikes/dip Per evitare tali oscillazioni, puoi iniziare con la riduzione orizzontale disabilitata e utilizzarla manualmente in un secondo momento in base alla necessità. 

1. **Testa la tua applicazione: ti consigliamo di testare** l'applicazione con i Min/Max carichi di lavoro stimati per determinare il minimo e il massimo shards/replicas assoluti richiesti per il cluster, creando al contempo politiche di scalabilità per evitare problemi di disponibilità. La scalabilità automatica può effettuare l’aumento orizzontale fino alla soglia massima e la riduzione orizzontale fino alla soglia minima configurata per l’obiettivo.

1. **Definizione del valore target**: è possibile analizzare le CloudWatch metriche corrispondenti per l'utilizzo del cluster in un periodo di quattro settimane per determinare la soglia del valore target. Se non sei ancora certo del valore da scegliere, ti consigliamo di iniziare con il valore predefinito minimo supportato della metrica.

1. AutoScaling on Target Tracking è più adatto per i cluster con distribuzione uniforme dei carichi di lavoro tra le dimensioni. shards/replicas Avere una distribuzione non uniforme può portare a:
   + Scalabilità quando non necessaria a causa del carico di lavoro spike/dip su alcuni shard/repliche hot.
   + Non dimensionamento quando richiesto a causa della media complessiva vicina alla destinazione anche se si dispone di partizioni/repliche hot.

**Nota**  
Durante la scalabilità orizzontale del cluster, ElastiCache replicherà automaticamente le funzioni caricate in uno dei nodi esistenti (selezionati a caso) sui nuovi nodi. Se il cluster utilizza Valkey o Redis OSS 7.0 o versioni successive e l'applicazione utilizza [Functions, consigliamo di caricare tutte le funzioni](https://valkey.io/topics/functions-intro/) su tutti gli shard prima di eseguire la scalabilità orizzontale, in modo che il cluster non finisca con funzioni diverse su shard diversi.

Dopo la registrazione a, tieni presente quanto segue: AutoScaling
+ Esistono limitazioni sulle configurazioni del dimensionamento automatico supportate, per cui è preferibile non modificare la configurazione di un gruppo di replica registrato per il dimensionamento automatico. Di seguito vengono mostrati gli esempi:
  + Modifica manuale del tipo di istanza in tipi non supportati.
  + Associazione del gruppo di replica a un Global Datastore.
  + Modifica `ReservedMemoryPercent` parametro .
  +  increasing/decreasing shards/replicas beyond the Min/MaxCapacità configurata manualmente durante la creazione delle policy.

# Utilizzo di Auto Scaling con i shard
<a name="AutoScaling-Using-Shards"></a>

Con s AutoScaling puoi utilizzare le politiche ElastiCache di tracciamento e pianificazione con il tuo motore Valkey o Redis OSS. 

Di seguito vengono forniti dettagli sul tracciamento degli obiettivi e sulle politiche pianificate e su come applicarle utilizzando e. Console di gestione AWS AWS CLI APIs

**Topics**
+ [Policy di dimensionamento con monitoraggio degli obiettivi](AutoScaling-Scaling-Policies-Target.md)
+ [Aggiunta di una policy di dimensionamento](AutoScaling-Scaling-Adding-Policy-Shards.md)
+ [Registrare un target scalabile](AutoScaling-Scaling-Registering-Policy-CLI.md)
+ [Definizione di una policy di dimensionamento](AutoScaling-Scaling-Defining-Policy-API.md)
+ [Disabilitazione dell'attività di riduzione orizzontale](AutoScaling-Scaling-Disabling-Scale-in.md)
+ [Applicazione di una policy di dimensionamento](AutoScaling-Scaling-Applying-a-Scaling-Policy.md)
+ [Modifica di una policy di dimensionamento](AutoScaling-Scaling-Editing-a-Scaling-Policy.md)
+ [Eliminazione di una policy di dimensionamento](AutoScaling-Scaling-Deleting-a-Scaling-Policy.md)
+ [Utilizzo CloudFormation per le politiche di Auto Scaling](AutoScaling-with-Cloudformation-Shards.md)
+ [Dimensionamento pianificato](AutoScaling-with-Scheduled-Scaling-Shards.md)

# Policy di dimensionamento con monitoraggio degli obiettivi
<a name="AutoScaling-Scaling-Policies-Target"></a>

Con le politiche di scalabilità del tracciamento degli obiettivi, si seleziona una metrica e si imposta un valore obiettivo. ElastiCache per Valkey e Redis OSS Auto Scaling crea e gestisce gli allarmi che attivano CloudWatch la politica di scalabilità e calcola la regolazione della scalabilità in base alla metrica e al valore target. La policy di dimensionamento aggiunge o rimuove partizioni in base alle necessità, per mantenere il parametro al valore di destinazione specificato o vicino a esso. Oltre a mantenere il parametro vicino al valore di destinazione, una policy di dimensionamento di monitoraggio dei target si adatta anche alle fluttuazioni del parametro dovute a un modello di carico fluttuante e riduce al minimo le fluttuazioni rapide nella capacità del parco istanze. 

Ad esempio, si consideri una policy di dimensionamento che utilizza la media predefinita`ElastiCachePrimaryEngineCPUUtilization`Metrica con il valore di destinazione configurato. Tale policy può mantenere l'utilizzo della CPU al valore di destinazione specificato o vicino al valore di destinazione specificato.

## Metriche predefinite
<a name="AutoScaling-Scaling-Criteria-predfined-metrics"></a>

Una metrica predefinita è una struttura che fa riferimento a un nome, una dimensione e una statistica () specifici di una determinata metrica. `average` CloudWatch La policy di dimensionamento automatico definisce le seguenti metriche predefinite per il cluster:


****  

| Nome parametro predefinito | CloudWatch Nome parametro | CloudWatch Dimensione metrica | Tipi di istanza non idonei  | 
| --- | --- | --- | --- | 
| ElastiCachePrimaryEngineCPUUtilization |  `EngineCPUUtilization`  |  ReplicationGroupId, Ruolo = primario  | Nessuno | 
| ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage |  `DatabaseCapacityUsageCountedForEvictPercentage`  |  Metriche del gruppo di replica OSS Valkey o Redis  | Nessuno | 
| ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage |  `DatabaseMemoryUsageCountedForEvictPercentage`  |  Metriche del gruppo di replica Valkey o Redis OSS  | R6gd | 

I tipi di istanza dei livelli di dati non possono utilizzare `ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage`, poiché questi tipi di istanza archiviano i dati in memoria e in SSD. Il caso d'uso previsto per le istanze dei livelli di dati è avere il 100% di utilizzo della memoria e riempire l'SSD in base alle esigenze.

## Criteri Auto Scaling per le partizioni
<a name="AutoScaling-Scaling-Criteria"></a>

Quando il servizio rileva che la metrica predefinita è uguale o superiore all'impostazione di Target, aumenta automaticamente la capacità degli shard. ElastiCache per Valkey e Redis OSS ridimensiona gli shard del cluster in base a un conteggio pari al più grande tra due numeri: la variazione percentuale rispetto a Target e il 20% degli shard attuali. Per quanto riguarda la scalabilità in entrata, ElastiCache non verrà eseguita automaticamente a meno che il valore della metrica complessivo non sia inferiore al 75 percento del Target definito. 

Per un esempio di scala orizzontale, se hai 50 frammenti e
+ se Target viola del 30 percento, si ElastiCache ridimensiona orizzontalmente del 30 percento, il che si traduce in 65 shard per cluster. 
+ se Target viene violato del 10%, per impostazione predefinita viene ElastiCache ridimensionato almeno del 20%, il che si traduce in 60 shard per cluster. 

Ad esempio, se hai selezionato un valore Target del 60 percento, ElastiCache non verrà eseguito lo scaling automatico finché la metrica non sarà inferiore o uguale al 45 percento (25 percento inferiore al 60 percento del Target).

## Considerazioni su Auto Scaling
<a name="AutoScaling-Scaling-Considerations"></a>

Tieni a mente le seguenti considerazioni:
+ Una policy di dimensionamento di monitoraggio obiettivi presuppone che essa debba eseguire un dimensionamento orizzontale quando il parametro specificato supera il valore di destinazione. Non è possibile utilizzare una politica di ridimensionamento del tracciamento degli obiettivi per la scalabilità orizzontale quando la metrica specificata è inferiore al valore target. ElastiCache for Valkey e Redis OSS ridimensiona gli shard con una deviazione minima del 20% rispetto alla destinazione degli shard esistenti nel cluster.
+ Una policy di dimensionamento di monitoraggio obiettivi non esegue il dimensionamento quando il parametro specificato non dispone di dati sufficienti. Non esegue la riduzione orizzontale perché l’insufficienza di dati non viene interpretata come basso utilizzo. 
+ Potrebbero esserci delle differenze tra il valore di destinazione e i punti di dati dei parametri reali. Questo perché ElastiCache Auto Scaling agisce sempre in modo conservativo arrotondando verso l'alto o verso il basso quando determina la quantità di capacità da aggiungere o rimuovere. In questo modo si impedisce l'aggiunta di capacità insufficiente o la rimozione di capacità eccessiva. 
+ Per garantire la disponibilità delle applicazioni, il servizio aumenta in proporzione al parametro il più veloce possibile, ma si riduce in modo più conservativo. 
+ È possibile disporre di più politiche di scalabilità di tracciamento degli obiettivi per un cluster ElastiCache for Valkey e Redis OSS, a condizione che ciascuna di esse utilizzi una metrica diversa. L'intenzione di ElastiCache Auto Scaling è quella di dare sempre la priorità alla disponibilità, quindi il suo comportamento varia a seconda che le policy di tracciamento di destinazione siano pronte per la scalabilità orizzontale o verticale. Il servizio viene aumentato se una qualsiasi delle policy di monitoraggio obiettivi è pronta per l'aumento, ma viene ridotto solo se tutte le policy di monitoraggio obiettivi (con la porzione di riduzione abilitata) sono pronte per la riduzione. 
+ Non modificate o eliminate gli CloudWatch allarmi gestiti da ElastiCache Auto Scaling per una politica di scalabilità di tracciamento degli obiettivi. ElastiCache Auto Scaling elimina automaticamente gli allarmi quando si elimina la politica di ridimensionamento. 
+ ElastiCache L'Auto Scaling non impedisce di modificare manualmente gli shard del cluster. Queste regolazioni manuali non influiscono sugli CloudWatch allarmi esistenti associati alla politica di scalabilità, ma possono influire sulle metriche che potrebbero attivare questi allarmi. CloudWatch 
+ Questi CloudWatch allarmi gestiti da Auto Scaling sono definiti sulla base della metrica AVG su tutti gli shard del cluster. Quindi, avere frammenti caldi può comportare uno scenario di:
  + ridimensionamento quando non necessario a causa del caricamento su alcuni shard caldi che attiva un allarme CloudWatch 
  + non dimensionare quando richiesto a causa di AVG aggregato su tutti le partizioni che influiscono sull'allarme non violato. 
+ ElastiCache i limiti predefiniti relativi ai nodi per cluster sono ancora validi. Pertanto, quando si opta per il Auto Scaling e se si prevede che i nodi massimi siano superiori al limite di default, è necessario richiedere un aumento del limite a[AWS Restrizioni dei servizi](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)e scegliere il tipo di limite**Nodi per cluster per tipo di istanza**. 
+ Assicurati di avere abbastanza ENIs (interfacce di rete elastiche) disponibili nel tuo VPC, necessarie durante la scalabilità orizzontale. Per ulteriori informazioni, consulta [Interfacce di rete elastiche](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ElasticNetworkInterfaces.html).
+ Se la capacità disponibile non è sufficiente EC2, ElastiCache Auto Scaling non scalerà e verrà ritardato fino a quando la capacità non sarà disponibile.
+ ElastiCache per Redis OSS Auto Scaling durante lo scale-in non rimuoverà gli shard con slot con una dimensione dell'elemento superiore a 256 MB dopo la serializzazione.
+ Durante la scale-in non rimuoverà i frammenti se la memoria disponibile è insufficiente nella configurazione di partizioni risultante.

# Aggiunta di una policy di dimensionamento
<a name="AutoScaling-Scaling-Adding-Policy-Shards"></a>

È possibile aggiungere una politica di scalabilità utilizzando. Console di gestione AWS

**Per aggiungere una policy di Auto Scaling a un cluster ElastiCache for Valkey e Redis OSS**

1. Accedi a Console di gestione AWS e apri la ElastiCache console Amazon all'indirizzo [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Nel pannello di navigazione, scegli **Valkey** o **Redis** OSS. 

1. Scegli il cluster a cui aggiungere una policy (seleziona il nome del cluster e non il pulsante a sinistra del cluster). 

1. Seleziona la scheda **Policy di Auto Scaling**. 

1. Scegli **add dynamic scaling** (Aggiungi dimensionamento automatico). 

1. In **Nome policy**, immetti un nome per la policy. 

1. Per **Dimensione scalabile** scegli **partizioni**. 

1. Per il parametro di destinazione, scegli uno dei seguenti modi:
   + **Utilizzo primario della CPU** per creare una policy basata sull'utilizzo medio della CPU. 
   + **Memoria** per creare una policy basata sulla memoria media del database. 
   + **Capacità** per creare una policy basata sull'utilizzo della capacità database media. La metrica Capacità include l'utilizzo della memoria e di SSD per le istanze dei livelli di dati e l'utilizzo della memoria per tutti gli altri tipi di istanza.

1. Per il valore target, scegli un valore maggiore o uguale a 35 e inferiore o uguale a 70. La scalabilità automatica manterrà questo valore per la metrica target selezionata tra i tuoi shard: ElastiCache 
   + **Utilizzo della CPU primaria**: mantiene il valore target per la metrica `EngineCPUUtilization` sui nodi primari. 
   + **Memoria**: mantiene il valore target per la metrica `DatabaseMemoryUsageCountedForEvictPercentage` 
   + **Capacità** mantiene il valore target per la metrica `DatabaseCapacityUsageCountedForEvictPercentage`,

   Le partizioni del cluster vengono aggiunte o rimosse per tenere il parametro vicino al valore specificato. 

1. (Facoltativo) I periodi di attesa di riduzione o aumento non sono supportati dalla console. Utilizzate il AWS CLI per modificare i valori di cooldown. 

1. Per **Capacità minima**, digita il numero minimo di shard che la policy ElastiCache Auto Scaling deve mantenere. 

1. Per **Capacità massima**, digitare il numero massimo di shard che la policy ElastiCache Auto Scaling deve mantenere. Questo valore deve essere maggiore o uguale a 250.

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

# Registrare un target scalabile
<a name="AutoScaling-Scaling-Registering-Policy-CLI"></a>

Prima di poter utilizzare Auto Scaling con un cluster ElastiCache for Valkey e Redis OSS, è necessario registrare il cluster con auto scaling. ElastiCache Lo fai per definire la dimensione di scalabilità e i limiti da applicare a quel cluster. ElastiCache la scalabilità automatica ridimensiona dinamicamente il cluster lungo la dimensione `elasticache:replication-group:NodeGroups` scalabile, che rappresenta il numero di shard del cluster. 

 **Usando il AWS CLI** 

Per registrare il tuo cluster ElastiCache for Valkey e Redis OSS, usa il [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html)comando con i seguenti parametri: 
+ `--service-namespace` – Imposta questo valore su `elasticache`
+ `--resource-id`— L'identificatore di risorsa per il cluster. Per questo parametro, il tipo di risorsa è `ReplicationGroup` e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ `--scalable-dimension`: imposta questo valore su `elasticache:replication-group:NodeGroups`. 
+ `--max-capacity `— Il numero massimo di shard da gestire mediante la scalabilità ElastiCache automatica. Per informazioni sulla relazione tra `--min-capacity`, `--max-capacity` e il numero di partizioni nel cluster, consulta [Capacità minima e massima](AutoScaling-Policies.md#AutoScaling-MinMax). 
+ `--min-capacity `— Il numero minimo di shard da gestire tramite ElastiCache auto scaling. Per informazioni sulla relazione tra `--min-capacity`, `--max-capacity` e il numero di partizioni nel cluster, consulta [Capacità minima e massima](AutoScaling-Policies.md#AutoScaling-MinMax). 

**Example**  
 Nell'esempio seguente, si registra un ElastiCache cluster denominato. `myscalablecluster` La registrazione indica che il cluster deve essere dimensionato dinamicamente per avere da uno a dieci partizioni .   
Per Linux, macOS o Unix:  

```
aws application-autoscaling register-scalable-target \
    --service-namespace elasticache \
    --resource-id replication-group/myscalablecluster \
    --scalable-dimension elasticache:replication-group:NodeGroups \
    --min-capacity 1 \
    --max-capacity 10 \
```
Per Windows:  

```
aws application-autoscaling register-scalable-target ^
    --service-namespace elasticache ^
    --resource-id replication-group/myscalablecluster ^
    --scalable-dimension elasticache:replication-group:NodeGroups ^
    --min-capacity 1 ^
    --max-capacity 10 ^
```

**Utilizzo dell'API**

Per registrare il ElastiCache cluster, utilizzate il [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html)comando con i seguenti parametri: 
+ ServiceNamespace — Imposta questo valore su elasticache. 
+ resourceID: l'identificatore della risorsa per il cluster. ElastiCache Per questo parametro, il tipo di risorsa è ReplicationGroup e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ ScalableDimension — Imposta questo valore su. `elasticache:replication-group:NodeGroups` 
+ MinCapacity — Il numero minimo di shard da gestire tramite ElastiCache auto scaling. Per informazioni sulla relazione tra —capacità-min, —capacità-max il numero di repliche nel cluster, consulta.[Capacità minima e massima](AutoScaling-Policies.md#AutoScaling-MinMax).
+ MaxCapacity — Il numero massimo di shard da gestire mediante la scalabilità ElastiCache automatica. Per informazioni sulla relazione tra —capacità-min, —capacità-max il numero di repliche nel cluster, consulta.[Capacità minima e massima](AutoScaling-Policies.md#AutoScaling-MinMax).

**Example**  
Nell'esempio seguente, si registra un ElastiCache cluster denominato `myscalablecluster` con l'API Application Auto Scaling. Questa registrazione indica che il cluster database deve essere dimensionato dinamicamente per avere da uno a 5 repliche .   

```
POST / HTTP/1.1
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.RegisterScalableTarget
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:NodeGroups",
    "MinCapacity": 1,
    "MaxCapacity": 5
}
```

# Definizione di una policy di dimensionamento
<a name="AutoScaling-Scaling-Defining-Policy-API"></a>

Una configurazione della policy di dimensionamento di monitoraggio degli obiettivi è rappresentata da un blocco JSON in cui sono definiti i valori dei parametri e della destinazione. Puoi salvare una configurazione della policy di dimensionamento come un blocco JSON in un file di testo. Si utilizza quel file di testo quando si richiama l'API AWS CLI Application Auto Scaling. Per ulteriori informazioni sulla sintassi della configurazione della policy, consulta [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) in Application Auto Scaling API Reference. 

Le seguenti opzioni sono disponibili per definire una configurazione di una policy di dimensionamento con monitoraggio degli obiettivi. 

**Topics**
+ [Utilizzo di un parametro di default](#AutoScaling-Scaling-Predefined-Metric)
+ [Utilizzo di un parametro personalizzato](#AutoScaling-Scaling-Custom-Metric)
+ [Utilizzo di periodi di attesa](#AutoScaling-Scaling-Cooldown-periods)

## Utilizzo di un parametro di default
<a name="AutoScaling-Scaling-Predefined-Metric"></a>

Utilizzando metriche predefinite, puoi definire rapidamente una politica di scalabilità del tracciamento del target per un cluster ElastiCache for Valkey e Redis OSS che funziona con il tracciamento del target in Auto Scaling. ElastiCache 

Attualmente, ElastiCache supporta le seguenti metriche predefinite in Auto NodeGroup Scaling: 
+ **ElastiCachePrimaryEngineCPUUtilization**— Il valore medio della `EngineCPUUtilization` metrica in tutti i nodi primari del CloudWatch cluster.
+ **ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage**— Il valore medio della `DatabaseMemoryUsageCountedForEvictPercentage` metrica in CloudWatch tutti i nodi primari del cluster.
+ **ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage**— Il valore medio della `ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage` metrica in CloudWatch tutti i nodi primari del cluster.

Per ulteriori informazioni sulle metriche `EngineCPUUtilization`, `DatabaseMemoryUsageCountedForEvictPercentage` e `DatabaseCapacityUsageCountedForEvictPercentage`, consultare [Monitoraggio dell'utilizzo con CloudWatch Metrics](CacheMetrics.md). Per utilizzare un parametro di default nella policy di dimensionamento, crea una configurazione di monitoraggio degli obiettivi per la policy di dimensionamento. La configurazione deve includere un `PredefinedMetricSpecification` per il parametro di default e un TargetValue per il valore di destinazione del parametro. 

**Example**  
L'esempio seguente descrive una tipica configurazione delle policy per il ridimensionamento del target-tracking per un cluster ElastiCache for Valkey e Redis OSS. In questa configurazione, la metrica `ElastiCachePrimaryEngineCPUUtilization` predefinita viene utilizzata per regolare il cluster in base a un utilizzo medio della CPU del 40% su tutti i nodi primari del cluster.   

```
{
    "TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {
        "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization"
    }
}
```

## Utilizzo di un parametro personalizzato
<a name="AutoScaling-Scaling-Custom-Metric"></a>

 Utilizzando dei parametri personalizzati, è possibile definire una policy di dimensionamento di monitoraggio degli obiettivi che soddisfi i requisiti personalizzati. È possibile definire un parametro personalizzato in base a qualsiasi parametro ElastiCache che si modifichi in proporzione al dimensionamento. Non tutte le ElastiCache metriche funzionano per il tracciamento degli obiettivi. Il parametro deve essere un parametro di utilizzo valido e deve descrivere quanto è impegnata un'istanza. Il valore del parametro deve aumentare o diminuire in proporzione al numero di partizioni nel cluster. Questo aumento o riduzione proporzionale è necessario per utilizzare i dati del parametro per aumentare orizzontalmente in modo proporzionale il numero di repliche . 

**Example**  
Il seguente esempio descrive una configurazione di monitoraggio degli obiettivi per una policy di dimensionamento. In questa configurazione, una metrica personalizzata regola un ElastiCache cluster Redis OSS in base a un utilizzo medio della CPU del 50% su tutti gli shard di un cluster denominato. `my-db-cluster` 

```
{
    "TargetValue": 50,
    "CustomizedMetricSpecification":
    {
        "MetricName": "EngineCPUUtilization",
        "Namespace": "AWS/ElastiCache",
        "Dimensions": [
            {
                "Name": "ReplicationGroup","Value": "my-db-cluster"
            },
            {
                "Name": "Role","Value": "PRIMARY"
            }
        ],
        "Statistic": "Average",
        "Unit": "Percent"
    }
}
```

## Utilizzo di periodi di attesa
<a name="AutoScaling-Scaling-Cooldown-periods"></a>

È possibile specificare un valore, in secondi, per `ScaleOutCooldown` per aggiungere un periodo di attesa per il dimensionamento orizzontale del cluster. Allo stesso modo, è possibile aggiungere un valore, in secondi, per `ScaleInCooldown` per aggiungere un periodo di attesa per la riduzione del cluster. Per ulteriori informazioni, consulta [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_TargetTrackingScalingPolicyConfiguration.html)l'Application Auto Scaling API Reference. 

 Il seguente esempio descrive una configurazione di monitoraggio degli obiettivi per una policy di dimensionamento. In questa configurazione, la metrica `ElastiCachePrimaryEngineCPUUtilization` predefinita viene utilizzata ElastiCache per regolare un cluster Redis OSS in base a un utilizzo medio della CPU del 40% su tutti i nodi primari di quel cluster. La configurazione fornisce un tempo di raffreddamento di riduzione orizzontale di 10 minuti e un tempo di raffreddamento di aumento di 5 minuti. 

```
{
    "TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {
        "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization"
    },
    "ScaleInCooldown": 600,
    "ScaleOutCooldown": 300
}
```

# Disabilitazione dell'attività di riduzione orizzontale
<a name="AutoScaling-Scaling-Disabling-Scale-in"></a>

È possibile impedire la scalabilità della configurazione della policy di scalabilità target-tracking nel cluster disabilitando l'attività di scalabilità in ingresso. La disabilitazione delle attività di riduzione orizzontale impedisce alla policy di dimensionamento di eliminare le partizioni, consentendo tuttavia alla policy di dimensionamento di crearle in base alle esigenze. 

È possibile specificare un valore booleano per `DisableScaleIn` per abilitare o disabilitare l'attività di riduzione orizzontale per il cluster. Per ulteriori informazioni, consulta [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_TargetTrackingScalingPolicyConfiguration.html)l'Application Auto Scaling API Reference. 

Il seguente esempio descrive una configurazione di monitoraggio degli obiettivi per una policy di dimensionamento. In questa configurazione, la metrica `ElastiCachePrimaryEngineCPUUtilization` predefinita regola un cluster ElastiCache per Valkey e Redis OSS in base a un utilizzo medio della CPU del 40% su tutti i nodi primari di quel cluster. La configurazione disabilita l'attività di riduzione per la policy di dimensionamento. 

```
{
    "TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {
        "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization"
    },
    "DisableScaleIn": true
}
```

# Applicazione di una policy di dimensionamento
<a name="AutoScaling-Scaling-Applying-a-Scaling-Policy"></a>

Dopo aver registrato il cluster con la scalabilità automatica ElastiCache di Valkey e Redis OSS e aver definito una politica di scalabilità, applichi la politica di scalabilità al cluster registrato. Per applicare una policy di scalabilità a un cluster ElastiCache for Redis OSS, puoi utilizzare AWS CLI o l'API Application Auto Scaling. 

## Applicazione di una politica di scalabilità utilizzando AWS CLI
<a name="AutoScaling-Scaling-Applying-a-Scaling-Policy-CLI"></a>

Per applicare una politica di scalabilità al cluster ElastiCache for Valkey e Redis OSS, utilizza il [put-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html)comando con i seguenti parametri: 
+ **—policy-name**– Il nome della policy di dimensionamento. 
+ **—policy-type**— Impostare questo valore su`TargetTrackingScaling`. 
+ **--resource-id — L'identificatore della risorsa**. Per questo parametro, il tipo di risorsa è `ReplicationGroup` e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ **—service-namespace**— Impostare questo valore su`elasticache`. 
+ **—scalable-dimension**— Impostare questo valore su`elasticache:replication-group:NodeGroups`. 
+ **-- target-tracking-scaling-policy -configuration — La configurazione** della policy di scalabilità target-tracking da utilizzare per il cluster. 

Nell'esempio seguente, si applica una politica di scalabilità di tracciamento della destinazione denominata `myscalablepolicy` a un cluster ElastiCache for Valkey e Redis OSS denominato auto scaling. `myscalablecluster` ElastiCache Per fare ciò, usa la configurazione della policy salvata in un file denominato `config.json`. 

Per Linux, macOS o Unix:

```
aws application-autoscaling put-scaling-policy \
    --policy-name myscalablepolicy \
    --policy-type TargetTrackingScaling \
    --resource-id replication-group/myscalablecluster \
    --service-namespace elasticache \
    --scalable-dimension elasticache:replication-group:NodeGroups \
    --target-tracking-scaling-policy-configuration file://config.json
```

Per Windows:

```
aws application-autoscaling put-scaling-policy ^
    --policy-name myscalablepolicy ^
    --policy-type TargetTrackingScaling ^
    --resource-id replication-group/myscalablecluster ^
    --service-namespace elasticache ^
    --scalable-dimension elasticache:replication-group:NodeGroups ^
    --target-tracking-scaling-policy-configuration file://config.json
```

## Applicazione di una policy di dimensionamento con l'API
<a name="AutoScaling-Scaling-Applying-a-Scaling-Policy-API"></a>

Per applicare una politica di scalabilità al cluster ElastiCache for Valkey e Redis OSS, utilizza il [PutScalingPolicy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html) AWS CLI comando con i seguenti parametri: 
+ **—policy-name**– Il nome della policy di dimensionamento. 
+ **--resource-id — L'identificatore della risorsa**. Per questo parametro, il tipo di risorsa è `ReplicationGroup` e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ **—service-namespace**— Impostare questo valore su`elasticache`. 
+ **—scalable-dimension**— Impostare questo valore su`elasticache:replication-group:NodeGroups`. 
+ **-- target-tracking-scaling-policy -configuration — La configurazione** della policy di scalabilità target-tracking da utilizzare per il cluster. 

Nell'esempio seguente, si applica una politica di scalabilità di tracciamento della destinazione denominata `myscalablepolicy` a un ElastiCache cluster denominato `myscalablecluster` auto ElastiCache scaling. Si utilizza una policy di configurazione in base al parametro di default `ElastiCachePrimaryEngineCPUUtilization`. 

```
POST / HTTP/1.1
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.PutScalingPolicy
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "PolicyName": "myscalablepolicy",
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:NodeGroups",
    "PolicyType": "TargetTrackingScaling",
    "TargetTrackingScalingPolicyConfiguration": {
        "TargetValue": 40.0,
        "PredefinedMetricSpecification":
        {
            "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization"
        }
    }
}
```

# Modifica di una policy di dimensionamento
<a name="AutoScaling-Scaling-Editing-a-Scaling-Policy"></a>

È possibile modificare una politica di scalabilità utilizzando Console di gestione AWS l'API AWS CLI Application Auto Scaling. 

## Modifica di una politica di scalabilità utilizzando il Console di gestione AWS
<a name="AutoScaling-Scaling-Editing-a-Scaling-Policy-CON"></a>

**Per modificare una policy di Auto Scaling per un cluster ElastiCache for Valkey e Redis OSS**

1. Accedi a Console di gestione AWS e apri la ElastiCache console Amazon all'indirizzo [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Nel pannello di navigazione, scegli il motore appropriato. 

1. Scegli il cluster a cui aggiungere una policy (seleziona il nome del cluster e non il pulsante a sinistra del cluster). 

1. Seleziona la scheda **Policy di Auto Scaling**. 

1. In **Policy di dimensionamento** scegli il pulsante a sinistra della policy di Auto Scaling su cui eseguire la modifica, quindi scegli **Modify** (Modifica). 

1. Apportare le modifiche necessarie alla policy.

1. Scegli **Modifica**.

## Modifica di una politica di scalabilità utilizzando l'API AWS CLI and
<a name="AutoScaling-Scaling-Editing-a-Scaling-Policy-CLI"></a>

Puoi utilizzare l' AWS CLI API Application Auto Scaling per modificare una policy di scaling nello stesso modo in cui applichi una policy di scaling: 
+ Quando si utilizza il AWS CLI, specificare il nome della politica che si desidera modificare nel parametro. `--policy-name` Specifica i nuovi valori per i parametri che desideri modificare. 
+ Quando si utilizza l'API Application Auto Scaling, specificare il nome della policy da modificare nel parametro `PolicyName`. Specifica i nuovi valori per i parametri che desideri modificare. 

Per ulteriori informazioni, consulta [Applicazione di una policy di dimensionamento](AutoScaling-Scaling-Applying-a-Scaling-Policy.md).

# Eliminazione di una policy di dimensionamento
<a name="AutoScaling-Scaling-Deleting-a-Scaling-Policy"></a>

È possibile eliminare una politica di scalabilità utilizzando Console di gestione AWS l'API AWS CLI Application Auto Scaling. 

## Eliminazione di una politica di scalabilità utilizzando il Console di gestione AWS
<a name="AutoScaling-Scaling-Editing-a-Scaling-Policy-CON"></a>

**Per eliminare una policy di Auto Scaling per un cluster ElastiCache per Redis OSS**

1. Accedi a Console di gestione AWS e apri la ElastiCache console Amazon all'indirizzo [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Nel pannello di navigazione, scegli **Valkey** o **Redis** OSS. 

1. Scegli il cluster a cui aggiungere una policy (seleziona il nome del cluster e non il pulsante a sinistra del cluster). 

1. Seleziona la scheda **Policy di Auto Scaling**. 

1. Nella sezione **Scaling Policies (Policy di Scaling)**, scegliere la policy di Auto Scaling e successivamente **Delete** (Elimina). 

## Eliminazione di una politica di scalabilità utilizzando il AWS CLI
<a name="AutoScaling-Scaling-Deleting-a-Scaling-Policy-CLI"></a>

Per eliminare una politica di scalabilità dal cluster ElastiCache for Valkey e Redis OSS, utilizza il [delete-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/delete-scaling-policy.html) AWS CLI comando con i seguenti parametri: 
+ **—policy-name**– Il nome della policy di dimensionamento. 
+ **--resource-id — L'identificatore della risorsa**. Per questo parametro, il tipo di risorsa è `ReplicationGroup` e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ **—service-namespace**— Impostare questo valore su`elasticache`. 
+ **—scalable-dimension**— Impostare questo valore su`elasticache:replication-group:NodeGroups`. 

Nell'esempio seguente, si elimina una politica di scalabilità di tracciamento degli obiettivi denominata `myscalablepolicy` da un cluster denominato. `myscalablecluster` 

Per Linux, macOS o Unix:

```
aws application-autoscaling delete-scaling-policy \
    --policy-name myscalablepolicy \
    --resource-id replication-group/myscalablecluster \
    --service-namespace elasticache \
    --scalable-dimension elasticache:replication-group:NodeGroups
```

Per Windows:

```
aws application-autoscaling delete-scaling-policy ^
    --policy-name myscalablepolicy ^
    --resource-id replication-group/myscalablecluster ^
    --service-namespace elasticache ^
    --scalable-dimension elasticache:replication-group:NodeGroups
```

## Eliminazione di una policy di dimensionamento usando l’ API
<a name="AutoScaling-Scaling-Deleting-a-Scaling-Policy-API"></a>

Per eliminare una politica di scalabilità dal cluster ElastiCache for Valkey e Redis OSS, utilizza il comando con i [DeleteScalingPolicy](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/delete-scaling-policy.html) AWS CLI seguenti parametri: 
+ **—policy-name**– Il nome della policy di dimensionamento. 
+ **--resource-id — L'identificatore della risorsa**. Per questo parametro, il tipo di risorsa è `ReplicationGroup` e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ **—service-namespace**— Impostare questo valore su`elasticache`. 
+ **—scalable-dimension**— Impostare questo valore su`elasticache:replication-group:NodeGroups`. 

Nell'esempio seguente, si elimina una politica di scalabilità di tracciamento degli obiettivi denominata `myscalablepolicy` da un cluster denominato. `myscalablecluster` 

```
POST / HTTP/1.1
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.DeleteScalingPolicy
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "PolicyName": "myscalablepolicy",
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:NodeGroups"
}
```

# Utilizzo CloudFormation per le politiche di Auto Scaling
<a name="AutoScaling-with-Cloudformation-Shards"></a>

Questo frammento mostra come creare una politica di tracciamento degli obiettivi e applicarla a una [AWS::ElastiCache::ReplicationGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html)risorsa che utilizza la risorsa. [AWS::ApplicationAutoScaling::ScalableTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html) Utilizza le funzioni intrinseche [Fn::Join](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-join.html) e [Ref](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) per costruire la proprietà `ResourceId` con il nome logico della risorsa `AWS::ElastiCache::ReplicationGroup` specificata nello stesso modello. 

```
ScalingTarget:
   Type: 'AWS::ApplicationAutoScaling::ScalableTarget'
   Properties:
     MaxCapacity: 3
     MinCapacity: 1
     ResourceId: !Sub replication-group/${logicalName}
     ScalableDimension: 'elasticache:replication-group:NodeGroups'
     ServiceNamespace: elasticache
     RoleARN: !Sub "arn:aws:iam::${AWS::AccountId}:role/aws-service-role/elasticache.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG"

  ScalingPolicy:
    Type: "AWS::ApplicationAutoScaling::ScalingPolicy"
    Properties:
      ScalingTargetId: !Ref ScalingTarget
      ServiceNamespace: elasticache
      PolicyName: testpolicy
      PolicyType: TargetTrackingScaling
      ScalableDimension: 'elasticache:replication-group:NodeGroups'
      TargetTrackingScalingPolicyConfiguration:
        PredefinedMetricSpecification:
          PredefinedMetricType: ElastiCachePrimaryEngineCPUUtilization
        TargetValue: 40
```

# Dimensionamento pianificato
<a name="AutoScaling-with-Scheduled-Scaling-Shards"></a>

Il dimensionamento basato su una pianificazione consente di dimensionare le applicazioni in relazione alle variazioni di domanda prevedibili. Per utilizzare il ridimensionamento pianificato, si creano azioni pianificate, che indicano ElastiCache a Valkey e Redis OSS di eseguire attività di scalabilità in momenti specifici. Quando si crea un'azione pianificata, si specifica un cluster esistente, quando deve avvenire l'attività di scalabilità, la capacità minima e la capacità massima. È possibile creare operazioni pianificate sia una tantum che ricorrenti. 

 È possibile creare un'azione pianificata solo per i cluster già esistenti. Non è possibile creare operazioni pianificate contemporaneamente alla creazione di un cluster.

Per ulteriori informazioni sulla terminologia per la creazione, la gestione ed l'eliminazione di azioni pianificate, consulta [I comandi comunemente utilizzati per creazione, la gestione ed eliminazione](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-scheduled-scaling.html#scheduled-scaling-commonly-used-commands) 

**Per creare in base a una pianificazione ricorrente:**

1. Accedi a Console di gestione AWS e apri la ElastiCache console Amazon all'indirizzo [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Nel pannello di navigazione, scegli **Valkey** o **Redis** OSS. 

1. Scegli il cluster a cui desideri aggiungere una policy. 

1. Scegli **Gestione delle policy di Auto Scaling** dal dropdown **Operazioni**. 

1. Seleziona la scheda **Policy di Auto Scaling**.

1. Nella sezione **Policy di Auto Scaling** viene visualizzata la finestra di dialogo**Aggiungi policy di dimensionamento** Scegli **Dimensionamento pianificato**.

1. In **Nome policy**, immetti un nome per la policy. 

1. Per **Dimensione scalabile**, scegliere **Partizioni**. 

1. Per **Obiettivi delle partizioni**, scegliere il valore. 

1. Per **Ricorrenza**, scegli **Ricorrente**. 

1. Per **Frequenza**, scegli il rispettivo valore. 

1. Per **Data di inizio** e **Ora di inizio**, scegli il momento in cui la policy entrerà in vigore. 

1. Scegli **Aggiungi policy**. 

**Per creare un'operazione pianificata una tantum**

1. Accedi a Console di gestione AWS e apri la ElastiCache console Amazon all'indirizzo [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Nel pannello di navigazione, scegli **Valkey** o **Redis** OSS. 

1. Scegli il cluster a cui desideri aggiungere una policy. 

1. Scegli **Gestione delle policy di Auto Scaling** dal dropdown **Operazioni**. 

1. Seleziona la scheda **Policy di Auto Scaling**.

1. Nella sezione **Policy di Auto Scaling** viene visualizzata la finestra di dialogo**Aggiungi policy di dimensionamento** Scegli **Dimensionamento pianificato**.

1. In **Nome policy**, immetti un nome per la policy. 

1. Per **Dimensione scalabile**, scegliere **Partizioni**. 

1. Per **Obiettivi delle partizioni**, scegliere il valore. 

1. Per **Ricorrenza**, scegli **Una volta**. 

1. Per **Data di inizio** e **Ora di inizio**, scegli il momento in cui la policy entrerà in vigore. 

1. Per **Data di fine** scegli la data fino a quando la policy sarà in vigore. 

1. Scegli **Aggiungi policy**. 

**Per eliminare un'operazione pianificata**

1. Accedi a Console di gestione AWS e apri la ElastiCache console Amazon all'indirizzo [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Nel pannello di navigazione, scegli **Valkey** o **Redis** OSS. 

1. Scegli il cluster a cui desideri aggiungere una policy. 

1. Scegli **Gestione delle policy di Auto Scaling** dal dropdown **Operazioni**. 

1. Scegli la scheda **Policy di Auto Scaling**.

1. Nella sezione **Policy di Auto Scaling**, scegli la policy di Auto Scaling e successivamente **Elimina** dalla finestra di dialogo **Azioni**.

**Per gestire il dimensionamento pianificato tramite AWS CLI **

Utilizzate la seguente scalabilità automatica delle applicazioni: APIs
+ [put-scheduled-action](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/put-scheduled-action.html) 
+ [describe-scheduled-actions](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/describe-scheduled-actions.html) 
+ [delete-scheduled-action](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/delete-scheduled-action.html) 

## Utilizza CloudFormation per creare un'operazione pianificata
<a name="AutoScaling-with-Cloudformation-Declare-Scheduled-Action"></a>

Questo frammento mostra come creare una policy di tracciamento degli obiettivi e applicarla a una [AWS::ElastiCache::ReplicationGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html)risorsa che utilizza la [AWS::ApplicationAutoScaling::ScalableTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html)risorsa. Utilizza le funzioni intrinseche [Fn::Join](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-join.html) e [Ref](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) per costruire la proprietà `ResourceId` con il nome logico della risorsa `AWS::ElastiCache::ReplicationGroup` specificata nello stesso modello. 

```
ScalingTarget:
   Type: 'AWS::ApplicationAutoScaling::ScalableTarget'
   Properties:
     MaxCapacity: 3
     MinCapacity: 1
     ResourceId: !Sub replication-group/${logicalName}
     ScalableDimension: 'elasticache:replication-group:NodeGroups'
     ServiceNamespace: elasticache
     RoleARN: !Sub "arn:aws:iam::${AWS::AccountId}:role/aws-service-role/elasticache.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG"
     ScheduledActions:
       - EndTime: '2020-12-31T12:00:00.000Z'
         ScalableTargetAction:
           MaxCapacity: '5'
           MinCapacity: '2'
         ScheduledActionName: First
         Schedule: 'cron(0 18 * * ? *)'
```

# Utilizzo di Auto Scaling con le repliche
<a name="AutoScaling-Using-Replicas"></a>

Un gruppo di ElastiCache replica può configurare una o più cache per funzionare come un singolo nodo logico. 

Di seguito vengono forniti dettagli sul tracciamento degli obiettivi e sulle politiche pianificate e su come applicarle utilizzando and. Console di gestione AWS AWS CLI APIs

# Policy di dimensionamento con monitoraggio degli obiettivi
<a name="AutoScaling-Scaling-Policies-Replicas-Replicas"></a>

Con le politiche di scalabilità del tracciamento degli obiettivi, si seleziona una metrica e si imposta un valore obiettivo. ElastiCache for Valkey e Redis OSS AutoScaling crea e gestisce gli CloudWatch allarmi che attivano la politica di scalabilità e calcola l'aggiustamento della scalabilità in base alla metrica e al valore target. La policy di dimensionamento aggiunge o rimuove le repliche uniformemente come richiesto per mantenere il parametro al valore di destinazione specificato o vicino a esso. Oltre a mantenere il parametro vicino al valore di destinazione, una policy di dimensionamento di monitoraggio dei target si adatta anche alle fluttuazioni del parametro dovute a un modello di carico fluttuante e riduce al minimo le fluttuazioni rapide nella capacità del parco istanze. 

## Criteri Auto Scaling per le repliche
<a name="AutoScaling-Scaling-Criteria-Replicas"></a>

La policy di Auto Scaling definisce il seguente parametro di default per il cluster:

`ElastiCacheReplicaEngineCPUUtilization`: La soglia di utilizzo della CPU del motore AVG aggregata tra tutte le repliche utilizzata per attivare un'operazione di auto-scaling. ElastiCache È possibile impostare l'obiettivo di utilizzo tra il 35 percento e il 70 percento.

Quando il servizio rileva che la `ElastiCacheReplicaEngineCPUUtilization` metrica è uguale o superiore all'impostazione di Target, aumenterà automaticamente le repliche tra gli shard. ElastiCache ridimensiona le repliche del cluster in base a un conteggio pari al più grande tra due numeri: variazione percentuale rispetto a Target e una replica. Per quanto riguarda la scalabilità in entrata, ElastiCache non verrà eseguita automaticamente a meno che il valore della metrica complessivo non sia inferiore al 75 percento del Target definito. 

Per un esempio di aumento orizzontale, se si dispone di 5 shard e 1 replica ciascuno:

Se Target viene violato del 30 percento, ElastiCache per Valkey e Redis OSS viene ridimensionato di 1 replica (max (0,3, impostazione predefinita 1)) su tutti gli shard, il che si traduce in 5 shard con 2 repliche ciascuno,

Ad esempio, se hai selezionato un valore Target del 60 percento, ElastiCache per Valkey e Redis OSS non eseguirà la scalabilità automatica finché la metrica non sarà inferiore o uguale al 45 percento (25 percento inferiore al 60 percento di Target).

### Considerazioni su Auto Scaling
<a name="AutoScaling-Scaling-Considerations-Replicas"></a>

Tieni a mente le seguenti considerazioni:
+ Una policy di dimensionamento di monitoraggio obiettivi presuppone che essa debba eseguire un dimensionamento orizzontale quando il parametro specificato supera il valore di destinazione. Non è possibile utilizzare una politica di ridimensionamento del tracciamento del target per la scalabilità orizzontale quando la metrica specificata è inferiore al valore target. ElastiCache per Valkey e Redis OSS ridimensiona le repliche in base al massimo (deviazione in% arrotondata rispetto a Target, impostazione predefinita 1) delle repliche esistenti su tutti gli shard del cluster.
+ Una policy di dimensionamento di monitoraggio obiettivi non esegue il dimensionamento quando il parametro specificato non dispone di dati sufficienti. Non esegue la scalabilità in quanto la carenza di dati non viene interpretata come basso utilizzo. 
+ Potrebbero esserci delle differenze tra il valore di destinazione e i punti di dati dei parametri reali. Questo perché ElastiCache Auto Scaling agisce sempre in modo conservativo arrotondando verso l'alto o verso il basso quando determina la quantità di capacità da aggiungere o rimuovere. In questo modo si impedisce l'aggiunta di capacità insufficiente o la rimozione di capacità eccessiva. 
+ Per garantire la disponibilità delle applicazioni, il servizio aumenta orizzontalmente in proporzione al parametro il più veloce possibile, ma riduce orizzontalmente in modo più graduale con una riduzione orizzontale di 1 replica nelle partizioni nel cluster. 
+ È possibile disporre di più politiche di scalabilità di tracciamento degli obiettivi per un cluster ElastiCache for Valkey e Redis OSS, a condizione che ciascuna di esse utilizzi una metrica diversa. L'intenzione di Auto Scaling è quella di dare sempre la priorità alla disponibilità, quindi il suo comportamento varia a seconda che le policy di tracciamento di destinazione siano pronte per la scalabilità orizzontale o verticale. Il servizio viene aumentato se una qualsiasi delle policy di monitoraggio obiettivi è pronta per l'aumento, ma viene ridotto solo se tutte le policy di monitoraggio obiettivi (con la porzione di riduzione abilitata) sono pronte per la riduzione. 
+ Non modificate o eliminate gli CloudWatch allarmi gestiti da ElastiCache Auto Scaling per una politica di scalabilità di tracciamento degli obiettivi. Auto Scaling elimina automaticamente gli allarmi quando si elimina la politica di scalabilità o si elimina il cluster. 
+ ElastiCache L'Auto Scaling non impedisce di modificare manualmente le repliche tra gli shard. Queste regolazioni manuali non influiscono sugli CloudWatch allarmi esistenti associati alla politica di scalabilità, ma possono influire sulle metriche che possono attivare questi allarmi. CloudWatch 
+ Questi CloudWatch allarmi gestiti da Auto Scaling sono definiti sulla base della metrica AVG su tutti gli shard del cluster. Quindi, avere frammenti caldi può comportare uno scenario di:
  + ridimensionamento quando non necessario a causa del caricamento su alcuni shard caldi che attiva un allarme CloudWatch 
  + non dimensionare quando richiesto a causa di AVG aggregato su tutti le partizioni che influiscono sull'allarme non violato. 
+ ElastiCache i limiti predefiniti sui nodi per cluster sono ancora validi. Pertanto, quando si opta per il Auto Scaling e se si prevede che i nodi massimi siano superiori al limite di default, è necessario richiedere un aumento del limite a[AWS Restrizioni dei servizi](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html)e scegliere il tipo di limite**Nodi per cluster per tipo di istanza**. 
+ Assicurati di avere abbastanza ENIs (interfacce di rete elastiche) disponibili nel tuo VPC, necessarie durante la scalabilità orizzontale. Per ulteriori informazioni, consulta [Interfacce di rete elastiche](https://docs.aws.amazon.com/vpc/latest/userguide/VPC_ElasticNetworkInterfaces.html).
+ Se non è disponibile una capacità sufficiente da EC2, ElastiCache Auto Scaling non eseguirà la scalabilità orizzontale finché la capacità non sarà disponibile o se si modifica manualmente il cluster in base ai tipi di istanza con capacità sufficiente.
+ ElastiCache Auto Scaling non supporta la scalabilità delle repliche con un cluster con `ReservedMemoryPercent` meno del 25 percento. Per ulteriori informazioni, consulta [Gestione della memoria riservata per Valkey e Redis OSS](redis-memory-management.md). 

# Aggiunta di una policy di dimensionamento
<a name="AutoScaling-Adding-Policy-Replicas"></a>

È possibile aggiungere una politica di scalabilità utilizzando. Console di gestione AWS

**Aggiungere una politica di scalabilità utilizzando il Console di gestione AWS**

Per aggiungere una politica di ridimensionamento automatico ElastiCache per Valkey e Redis OSS

1. Accedi a Console di gestione AWS e apri la ElastiCache console Amazon all'indirizzo [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Nel pannello di navigazione, scegli **Valkey** o **Redis** OSS. 

1. Scegli il cluster a cui aggiungere una policy (seleziona il nome del cluster e non il pulsante a sinistra del cluster). 

1. Seleziona la scheda **Policy di Auto Scaling**. 

1. Scegli **Add dynamic scaling** (Aggiungi dimensionamento automatico). 

1. In **Policy di dimensionamento**, scegli **Add dynamic scaling** (Aggiungi dimensionamento automatico).

1. In **Policy Name (Nome policy)**, immettere un nome per la policy. 

1. Per **Dimensione scalabile**, scegliere **Repliche** dalla finestra di dialogo. 

1. Come valore target, digita la percentuale media di utilizzo della CPU che desideri mantenere sulle repliche. ElastiCache Questo valore deve essere tra >=35 e <=70. Le repliche dei cluster vengono aggiunte o rimosse per tenere il parametro vicino al valore specificato.

1. (Facoltativo) I periodi di attesa di riduzione o aumento non sono supportati dalla console. Utilizzate il AWS CLI per modificare i valori di raffreddamento. 

1. Per **Capacità minima**, digitare il numero minimo di repliche che la policy ElastiCache Auto Scaling deve gestire. 

1. Per **Capacità massima**, digitare il numero massimo di repliche che la policy di ElastiCache Auto Scaling deve mantenere. Questo valore deve essere >=5. 

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

# Registrazione di un obiettivo scalabile
<a name="AutoScaling-Register-Policy"></a>

Puoi applicare una policy di dimensionamento basata un parametro di default o personalizzato. A tale scopo, puoi utilizzare AWS CLI o l'API Application Auto Scaling. Il primo passo consiste nel registrare il proprio gruppo di replica ElastiCache per Valkey e Redis OSS con Auto Scaling. 

Prima di poter utilizzare la scalabilità ElastiCache automatica con un cluster, è necessario registrare il cluster con la scalabilità ElastiCache automatica. Lo fai per definire la dimensione di scalabilità e i limiti da applicare a quel cluster. ElastiCache la scalabilità automatica ridimensiona dinamicamente il cluster lungo la dimensione `elasticache:replication-group:Replicas` scalabile, che rappresenta il numero di repliche del cluster per shard. 

**Utilizzo della CLI** 

Per registrare il ElastiCache cluster, utilizzate il comando con i [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html)seguenti parametri: 
+ —service-namespace — Impostare questo valore su elasticache. 
+ --resource-id — L'identificatore di risorsa per il cluster. ElastiCache Per questo parametro, il tipo di risorsa è ReplicationGroup e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ —scalable-dimension — Imposta questo valore su `elasticache:replication-group:Replicas`. 
+ --min-capacity — Il numero minimo di repliche da gestire tramite auto scaling. ElastiCache Per informazioni sulla relazione tra —capacità-min, —capacità-max il numero di repliche nel cluster, consulta.[Capacità minima e massima](AutoScaling-Policies.md#AutoScaling-MinMax).
+ --max-capacity — Il numero massimo di repliche da gestire tramite auto scaling. ElastiCache Per informazioni sulla relazione tra —capacità-min, —capacità-max il numero di repliche nel cluster, consulta.[Capacità minima e massima](AutoScaling-Policies.md#AutoScaling-MinMax).

**Example**  
Nell'esempio seguente, si registra un cluster denominato. ElastiCache `myscalablecluster` La registrazione indica che il cluster deve essere dimensionato dinamicamente per avere da una a 5 repliche .   
Per Linux, macOS o Unix:  

```
aws application-autoscaling register-scalable-target \
    --service-namespace elasticache \
    --resource-id replication-group/myscalablecluster \
    --scalable-dimension elasticache:replication-group:Replicas \
    --min-capacity 1 \
    --max-capacity 5 \
```
Per Windows:  

```
aws application-autoscaling register-scalable-target ^
    --service-namespace elasticache ^
    --resource-id replication-group/myscalablecluster ^
    --scalable-dimension elasticache:replication-group:Replicas ^
    --min-capacity 1 ^
    --max-capacity 5 ^
```

**Utilizzo dell'API**

Per registrare il ElastiCache cluster, utilizzate il [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html)comando con i seguenti parametri: 
+ ServiceNamespace — Imposta questo valore su elasticache. 
+ resourceID: l'identificatore della risorsa per il cluster. ElastiCache Per questo parametro, il tipo di risorsa è ReplicationGroup e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ ScalableDimension — Imposta questo valore su. `elasticache:replication-group:Replicas` 
+ MinCapacity — Il numero minimo di repliche da gestire mediante la scalabilità ElastiCache automatica. Per informazioni sulla relazione tra —capacità-min, —capacità-max il numero di repliche nel cluster, consulta.[Capacità minima e massima](AutoScaling-Policies.md#AutoScaling-MinMax).
+ MaxCapacity — Il numero massimo di repliche da gestire mediante la scalabilità ElastiCache automatica. Per informazioni sulla relazione tra —capacità-min, —capacità-max il numero di repliche nel cluster, consulta.[Capacità minima e massima](AutoScaling-Policies.md#AutoScaling-MinMax).

**Example**  
Nell'esempio seguente, si registra un cluster denominato `myscalablecluster` con l'API Application Auto Scaling. Questa registrazione indica che il cluster database deve essere dimensionato dinamicamente per avere da uno a 5 repliche . 

```
POST / HTTP/1.1
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.RegisterScalableTarget
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:Replicas",
    "MinCapacity": 1,
    "MaxCapacity": 5
}
```

# Definizione di una policy di dimensionamento
<a name="AutoScaling-Defining-Policy"></a>

Una configurazione della policy di dimensionamento di monitoraggio degli obiettivi è rappresentata da un blocco JSON in cui sono definiti i valori dei parametri e della destinazione. Puoi salvare una configurazione della policy di dimensionamento come un blocco JSON in un file di testo. Si utilizza quel file di testo quando si richiama l'API AWS CLI Application Auto Scaling. Per ulteriori informazioni sulla sintassi della configurazione della policy, consulta [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) in *Application Auto Scaling API Reference*. 

Le seguenti opzioni sono disponibili per definire una configurazione di una policy di dimensionamento con monitoraggio degli obiettivi.

**Topics**
+ [Utilizzo di un parametro di default](#AutoScaling-Predefined-Metric)
+ [Modifica di una policy di dimensionamento](AutoScaling-Editing-Policy.md)
+ [Eliminazione di una policy di dimensionamento](AutoScaling-Deleting-Policy.md)
+ [Utilizzo CloudFormation per le politiche di Auto Scaling](AutoScaling-with-Cloudformation.md)
+ [Dimensionamento pianificato](AutoScaling-with-Scheduled-Scaling-Replicas.md)

## Utilizzo di un parametro di default
<a name="AutoScaling-Predefined-Metric"></a>

Una configurazione della policy di dimensionamento di monitoraggio degli obiettivi è rappresentata da un blocco JSON in cui sono definiti i valori dei parametri e della destinazione. Puoi salvare una configurazione della policy di dimensionamento come un blocco JSON in un file di testo. Si utilizza quel file di testo quando si richiama l'API AWS CLI Application Auto Scaling. Per ulteriori informazioni sulla sintassi della configurazione della policy, consulta [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) in *Application Auto Scaling API Reference*. 

Le seguenti opzioni sono disponibili per definire una configurazione di una policy di dimensionamento con monitoraggio degli obiettivi.

**Topics**
+ [Utilizzo di un parametro di default](#AutoScaling-Predefined-Metric)
+ [Utilizzo di un parametro personalizzato](#AutoScaling-Custom-Metric)
+ [Utilizzo di periodi di attesa](#AutoScaling-Using-Cooldowns)
+ [Disabilitazione dell'attività di riduzione orizzontale](#AutoScaling-Disabling-Scalein)
+ [Applicazione di una politica di scalabilità a un cluster for Valkey e Redis ElastiCache OSS](#AutoScaling-Applying-Policy)

### Utilizzo di un parametro di default
<a name="AutoScaling-Predefined-Metric"></a>

Utilizzando metriche predefinite, puoi definire rapidamente una politica di scalabilità del tracciamento del target per un cluster ElastiCache for Valkey e Redis OSS che funziona con il tracciamento del target in Auto Scaling. ElastiCache Attualmente, ElastiCache supporta la seguente metrica predefinita in ElastiCache Replicas Auto Scaling: 

`ElastiCacheReplicaEngineCPUUtilization`— Il valore medio della CPUUtilization metrica Engine in tutte le repliche del CloudWatch cluster. Puoi trovare il valore aggregato della metrica CloudWatch in basso ElastiCache `ReplicationGroupId, Role` per Required e Role Replica. ReplicationGroupId 

Per utilizzare un parametro di default nella policy di dimensionamento, crea una configurazione di monitoraggio degli obiettivi per la policy di dimensionamento. La configurazione deve includere un `PredefinedMetricSpecification` per il parametro di default e un `TargetValue` per il valore di destinazione del parametro. 

### Utilizzo di un parametro personalizzato
<a name="AutoScaling-Custom-Metric"></a>

Utilizzando dei parametri personalizzati, è possibile definire una policy di dimensionamento di monitoraggio degli obiettivi che soddisfi i requisiti personalizzati. È possibile definire una metrica personalizzata basata su qualsiasi ElastiCache metrica di Valkey e Redis OSS che cambia in proporzione alla scalabilità. Non tutte le ElastiCache metriche funzionano per il tracciamento degli obiettivi. Il parametro deve essere un parametro di utilizzo valido e deve descrivere quanto è impegnata un'istanza. Il valore del parametro deve aumentare o diminuire in proporzione al numero di repliche nel cluster . Questo aumento o riduzione proporzionale è necessario per utilizzare i dati del parametro per aumentare o diminuire in modo proporzionale il numero di repliche . 

**Example**  
Il seguente esempio descrive una configurazione di monitoraggio degli obiettivi per una policy di dimensionamento. In questa configurazione, una metrica personalizzata regola un cluster in base a un utilizzo medio della CPU del 50% su tutte le repliche di un cluster denominato. `my-db-cluster`   

```
{"TargetValue": 50,
    "CustomizedMetricSpecification":
    {"MetricName": "EngineCPUUtilization",
        "Namespace": "AWS/ElastiCache",
        "Dimensions": [
            {"Name": "ReplicationGroup","Value": "my-db-cluster"},
            {"Name": "Role","Value": "REPLICA"}
        ],
        "Statistic": "Average",
        "Unit": "Percent"
    }
}
```

### Utilizzo di periodi di attesa
<a name="AutoScaling-Using-Cooldowns"></a>

È possibile specificare un valore, in secondi, per `ScaleOutCooldown` per aggiungere un periodo di attesa per il dimensionamento orizzontale del cluster. Allo stesso modo, è possibile aggiungere un valore, in secondi, per `ScaleInCooldown` per aggiungere un periodo di attesa per la riduzione del cluster. Per ulteriori informazioni su `ScaleInCooldown` e `ScaleOutCooldown`, consulta [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) in *Riferimento API Auto Scaling dell'applicazione*. Il seguente esempio descrive una configurazione di monitoraggio degli obiettivi per una policy di dimensionamento. In questa configurazione, la metrica `ElastiCacheReplicaEngineCPUUtilization` predefinita viene utilizzata per regolare un cluster in base a un utilizzo medio della CPU del 40% su tutte le repliche di quel cluster. La configurazione fornisce un tempo di raffreddamento di riduzione orizzontale di 10 minuti e un tempo di raffreddamento di aumento di 5 minuti. 

```
{"TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {"PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization"
    },
    "ScaleInCooldown": 600,
    "ScaleOutCooldown": 300
}
```

### Disabilitazione dell'attività di riduzione orizzontale
<a name="AutoScaling-Disabling-Scalein"></a>

È possibile impedire che la configurazione della policy di scalabilità target-tracking venga scalata nel cluster ElastiCache for Valkey e Redis OSS disabilitando l'attività di scalabilità in. La disabilitazione delle attività di riduzione impedisce alla policy di dimensionamento di eliminare le repliche , consentendo tuttavia alla policy di dimensionamento di aggiungerle in base alle esigenze. 

È possibile specificare un valore booleano per `DisableScaleIn` per abilitare o disabilitare l'attività di riduzione per il cluster database . Per ulteriori informazioni su `DisableScaleIn`, consulta [TargetTrackingScalingPolicyConfiguration](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_TargetTrackingScalingPolicyConfiguration.html) in *Riferimento API Auto Scaling dell'applicazione*. 

**Example**  
Il seguente esempio descrive una configurazione di monitoraggio degli obiettivi per una policy di dimensionamento. In questa configurazione, la metrica `ElastiCacheReplicaEngineCPUUtilization` predefinita regola un cluster in base a un utilizzo medio della CPU del 40% su tutte le repliche di quel cluster. La configurazione disabilita l'attività di riduzione per la policy di dimensionamento. 

```
{"TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {"PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization"
    },
    "DisableScaleIn": true
}
```

### Applicazione di una politica di scalabilità a un cluster for Valkey e Redis ElastiCache OSS
<a name="AutoScaling-Applying-Policy"></a>

Dopo aver registrato il cluster con la scalabilità automatica ElastiCache di Valkey e Redis OSS e aver definito una politica di scalabilità, applichi la politica di scalabilità al cluster registrato. Per applicare una politica di scalabilità a un cluster ElastiCache for Valkey e Redis OSS, puoi utilizzare AWS CLI o l'API Application Auto Scaling. 

**Utilizzando il AWS CLI**

Per applicare una politica di scalabilità al cluster ElastiCache for Valkey e Redis OSS, utilizza il [put-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/autoscaling/put-scaling-policy.html)comando con i seguenti parametri: 
+ —policy-name– Il nome della policy di dimensionamento. 
+ —policy-type — Impostare questo valore su `TargetTrackingScaling`. 
+ --resource-id — L'identificatore di risorsa per il cluster. Per questo parametro, il tipo di risorsa è ReplicationGroup e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ —service-namespace — Impostare questo valore su elasticache. 
+ —scalable-dimension — Imposta questo valore su `elasticache:replication-group:Replicas`. 
+ -- target-tracking-scaling-policy -configuration — La configurazione della policy di scalabilità target-tracking da utilizzare per il cluster. 

**Example**  
Nell'esempio seguente, si applica una politica di scalabilità di tracciamento della destinazione denominata `myscalablepolicy` a un cluster denominato `myscalablecluster` auto ElastiCache scaling. Per fare ciò, usa la configurazione della policy salvata in un file denominato `config.json`. 

Per Linux, macOS o Unix:

```
aws application-autoscaling put-scaling-policy \
    --policy-name myscalablepolicy \
    --policy-type TargetTrackingScaling \
    --resource-id replication-group/myscalablecluster \
    --service-namespace elasticache \
    --scalable-dimension elasticache:replication-group:Replicas \
    --target-tracking-scaling-policy-configuration file://config.json
```

```
{"TargetValue": 40.0,
    "PredefinedMetricSpecification":
    {"PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization"
    },
    "DisableScaleIn": true
}
```

Per Windows:

```
aws application-autoscaling put-scaling-policy ^
    --policy-name myscalablepolicy ^
    --policy-type TargetTrackingScaling ^
    --resource-id replication-group/myscalablecluster ^
    --service-namespace elasticache ^
    --scalable-dimension elasticache:replication-group:Replicas ^
    --target-tracking-scaling-policy-configuration file://config.json
```

**Utilizzo dell'API**

Per applicare una policy di scaling al ElastiCache cluster con l'API Application Auto Scaling, utilizza [PutScalingPolicy](https://docs.aws.amazon.com/autoscaling/application/APIReference/API_PutScalingPolicy.html)l'operazione Application Auto Scaling API con i seguenti parametri: 
+ PolicyName — Il nome della politica di scalabilità. 
+ PolicyType — Imposta questo valore su. `TargetTrackingScaling` 
+ resourceID: l'identificatore della risorsa per il cluster. Per questo parametro, il tipo di risorsa è ReplicationGroup e l'identificatore univoco è il nome del cluster ElastiCache for Redis OSS, ad esempio. `replication-group/myscalablecluster` 
+ ServiceNamespace — Imposta questo valore su elasticache. 
+ ScalableDimension — Imposta questo valore su. `elasticache:replication-group:Replicas` 
+ TargetTrackingScalingPolicyConfiguration — La configurazione della politica di scalabilità del target-tracking da utilizzare per il cluster. 

**Example**  
Nell'esempio seguente, si applica una politica di scalabilità di tracciamento della destinazione denominata `scalablepolicy` a un cluster denominato `myscalablecluster` auto ElastiCache scaling. Si utilizza una policy di configurazione in base al parametro di default `ElastiCacheReplicaEngineCPUUtilization`. 

```
POST / HTTP/1.1
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.PutScalingPolicy
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "PolicyName": "myscalablepolicy",
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:Replicas",
    "PolicyType": "TargetTrackingScaling",
    "TargetTrackingScalingPolicyConfiguration": {
        "TargetValue": 40.0,
        "PredefinedMetricSpecification":
        {
            "PredefinedMetricType": "ElastiCacheReplicaEngineCPUUtilization"
        }
    }
}
```

# Modifica di una policy di dimensionamento
<a name="AutoScaling-Editing-Policy"></a>

È possibile modificare una politica di scalabilità utilizzando Console di gestione AWS l'API AWS CLI Application Auto Scaling. 

**Modifica di una politica di scalabilità utilizzando il Console di gestione AWS**

È possibile modificare i criteri solo con tipo Parametri predefiniti utilizzando la Console di gestione AWS

1. Accedi a Console di gestione AWS e apri la ElastiCache console Amazon all'indirizzo [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Nel pannello di navigazione, scegli **Valkey** o **Redis OSS**

1. Scegli il cluster a cui aggiungere una policy (seleziona il nome del cluster e non il pulsante a sinistra del cluster). 

1. Seleziona la scheda **Policy di Auto Scaling**. 

1. In **Policy di dimensionamento** scegli il pulsante a sinistra della policy di Auto Scaling su cui eseguire la modifica, quindi scegli **Modify** (Modifica). 

1. Apportare le modifiche necessarie alla policy.

1. Scegli **Modifica**.

1. Apportare modifiche alla policy. 

1. Scegli **Modifica**.

**Modifica di una politica di scalabilità utilizzando l'API AWS CLI Application Auto Scaling**

È possibile utilizzare l'API Application Auto Scaling AWS CLI o l'API Application Auto Scaling per modificare una policy di scaling nello stesso modo in cui si applica una policy di scaling: 
+ Quando si utilizza l'API Application Auto Scaling, specificare il nome della policy da modificare nel parametro `PolicyName`. Specifica i nuovi valori per i parametri che desideri modificare. 

Per ulteriori informazioni, consulta [Applicazione di una politica di scalabilità a un cluster for Valkey e Redis ElastiCache OSS](AutoScaling-Defining-Policy.md#AutoScaling-Applying-Policy).

# Eliminazione di una policy di dimensionamento
<a name="AutoScaling-Deleting-Policy"></a>

È possibile eliminare una politica di scalabilità utilizzando Console di gestione AWS l' AWS CLI API Application Auto Scaling

**Eliminazione di una politica di scalabilità utilizzando il Console di gestione AWS**

È possibile modificare i criteri solo con tipo Parametri predefiniti utilizzando la Console di gestione AWS

1. Accedi a Console di gestione AWS e apri la ElastiCache console Amazon all'indirizzo [https://console.aws.amazon.com/elasticache/](https://console.aws.amazon.com/elasticache/).

1. Nel pannello di navigazione, scegli **Valkey** o **Redis OSS**

1. Scegliere il cluster con la policy di Auto Scaling che si desidera eliminare.

1. Seleziona la scheda **Policy Auto Scaling**. 

1. Nella sezione **Scaling Policies** (Policy di dimensionamento), scegli la policy di Auto Scaling e successivamente **Delete** (Elimina). 

**Eliminazione di una politica di scalabilità utilizzando l'API AWS CLI Application Auto Scaling**

È possibile utilizzare l'API Application Auto Scaling AWS CLI o l'API Application Auto Scaling per eliminare una politica di scalabilità da un cluster. ElastiCache 

**CLI**

Per eliminare una politica di scalabilità dal cluster ElastiCache for Valkey e Redis OSS, utilizza il [delete-scaling-policy](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/delete-scaling-policy.html)comando con i seguenti parametri: 
+ —policy-name– Il nome della policy di dimensionamento. 
+ --resource-id — L'identificatore di risorsa per il cluster. Per questo parametro, il tipo di risorsa è ReplicationGroup e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ —service-namespace — Impostare questo valore su elasticache. 
+ —scalable-dimension — Imposta questo valore su`elasticache:replication-group:Replicas`. 

**Example**  
Nell'esempio seguente, eliminare una policy di dimensionamento con monitoraggio degli obiettivi denominata `myscalablepolicy` da un cluster ELC denominato `myscalablecluster`. 

Per Linux, macOS o Unix:

```
aws application-autoscaling delete-scaling-policy \
    --policy-name myscalablepolicy \
    --resource-id replication-group/myscalablecluster \
    --service-namespace elasticache \
    --scalable-dimension elasticache:replication-group:Replicas \
```

Per Windows:

```
aws application-autoscaling delete-scaling-policy ^
    --policy-name myscalablepolicy ^
    --resource-id replication-group/myscalablecluster ^
    --service-namespace elasticache ^
    --scalable-dimension elasticache:replication-group:Replicas ^
```

**API**

Per eliminare una politica di scalabilità dal cluster ElastiCache for Valkey e Redis OSS, utilizza l'[DeleteScalingPolicy](https://docs.aws.amazon.com/ApplicationAutoScaling/latest/APIReference/API_DeleteScalingPolicy.html)operazione API Application Auto Scaling con i seguenti parametri: 
+ PolicyName — Il nome della politica di scalabilità. 
+ resourceID: l'identificatore della risorsa per il cluster. Per questo parametro, il tipo di risorsa è ReplicationGroup e l'identificatore univoco è il nome del cluster, ad esempio. `replication-group/myscalablecluster` 
+ ServiceNamespace — Imposta questo valore su elasticache. 
+ ScalableDimension — Imposta questo valore su. `elasticache:replication-group:Replicas` 

Nell'esempio seguente, si elimina una policy di scaling di tracciamento del target denominata `myscalablepolicy` da un cluster denominato `myscalablecluster` con l'API Application Auto Scaling. 

```
POST / HTTP/1.1
>>>>>>> mainline
Host: autoscaling.us-east-2.amazonaws.com
Accept-Encoding: identity
Content-Length: 219
X-Amz-Target: AnyScaleFrontendService.DeleteScalingPolicy
X-Amz-Date: 20160506T182145Z
User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8
Content-Type: application/x-amz-json-1.1
Authorization: AUTHPARAMS
{
    "PolicyName": "myscalablepolicy",
    "ServiceNamespace": "elasticache",
    "ResourceId": "replication-group/myscalablecluster",
    "ScalableDimension": "elasticache:replication-group:Replicas"
}
```

# Utilizzo CloudFormation per le politiche di Auto Scaling
<a name="AutoScaling-with-Cloudformation"></a>

Questo frammento mostra come creare un'azione pianificata e applicarla a una [AWS::ElastiCache::ReplicationGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html)risorsa che utilizza la risorsa. [AWS::ApplicationAutoScaling::ScalableTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html) Utilizza le funzioni intrinseche [Fn::Join](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-join.html) e [Ref](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) per costruire la proprietà `ResourceId` con il nome logico della risorsa `AWS::ElastiCache::ReplicationGroup` specificata nello stesso modello. 

```
ScalingTarget:
   Type: 'AWS::ApplicationAutoScaling::ScalableTarget'
   Properties:
     MaxCapacity: 0
     MinCapacity: 0
     ResourceId: !Sub replication-group/${logicalName}
     ScalableDimension: 'elasticache:replication-group:Replicas'
     ServiceNamespace: elasticache
     RoleARN: !Sub "arn:aws:iam::${AWS::AccountId}:role/aws-service-role/elasticache.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG"

  ScalingPolicy:
    Type: "AWS::ApplicationAutoScaling::ScalingPolicy"
    Properties:
      ScalingTargetId: !Ref ScalingTarget
      ServiceNamespace: elasticache
      PolicyName: testpolicy
      PolicyType: TargetTrackingScaling
      ScalableDimension: 'elasticache:replication-group:Replicas'
      TargetTrackingScalingPolicyConfiguration:
        PredefinedMetricSpecification:
          PredefinedMetricType: ElastiCacheReplicaEngineCPUUtilization
        TargetValue: 40
```

# Dimensionamento pianificato
<a name="AutoScaling-with-Scheduled-Scaling-Replicas"></a>

Il dimensionamento basato su una pianificazione consente di dimensionare le applicazioni in relazione alle variazioni di domanda prevedibili. Per utilizzare il ridimensionamento pianificato, si creano azioni pianificate, che indicano ElastiCache a Valkey e Redis OSS di eseguire attività di scalabilità in momenti specifici. Quando si crea un'azione pianificata, si specifica un ElastiCache cluster esistente, quando deve avvenire l'attività di scalabilità, la capacità minima e la capacità massima. È possibile creare operazioni pianificate sia una tantum che ricorrenti. 

 È possibile creare un'azione pianificata solo per ElastiCache i cluster già esistenti. Non è possibile creare operazioni pianificate contemporaneamente alla creazione di un cluster.

Per ulteriori informazioni sulla terminologia per la creazione, la gestione ed l'eliminazione di azioni pianificate, consulta[I comandi comunemente utilizzati per creazione, la gestione ed eliminazione](https://docs.aws.amazon.com/autoscaling/application/userguide/application-auto-scaling-scheduled-scaling.html#scheduled-scaling-commonly-used-commands) 

**Per creare un'operazione pianificata una tantum**

Simile alla dimensione di Partizione. Consultare [Dimensionamento pianificato](AutoScaling-with-Scheduled-Scaling-Shards.md).

**Per eliminare un'operazione pianificata**

Simile alla dimensione Partizione. Consultare [Dimensionamento pianificato](AutoScaling-with-Scheduled-Scaling-Shards.md).

**Per gestire il dimensionamento pianificato tramite AWS CLI **

Utilizzate la seguente scalabilità automatica delle applicazioni APIs:
+ [put-scheduled-action](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scheduled-action.html) 
+ [describe-scheduled-actions](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/describe-scheduled-actions.html) 
+ [delete-scheduled-action](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/delete-scheduled-action.html) 

## Utilizzabile CloudFormation per creare politiche di Auto Scaling
<a name="AutoScaling-with-Cloudformation-Update-Action"></a>

Questo frammento mostra come creare un'azione pianificata e applicarla a una [AWS::ElastiCache::ReplicationGroup](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html)risorsa che utilizza la [AWS::ApplicationAutoScaling::ScalableTarget](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalabletarget.html)risorsa. Utilizza le funzioni intrinseche [Fn::Join](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-join.html) e [Ref](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/intrinsic-function-reference-ref.html) per costruire la proprietà `ResourceId` con il nome logico della risorsa `AWS::ElastiCache::ReplicationGroup` specificata nello stesso modello. 

```
ScalingTarget:
   Type: 'AWS::ApplicationAutoScaling::ScalableTarget'
   Properties:
     MaxCapacity: 0
     MinCapacity: 0
     ResourceId: !Sub replication-group/${logicalName}
     ScalableDimension: 'elasticache:replication-group:Replicas'
     ServiceNamespace: elasticache
     RoleARN: !Sub "arn:aws:iam::${AWS::AccountId}:role/aws-service-role/elasticache.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_ElastiCacheRG"
     ScheduledActions:
       - EndTime: '2020-12-31T12:00:00.000Z'
         ScalableTargetAction:
           MaxCapacity: '5'
           MinCapacity: '2'
         ScheduledActionName: First
         Schedule: 'cron(0 18 * * ? *)'
```