D: Cos'è Amazon ElastiCache per Redis?

Amazon ElastiCache per Redis è un servizio Web che semplifica la distribuzione e l'esecuzione nel cloud di nodi server conformi al protocollo Redis. Il servizio abilita la gestione, il monitoraggio e l'operazione di un nodo Redis; la creazione, l'eliminazione e la modifica del nodo può essere effettuata tramite la console ElastiCache, l'interfaccia di riga di comando o le API del servizio Web. Amazon ElastiCache per Redis supporta la replica di Redis Master/Slave.

D: Amazon ElastiCache per Redis è conforme al protocollo di Redis open source?

Sì, Amazon ElastiCache per Redis è conforme al protocollo di Redis open source. Il codice, le applicazioni, i driver e gli strumenti che il cliente utilizza attualmente con lo store di dati Redis autonomo continuerà a funzionare con ElastiCache per Redis e senza bisogno di modificare il codice per migrare le distribuzioni esistenti di Redis su ElastiCache per Redis, salvo disposizione contraria. Al momento sono supportate le versioni 2.6.13, 2.8.6, 2.8.19, 2.8.21, 2.8.22, 2.8.23, 2.8.24, 3.2.4, 3.2.6 e 3.2.10 di Redis.

D: Quanto costa Amazon ElastiCache for Redis?

Consulta la pagina dei prezzi per informazioni aggiornate.

D: Cosa sono i nodi, cluster e gruppi di replica di Amazon ElastiCache per Redis?

Un nodo ElastiCache per Redis è il blocco di costruzione più piccolo di una distribuzione Amazon ElastiCache per Redis. Ogni nodo ElastiCache per Redis supporta il protocollo Redis e possiede il proprio nome DNS e la propria porta. Sono supportati vari tipi di nodi ElastiCache per Redis, ciascuno con una quantità variabile di capacità di CPU e di memoria associata. Un nodo ElastiCache per Redis può assumere un ruolo principale o di replica di lettura. Un nodo principale può essere replicato su nodi di replica di lettura multipli. Un cluster ElastiCache per Redis è una raccolta di uno o più nodi ElastiCache per Redis dello stesso ruolo; il nodo principale sarà nel cluster principale e il nodo di replica di lettura sarà nel cluster di replica di lettura. Al momento un cluster può avere un solo nodo. In futuro aumenteremo questo limite. Un cluster gestisce uno spazio di chiave logica in cui ogni nodo è responsabile di una parte dello spazio della chiave. La maggior parte delle operazioni di gestione viene effettuata al livello del cluster. Un gruppo di replica ElastiCache per Redis incapsula il cluster principale e i cluster di replica di lettura per un'installazione di Redis. Ha solo un cluster principale e nessuno o più cluster di replica di lettura. Tutti i nodi in un gruppo di replica (e di conseguenza di un cluster) sono dello stesso tipo e possiedono le stesse impostazioni di parametri e security group.

D: Amazon ElastiCache per Redis supporta il salvataggio permanente di Redis?

Sì, si può ottenere il salvataggio permanente creando uno snapshot dei dati Redis con la funzione backup e ripristino. Per ulteriori informazioni, consultare questa pagina.

D: Come si può effettuare una migrazione da Amazon ElastiCache per Memcached ad Amazon ElastiCache per Redis e viceversa?

Attualmente non supportiamo la migrazione automatica da Memcached a Redis o viceversa. Tuttavia si può usare un client Memcached per leggere da un cluster Memcached e utilizzare un client Redis per scrivere su un cluster Redis. In modo simile è possibile leggere da un cluster Redis utilizzando un client Redis e utilizzare un client Memcached per scrivere su un cluster Memcached. Bisogna prendere in conto le differenze di formato dei dati e la configurazione del cluster fra i due engine.

D: Amazon ElastiCache per Redis supporta le operazioni Multi-AZ?

Sì, con Amazon ElastiCache per Redis puoi creare una replica di lettura in un'altra zona di disponibilità di AWS. In caso di errore del nodo principale, assegniamo un nuovo nodo principale. Nelle circostanze in cui non è possibile fare assegnare il nodo principale, si può decidere convertire una replica di lettura in nodo principale. Per ulteriori dettagli su come trattare gli errori dei nodi, consultare questa pagina.

D: Quali opzioni offre Amazon ElastiCache for Redis in caso di errori dei nodi?

Amazon ElastiCache per Redis ripristina il nodo con l'acquisizione di nuove risorse di servizio e ridirige il nome DNS del nodo affinché punti sulle nuove risorse di servizio. In questo modo il nome DNS del nodo Redis rimane costante, mentre l'indirizzo IP di un nodo Redis può cambiare nel tempo. In un gruppo di replica con una o più repliche di lettura in cui Multi-AZ è abilitato, nel caso di errore di un nodo principale, ElastiCache rileva automaticamente l'errore, seleziona una replica e la converte in nodo principale. Inoltre propaga il DNS per consentire di continuare a utilizzare l'endpoint principale e dopo la conversione punterà al nuovo nodo principale. Per ulteriori dettagli, consultare la sezione Multi-AZ di queste domande frequenti. Se l'opzione di replica di Redis viene selezionata quando Multi-AZ è disabilitato, in caso di errore del nodo principale avrai l'opzione di avviare un failover in un nodo di replica di lettura. La destinazione del failover può essere nella stessa zona o in un'altra. Per effettuare il failback verso la zona di origine, si deve convertire la replica di lettura in nodo principale nella zona di origine. Puoi decidere di strutturare la tua applicazione per obbligare la libreria client di Redis a ricollegarsi on il nodo di server Redis ripristinato. Questo può essere di aiuto poiché alcune librerie di Redis smetteranno di utilizzare un server per un tempo indeterminato in caso di errori di comunicazione o periodi di inattività.

D: Come funziona il failover?

Per i gruppi di replica abilitati a Multi-AZ, il comportamento del failover è descritto nella sezione Multi-AZ di queste domande frequenti.

