Come posso risolvere i problemi di connessione di cluster autoprogettati ElastiCache per Valkey ed ElastiCache per Redis OSS?

7 minuti di lettura
0

Desidero risolvere i problemi di connettività dei miei cluster autoprogettati Amazon ElastiCache per Valkey e Amazon ElastiCache per Redis OSS.

Risoluzione

Verifica lo stato del cluster

Nota: se ricevi errori quando esegui i comandi dell'Interfaccia della linea di comando AWS (AWS CLI), consulta Risoluzione degli errori per AWS CLI. Inoltre, assicurati di utilizzare la versione più recente di AWS CLI.

Per un cluster creato di recente, potrebbero verificarsi problemi di connettività se il cluster non è nello stato Disponibile. Per verificare che la creazione sua completa, controlla lo stato del cluster e di ogni nodo collegato al cluster:

  • Se la colonna Stato mostra Disponibile, il cluster è pronto ad accettare connessioni.
  • Se la colonna Stato mostra Creazione in corso o Modifica in corso, significa che la creazione del cluster è in corso o si sta aggiornando. Attendi qualche minuto finché lo stato non diventa Disponibile.

Verifica lo stato del cluster

Per verificare lo stato del cluster, consulta le seguenti fonti di informazioni sul cluster:

Rivedi le configurazioni dei gruppi di sicurezza e delle ACL

Rivedi le configurazioni dei gruppi di sicurezza e delle liste di controllo degli accessi alla rete (ACL) del cluster e della risorsa da cui avvii la connessione. Devi configurare i gruppi di sicurezza e le ACL per accedere alle risorse. Per ulteriori informazioni, consulta Accesso al cluster o al gruppo di replica ElastiCache.

Di seguito sono riportati alcuni esempi di risorse client:

  • Istanze Amazon Elastic Compute Cloud (Amazon EC2)
  • Funzioni AWS Lambda
  • Amazon Elastic Container Service (Amazon ECS)
  • Container Amazon Elastic Kubernetes Service (Amazon EKS)

Per esaminare il gruppo di sicurezza del cluster, completa i seguenti passaggi:

  1. Apri la console ElastiCache.
  2. Nel pannello di navigazione, in Risorse, scegli Cache Valkey o Cache Redis OSS, quindi seleziona il cluster.
  3. Nella pagina dei dettagli del cluster, seleziona la scheda Connettività e sicurezza.
  4. Verifica che almeno uno dei gruppi di sicurezza associati consenta connessioni in entrata dalla risorsa client al cluster sulla porta del cluster.
  5. Per individuare il numero di porta, controlla uno qualsiasi degli endpoint del cluster. Gli endpoint sono nel formato domain_name:port.
    Nota: per impostazione predefinita, la porta del cluster è 6379/TCP. Puoi sovrascrivere il numero di porta quando crei un cluster.
  6. Sulla risorsa client, verifica che i gruppi di sicurezza consentano connessioni in uscita alla porta del cluster e ai blocchi CIDR delle sottoreti del cluster.
  7. Verifica che le ACL consentano le connessioni in uscita e in entrata tra il client e il cluster. Inoltre, controlla che le tabelle di routing contengano le route appropriate.
    Nota: per impostazione predefinita, le ACL consentono tutte le connessioni.

Per risolvere ulteriormente i problemi di configurazione della rete, utilizza lo Strumento di analisi degli accessi alla rete di Amazon Virtual Private Cloud (Amazon VPC).

Verifica di utilizzare gli endpoint corretti per le connessioni

Assicurati di configurare l'applicazione lato client per utilizzare gli endpoint corretti. Per ulteriori informazioni, consulta Individuazione degli endpoint di connessione in ElastiCache.

Rivedi la connessione TCP tra il cluster OSS Valkey o Redis e il client

Assicurati che ci sia una connessione TCP tra il cluster OSS Valkey o Redis e la risorsa client. Per verificare la connettività tra il cluster ElastiCache e il client, esegui il comando curl dalla risorsa client:

$ curl -v telnet://example-cluster-endpoint:6379

Nota: Sostituisci example-cluster-endpoint con l'endpoint del tuo cluster.

Esempio di output:

