Como soluciono problemas de conexão dos clusters autoprojetados do ElastiCache para Valkey e do ElastiCache para Redis OSS?

7 minuto de leitura
0

Quero solucionar problemas de conectividade com meu cluster autoprojetado do Amazon ElastiCache para Valkey e do Amazon ElastiCache para Redis OSS.

Resolução

Verificar o estado do cluster

Observação: Se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de problemas da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.

Se você criou o cluster recentemente, poderá ter problemas de conectividade se o cluster não estiver no estado Disponível. Para confirmar que a criação foi concluída, verifique o status do cluster e de cada nó conectado ao cluster:

  • Se a coluna Status mostrar Disponível, o cluster está pronto para aceitar conexões.
  • Se a coluna Status mostrar Criando ou Modificando, a criação do cluster está em andamento ou em atualização. Aguarde alguns minutos até que o status seja atualizado para Disponível.

Verificar a integridade do cluster

Para verificar a integridade do cluster, consulte as seguintes fontes para obter informações sobre seu cluster:

Revisar grupos de segurança e configurações de ACL de rede

Analise as configurações dos seus grupos de segurança e listas de controle de acesso à rede (ACLs de rede) no cluster e no recurso a partir do qual você inicia a conexão. Você deve configurar os grupos de segurança e as ACLs da rede para acessar os recursos. Para mais informações, consulte Acesso ao cluster ou grupo de replicação do ElastiCache.

Veja a seguir exemplos de recursos do cliente:

  • Instâncias do Amazon Elastic Compute Cloud (Amazon EC2)
  • Funções do AWS Lambda
  • Contêineres do Amazon Elastic Container Service (Amazon ECS)
  • Contêineres do Amazon Elastic Kubernetes Service (Amazon EKS)

Para revisar o grupo de segurança do cluster, conclua as etapas a seguir:

  1. Abra o console do ElastiCache.
  2. No painel de navegação, em Recursos, escolha caches Valkey ou caches Redis OSS e selecione o cluster.
  3. Na página de detalhes do cluster, selecione a guia Conectividade e segurança.
  4. Verifique se pelo menos um dos grupos de segurança associados permite conexões de entrada do recurso cliente para o cluster na porta do cluster.
  5. Para encontrar o número da porta, revise um dos endpoints do cluster. Os endpoints estão no formato domain_name:port.
    Observação: por padrão, a porta do cluster é 6379/TCP. É possível substituir o número da porta ao criar um cluster.
  6. No recurso cliente, verifique se os grupos de segurança permitem conexões de saída da porta do cluster para os blocos CIDR das sub-redes do cluster.
  7. Verifique se as ACLs de rede permitem conexões de entrada e saída entre o cliente e o cluster. Além disso, verifique se as tabelas de rotas têm as rotas corretas.
    Observação: por padrão, as ACLs de rede permitem todas as conexões.

Para solucionar outros problemas de configuração de rede, use o Analisador de Acesso à Rede da Amazon Virtual Private Cloud (Amazon VPC).

Verificar se usa os endpoints corretos para conexões

Certifique-se de configurar a aplicação do lado do cliente para usar os endpoints corretos. Para obter mais informações, consulte Localizar endpoints de conexão no ElastiCache.

Analisar a conexão TCP entre o cluster Valkey ou Redis OSS e o cliente

Verifique se há uma conexão TCP entre o cluster Valkey ou Redis OSS e o recurso cliente. Para confirmar a conectividade entre o cluster do ElastiCache e o cliente, execute o comando curl a partir do recurso cliente:

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

Observação: substitua example-cluster-endpoint pelo endpoint do seu cluster.

Exemplo de saída:

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

No exemplo anterior, Conectado na saída confirma que a conexão TCP foi bem-sucedida.

Revisar as conexões com clusters que têm criptografia em trânsito

Para enviar tráfego do cluster Valkey ou Redis OSS por TLS, você deve usar criptografia em trânsito. Para estabelecer uma conexão com o cliente, o cliente deve ter suporte para TLS.

Se você tiver valkey-cli ou redis-cli com suporte para TLS, poderá adicionar o argumento --tls ao comando para ativar o suporte para TLS.

exemplo de redis-cli:

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

exemplo de valkey-cli:

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

Observação: substitua example-encrypted-cluster-endpoint pelo endpoint criptografado do seu cluster.

Exemplo de saída:

example-encrypted-cluster-endpoint:6379>

Se valkey-cli ou redis-cli não tiverem suporte para TLS, você receberá o seguinte erro:

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

Para solucionar o erro anterior, instale valkey-cli ou redis-cli com suporte para TLS.

Analisar as conexões aos clusters com autenticação

Para revisar as conexões aos clusters com autenticação, use valkey-cli ou redis-cli. Para mais informações, consulte a seção Conectar-se a um cluster habilitado para criptografia/autenticação em Conectar-se ao nó do cluster.

exemplo de redis-cli:

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

exemplo de valkey-cli:

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

Observação: os comandos valkey-cli e redis-cli exigem os argumentos --tls e --askpass ou -a. Se você não fornecer esses argumentos ou usar uma senha incorreta, será exibida uma mensagem de NOAUTH ou AUTH failed. Se você usar valkey-cli ou redis-cli somente com o \argumento \ --tls, use AUTH <password> depois de se conectar para concluir a autenticação.

Atualizar os atributos de DNS no recurso cliente

Se você tiver problemas de DNS, poderá receber um erro “Name or service not known” ou “NXDOMAIN”. Esses erros ocorrem quando as pesquisas de DNS falham em seu servidor DNS personalizado. Para resolver esses erros, certifique-se de que você tenha os atributos DNS corretos no recurso cliente da Amazon VPC.

Observação: é uma prática recomendada usar o servidor Amazon DNS em sua nuvem privada virtual (VPC).

Revisar as conexões do cliente

Para revisar os detalhes da conexão do cliente do seu cluster ElastiCache, é possível usar as métricas para Valkey e Redis OSS, como CurrConnections e NewConnections. O ElastiCache usa de quatro a seis das conexões para monitorar o cluster.

Para encontrar os detalhes da conexão do cliente, execute o seguinte comando valkey-cli ou redis-cli:

$ CLIENT LIST

A saída do comando lista todos os clientes conectados, incluindo seus endereços IP, tempo ocioso e outras informações. Para mais informações, consulte LISTA DE CLIENTES no site do Valkey e LISTA DE CLIENTES no site do Redis OSS.

Revisar a conectividade de rede entre seu cluster e o recurso cliente

Dependendo de como você acessa seu cluster do ElastiCache, você pode ter problemas de latência. Para minimizar a latência, é uma prática recomendada acessar o ElastiCache a partir do Amazon EC2 ou de recursos dentro da mesma Amazon VPC. Para mais informações, consulte Padrões de acesso para acessar um cache do ElastiCache em uma Amazon VPC e Acessar o cluster ou grupo de replicação do ElastiCache.

Informações relacionadas

Problemas persistentes de conexão

Conectar-se a um cluster Valkey ou Redis OSS ou grupo de replicação (Linux)

AWS OFICIAL
AWS OFICIALAtualizada há um mês