Se decidi di non abilitare Multi-AZ, se Amazon ElastiCache effettua il monitoraggio del nodo principale e il nodo non è più disponibile o non risponde, Amazon ElastiCache per Redis ripristina il nodo con l'acquisizione di nuove risorse di servizio e ridirige il nome DNS del nodo affinché punti su nuove risorse di servizio. In questo modo il nome DNS del nodo Redis rimane costante, mentre l'indirizzo IP di un nodo Redis può cambiare nel tempo. Tuttavia, se il nodo principale non può essere ripristinato (e Multi-AZ è disabilitato), potrai convertire una delle repliche di lettura in nodo principale. Consultare questa pagina per ulteriori dettagli su come selezionare un nuovo nodo principale. Il record DNS dell'endpoint principale sarà aggiornato affinché punti al nodo di replica di lettura convertito. Verrà poi creato un nodo di replica di lettura nell'AZ principale di origine perché diventi una replica di lettura nel gruppo di replica e segua il nuovo nodo principale.

D: Le mie repliche di lettura sono disponibili durante l'errore di un nodo principale?

Sì, durante l'errore di un nodo principale le repliche di lettura continuano a soddisfare le richieste. Quando il nodo principale è stato ripristinato, che sia un nodo riparato o una replica di lettura convertita, c'è un breve periodo durante il quale le repliche di lettura non soddisfano le richieste perché si stanno sincronizzando con le informazioni di cache della principale.

D: Come si configurano i parametri dei nodi di Amazon ElastiCache per Redis?

L'installazione di Redis può essere configurata utilizzando il cache parameter group, che deve essere specificato per un cluster di Redis. Tutti i cluster delle repliche di lettura utilizzano il gruppo di parametri del loro cluster principale. Un gruppo di parametri Redis funziona come un "contenitore" per i valori di configurazione di Redis che possono essere applicati a uno o più cluster principali di Redis. Se si crea un cluster principale di Redis senza specificare un cache parameter group, viene usato un gruppo di parametri predefinito. Questo gruppo predefinito contiene i valori predefiniti per i tipi di nodi che si vogliono eseguire. Tuttavia, se si vuole che il cluster principale di Redis venga eseguito con valori di configurazione specifici, si può creare un nuovo cache parameter group, modificare i parametri desiderati e modificare il cluster principale di Redis per utilizzare il nuovo gruppo di parametri.

D: Posso accedere a Redis tramite la console di Amazon ElastiCache?

Sì, Redis appare come un'opzione di engine sulla console di ElastiCache. Si può creare un nuovo cache cluster di Redis con la procedura guidata di avvio selezionando l'engine Redis. Inoltre si può modificare o eliminare un cluster Redis utilizzando la console di ElastiCache.

D: I cluster Amazon ElastiCache per Redis possono essere creati in un VPC di Amazon?

Sì. Se il tuo account è un VPC per impostazione predefinita, i cluster di Redis verranno creati nel VPC predefinito associato al tuo account. Con la console di ElastiCache si può specificare un VPC diverso quando si crea un cluster.

D: Amazon ElastiCache per Redis supporta la funzionalità di password per Redis?

No, Amazon ElastiCache per Redis non supporta le password di Redis. Questo è dovuto ai limiti innati delle password memorizzate nel file di configurazione. Invece di dipendere dalle password di Redis, i cluster di ElastiCache per Redis sono associati a un security group EC2 e solo i client in questo security group hanno accesso al server di Redis.

D: In che modo è possibile eseguire l'upgrade a una versione più recente del motore?

Per eseguire l'upgrade a una versione più recente del motore è possibile usare le API ModifyCacheCluster o ModifyReplicationGroup specificando la versione del motore desiderata per il parametro EngineVersion. Nella console di ElastiCache, seleziona un cache cluster o un gruppo di replica e fai clic su "Modify". Nella finestra "Modify Cache Cluster" o "Modify Replication Group", seleziona la versione del motore desiderata tra le opzioni disponibili. Il processo di upgrade è stato progettato per cercare di conservare i dati esistenti e richiede replica di Redis. Per ulteriori informazioni, fai clic qui.

D: È possibile eseguire il downgrade a una versione precedente del motore?

No. Il downgrade della versione del motore non è supportato.

D: In che modo è possibile passare a un tipo di nodo di dimensioni maggiori?

Per passare a un tipo di nodo di dimensioni maggiori è possibile usare le API ModifyCacheCluster o ModifyReplicationGroup e specificare il tipo di nodo desiderato per il parametro CacheNodeType. Nella console di ElastiCache, seleziona un cache cluster o un gruppo di replica e fai clic su "Modify". Nella finestra "Modify Cache Cluster" o "Modify Replication Group", seleziona il tipo di nodo desiderato tra le opzioni disponibili. Il processo di ridimensionamento è stato progettato per cercare di conservare i dati esistenti e richiede replica di Redis. Per ulteriori informazioni, fai clic qui.

D: È possibile passare a un tipo di nodo di dimensioni minori?

Il ridimensionamento in un tipo di nodo di dimensioni minori non è al momento supportato.


D: Cosa significa eseguire un nodo di cache di Redis come replica di lettura?

Le repliche di lettura in Redis hanno due scopi:

  • trattamento degli errori
  • dimensionamento della lettura

Quando si esegue un nodo di cache con una replica di lettura, il nodo "principale" effettua le scritture e le letture. La replica di lettura funge da "standby" da "convertire" in caso di failover. Dopo il failover, la lettura di standby diventa infatti il nodo principale e accetta le operazioni di cache. La funzione di replica di lettura semplifica il ridimensionamento elastico delle risorse oltre alla capacità di un singolo nodo di cache per i carichi di lavoro di database particolarmente gravosi in lettura.

D: Quando è consigliato usare le repliche di lettura di Redis?