*   Trying 172.31.1.242:6379...* Connected to example-cluster-endpoint (172.31.1.242) port 6379

Nell'esempio precedente, Connected (Connesso) nell'output conferma che la connessione TCP è riuscita.

Esamina le connessioni ai cluster con crittografia in transito

Per inviare il traffico del cluster OSS Valkey o Redis tramite TLS, devi utilizzare la crittografia in transito. Per stabilire una connessione dal client, il client deve disporre del supporto TLS.

Se hai valkey-cli o redis-cli con supporto TLS, puoi aggiungere l'argomento**--tls** al comando per attivare il supporto TLS.

Esempio per redis-cli:

$ redis-cli -h example-encrypted-cluster-endpoint -p 6379 --tls

Esempio per valkey-cli:

$ valkey-cli -h example-encrypted-cluster-endpoint -p 6379 --tls

Nota: Sostituisci example-encrypted-cluster-endpoint con l'endpoint crittografato del tuo cluster.

Esempio di output:

example-encrypted-cluster-endpoint:6379>

Se valkey-cli o redis-cli non supporta TLS, ricevi il seguente errore:

"Unrecognized option or bad number of args for: '--tls' "

Per risolvere l'errore precedente, installa valkey-cli o redis-cli con supporto TLS.

Esamina le connessioni ai cluster con autenticazione

Per esaminare le connessioni ai cluster con autenticazione, utilizza valkey-cli o redis-cli. Per ulteriori informazioni, consulta la sezione Connessione a un cluster abilitato per crittografia/autenticazione in Connessione al nodo del cluster.

Esempio per redis-cli:

redis-cli -h your-cluster-endpoint -p 6379 --tls -c --user your-user --askpass # Enter the password when prompted

Esempio per valkey-cli:

valkey-cli -h your-cluster-endpoint -p 6379 --tls -c --user your-user --askpass # Enter the password when prompted

Nota: i comandi valkey-cli e redis-cli richiedono entrambi gli argomenti --tls e --askpass o -a. Se questi argomenti non vengono forniti o se utilizzi una password errata, viene visualizzato il messaggio NOAUTH o AUTH failed. Se utilizzi valkey-cli o redis-cli solo con l'argomento --tls, utilizza AUTH <password> dopo la connessione per completare l'autenticazione.

Aggiorna gli attributi DNS della risorsa client

Se hai problemi con il DNS, potresti ricevere un errore "Name or service not known" o "NXDOMAIN". Questi errori si verificano quando le ricerche DNS tramite il server DNS personalizzato hanno esito negativo. Per risolverli, assicurati di avere gli attributi DNS corretti per la risorsa client in Amazon VPC.

Nota: è consigliabile utilizzare il server DNS Amazon per il cloud privato virtuale (VPC).

Controlla le connessioni client

Per esaminare i dettagli delle connessioni client del cluster ElastiCache, puoi utilizzare le metriche per Valkey e Redis OSS, come ad esempio CurrConnections e **NewConnections.**ElastiCache utilizza da quattro a sei connessioni per monitorare il cluster.

Per trovare i dettagli delle connessioni client, esegui questo comando valkey-cli o redis-cli:

$ CLIENT LIST

L'output del comando elenca tutti i client connessi, inclusi i relativi indirizzi IP, il tempo di inattività e altre informazioni. Per ulteriori informazioni, consulta CLIENT LIST sul sito web di Valkey e CLIENT LIST sul sito web di Redis OSS.

Esamina la connettività di rete tra il cluster e la risorsa client

A seconda dell'accesso al cluster ElastiCache, potrebbero verificarsi problemi di latenza. Per ridurre al minimo la latenza, è consigliabile accedere a ElastiCache da Amazon EC2 o da risorse all'interno dello stesso Amazon VPC. Per ulteriori informazioni, consulta Modelli di accesso per l'accesso a una cache ElastiCache in un Amazon VPC e Accesso a un cluster o gruppo di replica ElastiCache.

Informazioni correlate

Problemi di connessione persistenti

Connessione a un cluster o gruppo di replica Valkey o Redis OSS (Linux)

AWS UFFICIALEAggiornata 2 mesi fa