AWS announces preview of AWS Interconnect - multicloud
AWS announces AWS Interconnect – multicloud (preview), providing simple, resilient, high-speed private connections to other cloud service providers. AWS Interconnect - multicloud is easy to configure and provides high-speed, resilient connectivity with dedicated bandwidth, enabling customers to interconnect AWS networking services such as AWS Transit Gateway, AWS Cloud WAN, and Amazon VPC to other cloud service providers with ease.
Come posso ridurre al minimo i tempi di inattività in ElastiCache durante il failover?
Desidero seguire le best practice per ridurre al minimo i tempi di inattività durante i failover per Amazon ElastiCache per Redis OSS e Amazon ElastiCache per Valkey.
Breve descrizione
ElastiCache può subire failover che influiscono sulle prestazioni e sull'affidabilità delle applicazioni per i seguenti motivi:
- Se esaurisci le risorse, come memoria, CPU e larghezza di banda di rete, i nodi potrebbero subire il failover.
- Se AWS pianifica un evento di manutenzione per un aggiornamento, i nodi potrebbero subire il failover.
- Se l'hardware fisico dell'infrastruttura che ospita i nodi ha un guasto o presenta problemi, i nodi potrebbero subire il failover.
- Se non configuri correttamente le applicazioni o i servizi che interagiscono con la cache, le configurazioni possono comportare tempi di inattività più lunghi.
Risoluzione
Attiva Multi-AZ
Per creare e mantenere il nodo primario e il nodo di replica in diverse zone di disponibilità (AZ) in una Regione AWS, utilizza la funzionalità Multi-AZ di ElastiCache. Se il nodo primario viene a mancare, il nodo di replica assume il ruolo di nodo primario con tempi di inattività minimi.
Aggiungi repliche in lettura
Quando aggiungi repliche in lettura alle distribuzioni Redis, riduci al minimo i tempi di inattività e la perdita di dati nelle attività di failover. Quando le repliche in lettura gestiscono le richieste di lettura, configura il nodo primario per gestire le operazioni di scrittura. Questa configurazione offre i seguenti vantaggi:
- Migliora il throughput di lettura
- Riduce la latenza
- Assicura la tolleranza ai guasti
- Semplifica le attività di manutenzione che causano tempi di inattività del cluster
Distribuisci i nodi nelle zone di disponibilità
Quando distribuisci i nodi su più zone di disponibilità, le repliche in AZ differenti garantiscono alta disponibilità e operazioni di lettura continue. Questa configurazione migliora la resilienza del sistema e riduce i tempi di inattività in caso di failover del nodo. Puoi distribuire i nodi su più AZ quando configuri il cluster per la prima volta o quando aggiungi nuovi nodi a un cluster esistente. Per ulteriori informazioni, consulta Scelta delle Regioni e delle zone di disponibilità per ElastiCache.
Utilizza la versione più recente di Valkey o Redis OSS
In base al tipo di cluster e nodo, utilizza l'ultima versione di Valkey o Redis OSS per supportare le funzionalità più recenti. Ad esempio, i cluster disattivati in modalità cluster richiedono Valkey versione 7.2 o Redis OSS versione 5.0.6 o successiva per utilizzare la funzionalità di sostituzione pianificata dei nodi. Per ulteriori informazioni, consulta Tipi di nodi supportati.
Monitora gli eventi del cluster
Per identificare e rispondere ai failover, esamina gli eventi del cluster ElastiCache. Per rilevare precocemente i failover, utilizza Amazon Simple Notification Service (Amazon SNS) per configurare ElastiCache in modo che invii notifiche in caso di eventi del cluster importanti.
Utilizza gli endpoint corretti
Per ridurre al minimo i tempi di inattività durante il failover, devi utilizzare gli endpoint corretti per il cluster ElastiCache per Redis OSS in base alla configurazione del cluster. Per distribuire i carichi di lavoro di lettura tra le repliche per i cluster disattivati in modalità cluster, utilizza l'endpoint primario per le operazioni di scrittura e l'endpoint di lettura per le operazioni di lettura. Per i cluster abilitati alla modalità cluster, utilizza l'endpoint di configurazione per tutte le operazioni in modo da gestire automaticamente le connessioni ai nodi corretti. Quando scegli l'endpoint corretto per la modalità cluster, ottimizzi le prestazioni e crei un processo di failover regolare. Per ulteriori informazioni, consulta Individuazione degli endpoint di connessione in ElastiCache.
Nota: non è consigliabile utilizzare direttamente gli endpoint dei singoli nodi. Utilizza invece gli endpoint corretti per il tipo di connessione. Poiché i ruoli dei nodi possono cambiare durante gli eventi di failover, hai più problemi con l'applicazione se utilizzi l'endpoint di un singolo nodo.
Testa regolarmente il failover automatico
Per mantenere distribuzioni Redis affidabili, è consigliabile testare regolarmente il failover automatico. Per testare il failover automatico, devi simulare un errore del nodo primario per assicurarti che le repliche vengano promosse allo stato primario. Tali test possono identificare i problemi nelle configurazioni e consentirti di risolverli prima che influiscano sui cluster. Inoltre, i test di failover forniscono informazioni sulle prestazioni delle applicazioni e sull’ottimizzazione dell'architettura e delle procedure di ripristino.
Segui le best practice per i client Redis
Per i client Redis, segui queste best practice:
- Per migliorare le prestazioni e il dimensionamento delle applicazioni, utilizza il pool di connessioni per gestire connessioni prestabilite riutilizzabili. Per ulteriori informazioni, consulta Connection pools and multiplexing (Pool di connessioni e multiplexing) sul sito web di Redis.
- Implementa la gestione delle eccezioni e dei timeout per mantenere efficienti le applicazioni per il cluster Redis. Puoi anche esaminare i timeout nei log per identificare i problemi e modificare le configurazioni. Per ulteriori informazioni, consulta Client timeouts (Timeout del client) sul sito web di Redis.
- Per mantenere le applicazioni resilienti, implementa meccanismi di ripetizione che utilizzano una strategia di backoff esponenziale. Configura i meccanismi per distinguere tra errori transitori che giustificano nuovi tentativi ed errori permanenti che non li giustificano. Per ulteriori informazioni, consulta Individuazione e backoff esponenziale dei client del cluster (Valkey e Redis OSS).
- Attiva i log per acquisire le metriche e gli errori più importanti e stabilire una linea di partenza per le prestazioni per il cluster. Per ulteriori informazioni, consulta Logging events (Registrazione degli eventi) sul sito web di Redis.
- Progetta i client in modo da gestire dinamicamente le modifiche alla topologia del cluster e adattarli alle modifiche dei nodi e dei ruoli. Per mantenere le connessioni ai nodi del cluster e ottimizzare i cluster, implementa un pool di connessioni intelligente. Per ulteriori informazioni, consulta Redis Cluster and Client Libraries (Librerie di cluster e client Redis) sul sito web di Redis.
Informazioni correlate
Monitoring best practices with Amazon ElastiCache for Redis using Amazon CloudWatch (Monitoraggio delle best practice con Amazon ElastiCache per Redis utilizzando Amazon CloudWatch)
Come posso risolvere i problemi di latenza elevata in ElastiCache per Redis?
Supported connection clients (Client di connessione supportati) sul sito web di Redis
- Argomenti
- Database
- Lingua
- Italiano