La distribuzione di una o più repliche di lettura per un nodo principale può risultare molto utile in diverse circostanze. Alcuni casi d'uso possono essere, per esempio:

  • Il ridimensionamento della potenza di calcolo o del traffico I/O oltre la capacità di un singolo nodo principale per carichi di lavoro gravosi in lettura. Il traffico di lettura in eccesso può essere reindirizzato a una o più repliche di lettura.
  • Il traffico di lettura continua ad essere effettuato quando il nodo principale non è disponibile. Se il nodo principale non è in grado di ricevere richieste di I/O, (per es. durante un backup o una fase di manutenzione programmata), si può reindirizzare il traffico in lettura alle repliche di lettura. In questo caso d'uso, è necessario ricordare che i dati sulla replica di lettura potrebbero essere obsoleti, poiché l'istanza principale non è disponibile. Inoltre la replica di lettura può essere utilizzata per riavviare un'istanza principale non riuscita avviata a caldo.
  • Scenario di protezione di dati; nell'improbabile eventualità di un errore del nodo principale o che la zona di disponibilità in cui risiede il nodo principale non sia disponibile, si può convertire una replica di lettura in nodo principale in una zona di disponibilità diversa.

D: Come si distribuisce un nodo di replica di lettura per un nodo di cache principale?

Per creare una replica di lettura bastano pochi minuti utilizzando l'API CreateReplicationGroup oppure la console di gestione di Amazon ElastiCache. Quando si crea un gruppo di replica, bisogna specificare il MasterCacheClusterIdentifier. Il MasterCacheClusterIdentifier è l'identificatore del cache cluster principale dal quale si vuole effettuare la replica. Poi si deve creare il cluster di replica di lettura nel gruppo di replica chiamando l'API CreateCacheCluster e specificando il ReplicationGroupIdentifier e il CacheClusterIdentifier del cluster master. Come per un cache cluster standard, si può anche specificare la zona di disponibilità. Quando viene avviata la creazione di una replica di lettura, Amazon ElastiCache esegue uno snapshot del cache cluster principale e ne avvia la replica. Di conseguenza potrà verificarsi una breve interruzione alle operazioni di I/O sul cache cluster principale durante l'esecuzione dello snapshot. L'interruzione alle operazioni di I/O di solito dura non più di un minuto.

Le repliche di lettura sono tanto semplici da creare quanto da eliminare: è sufficiente usare la console di gestione di Amazon ElastiCache oppure chiamare l'API DeleteCacheCluster (specificando il CacheClusterIdentifier relativo alla replica di lettura che si desidera eliminare).

D: Posso creare un nodo principale e repliche di lettura contemporaneamente?

Sì. Si può creare un nuovo cache cluster insieme a repliche di lettura in pochi minuti utilizzando l'API CreateReplicationGroup oppure seguendo la procedura guidata “Launch Cache Cluster” sulla console di gestione di Amazon ElastiCache, dopo avere selezionato “Multi-AZ Replication”. Quando si crea un gruppo di replica, bisogna specificare un identificatore per il gruppo di replica, il numero totale di cluster desiderato nel gruppo di replica e i parametri di creazione di cache come il tipo di nodo di cache, la versione del cache engine, ecc. Si può anche specificare la zona di disponibilità per ogni cluster del gruppo di replica.

D: Come si collegano le repliche di lettura?

Le repliche di lettura si collegano esattamente come i nodi di cache principali, utilizzando l'API DescribeCacheClusters o la Console di gestione AWS per recuperare gli endpoint delle repliche di lettura. Se usi più di una replica di lettura, sarà l'applicazione a determinare la distribuzione del traffico in lettura fra queste repliche.

D: Quante repliche di lettura è possibile creare per un nodo di cache principale?

Attualmente Amazon ElastiCache ti consente di creare fino a cinque (5) repliche di lettura pour un nodo di cache principale.

D: Cosa succedere alle repliche di lettura in caso di failover?

In caso di failover su più zone di disponibilità, le repliche di lettura associate e disponibili riprendono automaticamente la replica al completamento del failover (dopo, quindi, il recupero degli aggiornamenti dalla nuova replica di lettura).

D: È possibile creare una replica di lettura di un'altra replica di lettura?

Creare una replica di lettura da un'altra replica di lettura non è una funzione supportata.

D: È possibile convertire una replica di lettura in un nodo di cache principale "autonomo"?

No, non è una funzione supportata. Invece si può eseguire uno snapshot del nodo ElastiCache per Redis (puoi selezionare il nodo principale o qualunque replica di lettura). Lo snapshot servirà per generare un nuovo nodo principale ElastiCache per Redis.

D: La replica di lettura è tenuta aggiornata rispetto al nodo di cache principale?

Gli aggiornamenti al nodo di cache principale vengono replicati automaticamente alle repliche di lettura associate. Quando viene usata la tecnologia di replica asincrona di Redis, tuttavia, una replica di lettura può risultare in ritardo rispetto al nodo di cache principale per una serie di motivi. In genere questo accade nelle seguenti situazioni:

  • il volume di scrittura di I/O al nodo di cache principale supera il tasso al quale le modifiche sono applicate alla replica di lettura
  • partizioni di rete o latenze tra il nodo di cache principale e la replica di lettura

Le repliche di lettura ereditano i punti di forza e le limitazioni delle funzioni di replica di Redis. Quando si utilizza la funzione di replica di lettura, è importante tenere conto del potenziale sfasamento temporale tra la replica di lettura e il suo nodo di cache principale, o "inconsistenza". Fare clic qui per ulteriori informazioni su come trovare "l'inconsistenza" di una replica di lettura.

D: Come si può avere una maggiore visibilità delle repliche di lettura attive?

È possibile usare l'API standard DescribeCacheClusters per ottenere un elenco di tutti i cache cluster distribuiti (incluse le repliche di lettura); in alternativa è sufficiente fare clic sulla scheda "Cache Clusters" della console di gestione di Amazon ElastiCache.

Amazon ElastiCache esegue il monitoraggio dello stato di replica delle repliche di lettura e aggiorna il campo "Replication State" a "Error" se la replica è interrotta per qualunque motivo. È possibile rivedere i dettagli dell'errore in questione, segnalato dal motore Redis, consultando il campo "Replication Error" e prendendo le misure appropriate per risolverlo. Si possono trovare ulteriori informazioni sulla risoluzione di problemi di replica nella sezione "Troubleshooting a Read Replica problem" dell'Amazon ElastiCache User Guide. Quando un problema relativo alla replica viene risolto, il campo "Replication State" viene modificato in "Replicating".

Amazon ElastiCache ti consente una maggiore visibilità sul ritardo di una replica di lettura rispetto al nodo principale mediante la metrica CloudWatch ("Replica Lag") disponibile sulla Console di gestione AWS o le API di Amazon CloudWatch.

D: La mia replica di lettura è in notevole ritardo rispetto al nodo di cache principale. Quale procedura devo seguire?

Come illustrato nella domande precedenti, l'"inconsistenza" o sfasamento temporale tra la replica di lettura e il nodo di cache principale correlato è comune nella replica asincrona di Redis. Se una replica di lettura è troppo in ritardo per soddisfare i tuoi requisiti, puoi riavviarla. Il ritardo della replica, inoltre, è soggetto ad aumenti e cali fisiologici, a seconda dei modelli di utilizzo costanti del nodo di cache principale.

D: Come si elimina una replica di lettura? Viene eliminata automaticamente quando viene eliminato il nodo di cache principale?

Una replica di lettura può essere facilmente eliminata la Console di gestione AWS oppure inserendo l'identificatore del cache cluster correlato nell'API DeleteCacheCluster. Se si vuole eliminare la replica di lettura oltre al nodo di cache principale, bisogna utilizzare l'API DeleteReplicationGroup o la Console di gestione AWS.

D: Quanto costa una replica di lettura? Qual è il periodo di fatturazione?

Le repliche di lettura vengono fatturate come nodi di cache standard e prevedono le stesse tariffe. Analogamente ai nodi di cache standard, la tariffa basata sulle "ore-nodo di cache" per le repliche di lettura è determinata dalla classe del nodo di cache della replica di lettura; consulta la pagina dei dettagli di Amazon ElastiCache per informazioni aggiornate sui prezzi. I trasferimenti di dati generati durante la replica dei dati tra il nodo di cache e la replica di lettura non vengono fatturati. La fatturazione di una replica di lettura inizia subito dopo la sua creazione (dal momento in cui il suo stato è "active"). La fatturazione della replica di lettura proseguirà secondo le tariffe orarie standard per i nodi di cache di Amazon ElastiCache finché non viene inviato il comando di eliminazione.

D: Quali operazioni vengono eseguite durante un failover e quanto dura?

Il failover avviato è supportato da Amazon ElastiCache in modo da poter riprendere le operazioni di cache al più presto. Durante l'esecuzione di un failover, Amazon ElastiCache cambia il record DNS per il nodo di cache in modo che punti alla replica di lettura, che diventa a sua volta il nuovo nodo principale. Ti consigliamo di seguire le best practice e di implementare i tentativi di connessione al nodo di cache a livello dell'applicazione. Dall'inizio alla fine, un failover di solito dura da tre e sei minuti.

D: Posso creare una replica di lettura in una Regione diversa da quella in cui si trova quella principale?

No. La replica di lettura può essere assegnata solo nella stessa o un'altra zona di disponibilità della stessa Regione del nodo di cache principale.

D: È possibile vedere in quale zona di disponibilità si trova l'istanza principale?

Sì. Per ottenere maggiore visibilità sull'ubicazione del nodo principale, utilizzare la Console di gestione AWS o l'API DescribeCacheClusters.

D: Dopo un failover, l'istanza principale si trova in una zona di disponibilità diversa rispetto alle altre risorse AWS (ad esempio le istanze EC2).

D: Possono verificarsi problemi di latenza?

Le zone di disponibilità sono state progettate in modo da connettersi tra loro in rete con una latenza minima, quando si trovano in una stessa regione. Potrebbe essere opportuno progettare la propria applicazione e organizzare le altre risorse AWS in modo che offrano ridondanza su più zone di disponibilità, consentendo una maggiore resistenza all'applicazione in caso di errore in una zona.


D: Cos'è Multi-AZ per un gruppo di replica ElastiCache per Redis?

Un gruppo di replica ElastiCache per Redis consiste in un nodo principale e fino a cinque repliche di lettura. Redis replica i dati dal nodo principale alle repliche di lettura in modo asincrono. Durante certi tipi di manutenzione, o nell'improbabile eventualità di un errore del nodo ElastiCache o della zona di disponibilità, Amazon ElastiCache rileva automaticamente l'errore di un nodo principale, seleziona una replica di lettura e la converte in nodo principale. Inoltre ElastiCache converte le modifiche DNS della replica di lettura convertita, in modo che, se l'applicazione scrive sull'endpoint del nodo principale, nessun cambiamento di endpoint sarà necessario.

D: Quali sono i vantaggi dell'utilizzazione di Multi-AZ?

I vantaggi principali di eseguire ElastiCache per Redis in modalità Multi-AZ sono l'aumentata disponibilità e l'amministrazione ridotta. In caso di errore del nodo principale di ElastiCache per Redis, l'impatto sulla capacità di lettura/scrittura sul nodo principale è limitato al periodo durante il quale viene effettuato il failover automatico. Quando Multi-AZ è attivo, il failover del nodo ElastiCache è automatico e non richiede nessuna gestione. Non è più necessario eseguire il monitoraggio dei nodi Redis e avviare manualmente il ripristino nel caso di un'interruzione del nodo principale.

D: Come funziona Multi-AZ?

Puoi utilizzare Multi-AZ se usi ElastiCache per Redis e hai un gruppo di replica che consiste in un nodo principale e una o più repliche di lettura. In caso di errore del nodo principale, ElastiCache rileva automaticamente l'errore, seleziona una delle repliche di lettura disponibili e la converte in nodo principale. ElastiCache converte le modifiche DNS della replica di lettura convertita, in modo che l'applicazione continui a scrivere sull'endpoint principale. ElastiCache creerà un nuovo nodo per sostituire la replica di lettura convertita nella stessa zona di disponibilità dell'errore del nodo principale. In caso di errore dell'istanza principale dovuto a un'interruzione nella zona di disponibilità, la nuova replica verrà lanciata non appena la zona di disponibilità sarà ripristinata.

D: Posso avere delle repliche nella stessa zona di disponibilità dell'istanza principale?

Sì. Si noti che mettere il nodo principale e le repliche nella stessa zona di disponibilità non garantisce la resistenza delle repliche di ElastiCache per Redis a interruzioni nella zona di disponibilità.

D: In quali casi può verificarsi un failover di Amazon ElastiCache su una replica di lettura?

Un failover di Amazon ElastiCache di una replica di lettura può avvenire in uno dei casi seguenti:

  • Calo di disponibilità nella zona di disponibilità del nodo principale
  • Perdita di connettività di rete nell'istanza principale
  • Errore dell'unità di elaborazione nell'istanza principale

D: Quando si deve usare Multi-AZ?

Utilizzare la replica Redis congiuntamente a Multi-AZ fornisce una disponibilità e una tolleranza ai guasti più elevate. Queste distribuzioni sono la soluzione ideale per l'utilizzo in ambienti di produzione.

D: Come si crea un gruppo di replica ElastiCache per Redis con Multi-AZ abilitato?

Si possono creare un nodo principale e repliche di lettura ElastiCache per Redis facendo clic su "Launch Cache Cluster" sulla console di gestione di ElastiCache. Si può anche farlo chiamando l'API CreateReplicationGroup. Per i gruppi di replica esistenti (Redis 2.8.6, 2.8.19, 2.8.21, 2.8.22, 2.8.23 e 2.8.24) puoi abilitare Multi-AZ selezionando un gruppo di replica e facendo clic su "Modify" sulla console di gestione ElastiCache oppure utilizzando l'API ModifyReplicationGroup. Passare un gruppo di replica a Multi-AZ non provoca interruzioni nei dati Redis e non interferisce con la capacità dei nodi di elaborare le richieste.

D: Quale replica di lettura viene convertita in caso di errore di nodo?

Se esiste più di una replica di lettura, viene convertita la replica di lettura che presenta lo sfasamento minore rispetto al nodo principale.

D: Quanto costa usare Multi-AZ?

Multi-AZ è gratuito. Si pagano solo i nodi ElastiCache utilizzati.

D: Quali sono le implicazioni di prestazione di Multi-AZ?

ElastiCache attualmente utilizza la replica asincrona nativa dell'engine Redis e ne eredita i punti di forza e le limitazioni. In particolare, quando una replica di lettura si collega a un nodo principale per la prima volta o se il nodo principale cambia, la replica di lettura esegue una sincronizzazione completa dei dati del nodo principale, creando un carico supplementare per sé e per il nodo principale. Per ulteriori dettagli sulla replica di Redis, consultare questa pagina.

D: Quali tipi di nodo di cache supporta Multi-AZ?

Tutti i tipi di nodo di cache disponibili in ElastiCache supportano Multi-AZ tranne le famiglie T1 e T2.

D: Riceverò un avviso quando avviene un failover automatico?

Sì, Amazon ElastiCache crea un evento per informarti che è stato effettuato un failover automatico. Puoi usare l'API DescribeEvents per raccogliere informazioni sugli eventi relativi al tuo nodo ElastiCache o fare clic sulla sezione "Events" sulla console di gestione ElastiCache.

D: Dopo un failover, l'istanza principale si trova in una zona di disponibilità diversa rispetto alle altre risorse AWS (per esempio le istanze EC2). Potrebbero verificarsi problemi di latenza?

Le zone di disponibilità sono state progettate in modo da connettersi tra loro in rete con una latenza minima, quando si trovano in una stessa regione. Potrebbe essere opportuno progettare la propria applicazione e organizzare le altre risorse AWS in modo che offrano ridondanza su più zone di disponibilità, consentendo una maggiore resilienza dell'applicazione in caso di errore in una zona di disponibilità.

D: Dove posso trovare informazioni ulteriori su Multi-AZ?

Per ulteriori informazioni su Multi-AZ, consultare la documentazione ElastiCache.


D: Cos'è la funzione di backup e ripristino?

La funzione di backup e ripristino è una caratteristica che consente ai clienti di creare snapshot dei loro cluster ElastiCache per Redis. ElastiCache memorizza gli snapshot, permettendo agli utenti di utilizzarli per ripristinare i cluster Redis.

D: Cos'è uno snapshot?

Uno snapshot è la copia di un intero cluster a un momento specifico.

D: Qual è il vantaggio degli snapshot?

Creare snapshot può risultare utile in caso di perdite di dati causate da errori di un nodo, oppure nell'improbabile eventualità di un guasto hardware. Un altro caso d'uso comune degli snapshot è la creazione di backup e l'archiviazione. Gli snapshot sono memorizzati in Amazon S3, che è uno storage durevole, nel senso che perfino un guasto dell'alimentazione può cancellare i dati.

D: Cosa è possibile fare con uno snapshot?

Si possono usare gli snapshot per l'avvio a caldo di un cluster ElastiCache per Redis con dati precaricati.

D: Come funzionano il backup e il ripristino?

Quando si avvia il backup, ElastiCache esegue lo snapshot di un cluster Redis specifico che può essere utilizzato più tardi per il ripristino o l'archiviazione. Si può avviare il backup ogni volta che si desidera o impostare un backup ricorrente giornaliero con un periodo di memorizzazione di 35 giorni.

Quando si seleziona uno snapshot da ripristinare, verrà creato un nuovo cluster ElastiCache per Redis e vi saranno inseriti i dati dello snapshot. In questo modo si possono creare più cluster ElastiCache per Redis da uno snapshot.

Attualmente ElastiCache utilizza i meccanismi nativi di Redis per creare e memorizzare un file RDS some snapshot.

D: Dove sono memorizzati i miei snapshot?

Gli snapshot vengono memorizzati in S3.

D: Come posso cominciare a utilizzare la funzione backup e ripristino?

Si può selezionare la funzione "Backup and Restore" tramite la Console di gestione AWS, tramite le API di ElastiCache (CreateCacheCluster, ModifyCacheCluster e ModifyReplicationGroup) e l'interfaccia della riga di comando. Questa caratteristica può disattivata e riattivata a piacimento.

D: Come si specificano il cluster e il nodo Redis su cui effettuare il backup?

La funzione backup e ripristino crea degli snapshot basati sul cluster. Gli utenti possono specificare il cluster ElastiCache per Redis su cui effettuare il backup tramite la Console di gestione AWS, l'interfaccia della riga di comando o l'API CreateSnapshot. In un gruppo di replica si può effettuare il backup del cluster principale o di qualsiasi cluster di replica di lettura. Consigliamo agli utenti di abilitare il backup su una delle repliche di lettura per minimizzare l'effetto di latenza sul nodo principale di Redis.

D: In che modo è possibile specificare quando deve avvenire un backup?

È possibile specificare quando avviare un backup singolo o ricorrente tramite la Console di gestione AWS, l'interfaccia della riga di comando o le API. Gli utenti possono:

  • eseguire uno snapshot immediatamente (tramite il pulsante della console “Create Snapshot” o l'API CreateSnapshot)
  • impostare un backup automatico giornaliero. Il backup avrà luogo durante la finestra di backup prescelta. Si può impostare il backup utilizzando "Creating/Modifying cluster" sulla console o le API CreateCacheCluster, ModifyCacheCluster o ModifyReplicationGroup.

D: Cos'è la finestra di backup e a cosa serve?

La finestra di backup preferita è il periodo definito dall'utente durante il quale viene effettuato il backup del cluster ElastiCache per Redis. Questo è utile quando si vuole effettuare il backup a una certa ora del giorno o non effettuare backup durante un periodo di utilizzo particolarmente intenso.

D: Qual è l'impatto delle prestazioni quando si esegue uno snapshot?

Quando si esegue uno snapshot si possono riscontrare periodi maggiori di latenza al nodo per un breve periodo. Gli snapshot utilizzano il comando incorporato di Redis BGSAVE e ne ereditano i punti di forza e le limitazioni. In particolare, la procedura di Redis si biforca e mentre il padre continua a elaborare le richieste, il figlio salva i dati sul disco e poi esce. La biforcazione aumenta l'uso della memoria durante la generazione dello snapshot. Quando l'uso della memoria supera la memoria disponibile del nodo di cache, si può attivare uno scambio, il che rallenta ulteriormente il nodo. Per questo motivo raccomandiamo di generare gli snapshot su una delle repliche di lettura (invece che sul nodo principale). Suggeriamo inoltre di impostare il parametro di memoria riservata per minimizzare l'uso di scambi. Consultare questa pagina per ulteriori informazioni.

D: Posso creare uno snapshot da una replica di lettura di ElastiCache per Redis?

Sì. Creare uno snapshot da una replica di lettura è il modo migliore per eseguire il backup dei tuoi dati minimizzando al tempo stesso l'impatto sulle prestazioni.

D: In quali Regioni è disponibile la funzione backup e ripristino?

La funzione backup e ripristino è disponibile in tutte le Regioni in cui è disponibile il servizio ElastiCache.

D: È possibile esportare snapshot di ElastiCache per Redis nel proprio bucket S3?

Sì. È possibile esportare snapshot di ElastiCache per Redis in un bucket S3 autorizzato nella stessa regione del cluster. Per ulteriori informazioni su come esportare snapshot e impostare i permessi necessari, consultare questa pagina.

D: È possibile copiare uno snapshot da una regione all'altra?

Sì. Devi copiare lo snapshot in un qualsiasi bucket S3 autorizzato nella stessa regione, quindi utilizzare l'API S3 PUT object- Copy per copiarlo in un bucket in un'altra regione. Per ulteriori dettagli su come copiare oggetti S3, consulta questa pagina.

D: Ho più account AWS che usano ElastiCache per Redis. Posso usare gli snapshot ElastiCache di un account per l'avvio a caldo di un cluster ElastiCache per Redis in un altro?

Sì. Devi copiare lo snapshot in un qualsiasi bucket S3 autorizzato nella stessa regione, quindi concedere i privilegi di accesso tra più account all'altro account. Per ulteriori informazioni sui permessi per più account, consulta questa pagina. Puoi infine specificare il percorso del tuo file RDB in S3 durante la creazione del cluster tramite la procedura guidata "Launch Cache Cluster" nella console o l'API CreateCacheCluster.

D: Quando costa utilizzare la funzione backup e ripristino?

Amazon ElastiCache offre spazio di storage gratuito per uno snapshot per ogni cluster ElastiCache per Redis attivo. Lo storage supplementare verrà addebitato 0,085 USD al GB ogni mese sulla base dello spazio utilizzato dagli snapshot (stesso prezzo per tutte le Regioni). Per gli snapshot non sarà addebitato alcun costo per il trasferimento di dati.

D: Cos'è il periodo di retention?

Il periodo di retention è l'arco di tempo durante il quale gli snapshot automatici sono memorizzati. Per esempio, se il periodo di retention è stato impostato a 5, uno snapshot eseguito oggi sarà memorizzato per 5 giorni prima di essere eliminato. Si possono copiare uno o più snapshot automatici per memorizzarli manualmente in modo che non vengano eliminati alle fine del periodo di retention.

D: Come si gestisce la retention degli snapshot automatici?

Per gestire il periodo di retention dei backup automatici si deve modificare il parametro "RetentionPeriod" utilizzando la Console di gestione AWS o l'API ModifyCluster. Se desideri disattivare i backup automatici, è sufficiente impostare il periodo di retention su 0 (opzione non consigliata).

D: Cosa succede ai miei snapshot se elimino il mio cluster ElastiCache per Redis?

Quando si elimina il cluster ElastiCache per Redis, gli snapshot manuali sono conservati. Hai anche la possibilità di creare uno snapshot finale prima che il cluster venga eliminato. Gli snapshot di cache automatici non vengono conservati.

D: Quali tipi di nodi di cache sono supportati dalla funzione backup e ripristino?

Tutti i tipi di nodi di istanza ElastiCache per Redis tranne t1.micro e la famiglia t2 supportano la funzione backup e ripristino.

Nodi di cache della generazione attuale:

  • cache.m3.medium
  • cache.m3.large
  • cache.m3.xlarge
  • cache.m3,2xlarge
  • cache.r3.large
  • cache.r3.xlarge
  • cache.r3,2xlarge
  • cache.r3,4xlarge
  • cache.r3,8xlarge

Nodi di cache della generazione precedente:

  • cache.m1.small
  • cache.m1.medium
  • cache.m1.large
  • cache.m1.xlarge
  • cache.m2.xlarge
  • cache.m2,2xlarge
  • cache.m2,4xlarge
  • cache.c1.xlarge

D: Posso usare i miei snapshot RDB memorizzati in S3 per l'avvio a caldo di un cluster ElastiCache per Redis?

Sì. Puoi specificare l'ubicazione S3 del tuo file RDB durante la creazione del cluster tramite la procedura guidata "Launch Cache Cluster" nella console o l'API CreateCacheCluster.

D: Posso utilizzare la funzione backup e ripristino se eseguo ElastiCache in un VPC?

Sì.


D: Cos'è il ridimensionamento di cluster online

Amazon ElastiCache per Redis permette di aggiungere e rimuovere shard da un cluster in esecuzione. In questo modo è possibile ricalibrare le risorse per i carichi di lavoro su cluster Redis in base alla domanda in modo dinamico. ElastiCache ridimensionerà il cluster aggiungendo o rimuovendo shard e redistribuendo slot hash in modo uniforme sulla nuova configurazione, mentre il cluster rimane online e continua ad elaborare le richieste.

D: Quali sono i vantaggi del ridimensionamento di cluster online?

La possibilità di ricalibrare le risorse di un cluster semplifica la gestione delle fluttuazioni della domanda delle applicazioni. È infatti possibile ottimizzare le dimensioni di un cluster aggiungendo o rimuovendo shard per ottenere le prestazioni e la capacità in memoria più idonee al caso d'uso. Grazie a questa caratteristica non è più necessario acquisire risorse in eccesso per affrontare i picchi di domanda, migliorando così l'efficienza e riducendo i costi.

D: In che modo è possibile utilizzare il ridimensionamento di cluster online?

Il ridimensionamento di cluster online è disponibile per la versione 3.2.10 del motore Redis. Per eseguire il resharding di un cluster, seleziona il cluster e specifica se desideri aggiungere o rimuovere shard. Quando vengono aggiunte risorse, ElastiCache aggiunge shard ed esegue la migrazione degli slot dagli shard esistenti a quelli nuovi, redistribuendoli in modo uniforme. Analogamente, quando vengono ridotte le risorse, ElastiCache esegue la migrazione degli slot agli shard rimanenti, redistribuendoli uniformemente ed eliminando gli shard specificati.

D: Quanto tempo richiede il ridimensionamento di cluster online?

Il tempo necessario per ridimensionare un cluster dipende da diversi fattori, ad esempio dal numero di slot da migrare sugli shard disponibili, dal volume di dati e dalla frequenza delle richieste sul cluster. Tuttavia, il flusso di lavoro è ottimizzato per parallelizzare la migrazione di slot, perciò la durata dell'operazione è ridotta quando vengono aggiunti shard.

D: È possibile utilizzare il cluster durante il ridimensionamento?

Sì, il cluster rimarrà online ed elaborerà le richieste in ingresso anche durante il ridimensionamento. Tuttavia, non sarà possibile eseguire snapshot del cluster per evitare di appesantire il carico sul cluster.

D: Eseguire queste operazioni sul cluster può avere ripercussioni sulle sue prestazioni?

Il ridimensionamento di cluster online permette di ricalibrare le risorse senza tempi di inattività, ma è un'operazione che richiede notevoli risorse di calcolo, perciò i livelli di latenza della connessione client risulteranno aumentati. Per ridurre il carico sul cluster durante questa attività, consigliamo di seguire le best practice contenute nella documentazione.

D: In che modo è possibile tenere traccia dell'avanzamento di un'operazione di resharding online?

È possibile monitorarne l'avanzamento tenendo sotto controllo lo stato di cluster, shard e nodi. Durante il ridimensionamento, cluster, shard e nodi rimarranno infatti nello stato "Modifying". Analogamente, durante la creazione e l'eliminazione di shard o la migrazione di slot, lo stato dei singoli shard varierà in base all'avanzamento dell'operazione in corso. Inoltre, lo stato globale dell'attività può essere monitorato utilizzando gli indicatori di avanzamento per le operazioni di resharding che indica la percentuale di completamento e fornisce informazioni sulla durata rimanente. Infine, i messaggi relativi all'evento permetteranno di tenere traccia dell'avanzamento tramite la descrizione delle operazioni in corso (creazione di shard, migrazione di slot, ecc.) durante il ridimensionamento.

D: Cosa si intende per operazione di bilanciamento in un cluster ElastiCache per Redis?

Un'operazione di bilanciamento può essere utilizzata per redistribuire uniformemente gli slot sugli shard esistenti. Si tratta di una caratteristica utile quando viene creato un cluster configurato manualmente con una distribuzione irregolare di slot o quando una ricalibrazione non li redistribuisce correttamente. Presupponendo che ogni slot dispone di requisiti di I/O e memoria identici, il modo più semplice per bilanciare il carico è uniformare il numero di slot per ogni shard.

D: Come funziona l'applicazione di tag quando vengono aggiunti cluster?

Quando viene aumentata la capacità di un cluster, ai nodi aggiunti saranno applicati gli stessi tag utilizzati sui nodi esistenti. Inoltre, gli utenti potranno modificare i tag su tutti i nodi e continuare a utilizzare questa caratteristica.

D: È necessario apportare modifiche a client o applicazioni per utilizzare il ridimensionamento di cluster online?

No. La distribuzione migliorata di slot nel flusso di lavoro di ridimensionamento è conforme al comportamento del client cluster di Redis e non richiede alcuna modifica alle applicazioni. ElastiCache manterrà inoltre gli endpoint cluster, perciò sarà possibile utilizzare i client esistenti senza dover apportare modifiche.

D: Quanto costa utilizzare il motore Redis migliorato?

Non sono previsti costi aggiuntivi per l'utilizzo del motore Redis migliorato. Come di consueto, saranno addebitati esclusivamente i costi dei nodi impiegati.

 


D: Cosa offre la crittografia in transito per ElastiCache per Redis?

La funzione di crittografia in transito consente di crittografare tutte le comunicazioni tra client e server Redis, così come tra server Redis (nodi primari e di replica di lettura).

D: Cosa offre la crittografia a riposo per ElastiCache per Redis?

La crittografia a riposo consente la crittografia dei dati durante le operazioni di backup e ripristino: i dati di cui viene eseguito backup e ripristino su disco e tramite Amazon S3 sono crittografati.

D: Come posso utilizzare la crittografia in transito, a riposo e AUTH Redis?

La crittografia in transito, la crittografia a riposo e AUTH Redis sono tutte funzionalità opzionali. Al momento della creazione del cluster Redis mediante la console o l'interfaccia della riga di comando, è possibile specificare se si desidera abilitare la crittografia e AUTH Redis e procedere a fornire un token di autenticazione per la comunicazione con il cluster Redis. Una volta configurato il cluster con la crittografia abilitata, ElastiCache gestisce in modo uniforme la scadenza e il rinnovo del certificato, senza che siano necessarie azioni aggiuntive da parte dell'applicazione. Inoltre, i client Redis devono supportare TLS per usufruire del traffico in transito crittografato.

D: Esiste un client Amazon ElastiCache per Redis da usare durante l'utilizzo della crittografia in transito o a riposo?

No. La crittografia in transito richiede il supporto di TLS da parte dei client. La maggior parte dei client Redis più popolari (come Lettuce, Predis, go-Redis) fornisce supporto per TLS con alcune impostazioni di configurazione. È necessario assicurarsi che il client Redis di scelta sia configurato per supportare TLS e continuare a utilizzare ElastiCache per Redis come prima.

D: Posso abilitare la crittografia in transito e la crittografia a riposo sui miei cluster ElastiCache per Redis esistenti?

No. Il supporto per crittografia in transito e crittografia a riposo è disponibile solo per i nuovi cluster e non è supportata sui cluster ElastiCache per Redis esistenti. La versione ElastiCache per Redis 3.2.6 è la versione iniziale che supporta queste caratteristiche.

D: Vi sono azioni necessarie per il rinnovo dei certificati?

No. ElastiCache gestisce scadenza e rinnovo delle certificazioni dietro le quinte. Non sono necessarie azioni da parte dell'utente per la manutenzione continuativa dei certificati.

D: Posso utilizzare i miei certificati per la crittografia?

No. Attualmente, ElastiCache non fornisce la possibilità di utilizzare i propri certificati. ElastiCache gestisce i certificati in modo trasparente per te.

D: Quali tipi di istanze sono supportati per la crittografia in transito e a riposo?

Tutte le istanze della generazione attuale sono supportate per la crittografia in transito e a riposo.

D: Sono previsti costi aggiuntivi per l'utilizzo della crittografia?

Non verrà addebitato alcun costo aggiuntivo per l'utilizzo della crittografia.

 


D: Amazon ElastiCache for Redis è conforme allo standard HIPAA?

Sì, Amazon ElastiCache for Redis è conforme allo standard HIPAA e rientra nei Business Associate Addendum (BAA) di AWS. Ciò significa che è possibile utilizzare ElastiCache for Redis per elaborare, immagazzinare e organizzare le informazioni sanitarie protette (PHI) e promuovere le applicazioni sanitarie.

D: In che modo posso utilizzare ElastiCache for Redis conforme allo standard HIPAA?

Se disponi di un BAA (Business Associate Agreement) con AWS, puoi utilizzare ElastiCache for Redis per creare applicazioni conformi allo standard HIPAA. In caso contrario, oppure se hai domande sull'utilizzo di AWS con applicazioni conformi allo standard HIPAA, contattaci. Consulta il documento Architecting for HIPAA Security and Compliance on Amazon Web Services per informazioni su configurazione, archiviazione ed elaborazione dei servizi Amazon conformi allo standard HIPAA e trasmissione delle informazioni sanitarie protette (PHI).

D: Quali sono i programmi di conformità supportati da ElastiCache for Redis?

I programmi di compatibilità supportati da ElastiCache for Redis sono, ad esempio, SOC 1, SOC 2, SOC 3, ISO, MTCS, C5 e HIPAA. Consulta i servizi AWS coperti dal programma di conformità per conoscere i programmi di conformità attualmente in uso.

D: Sono previsti costi aggiuntivi per l'utilizzo delle caratteristiche di conformità?

No, non sono previsti costi aggiuntivi per l'utilizzo delle caratteristiche di conformità.