Cómo Conectarse Amazon ElastiCache Redis

Cómo Conectarse Amazon ElastiCache Redis

Amazon ElastiCache es un servicio gestionado que facilita la implementación, operación y escalado de caches en memoria en la nube. Redis, uno de los motores de cache más populares, es compatible con ElastiCache, proporcionando una solución de cache rápida y eficiente para tus aplicaciones. Sin embargo, al conectar a un clúster de Redis en ElastiCache, puede surgir un problema común: el comando redis-cli puede quedarse "pensando" sin conectarse correctamente si no se utiliza TLS. En este artículo, te guiaremos a través de la conexión a un clúster de Redis en ElastiCache utilizando TLS/SSL y explicaremos por qué es crucial para una conexión exitosa.

Conexión a Redis en ElastiCache sin TLS: Problemas Comunes

Al intentar conectar a un clúster de Redis sin TLS, puedes experimentar que el comando redis-cli parece quedarse en espera sin establecer una conexión. Este comportamiento ocurre porque ElastiCache Redis requiere cifrado TLS para las conexiones de clientes en sus clústeres. Aunque puedes verificar la conectividad de red con herramientas como telnet, la conexión real a Redis falla sin el cifrado adecuado.

Ejemplo de Comportamiento:

$ redis-cli -h [tu_endpoint_redis] -p 6379
# El comando se queda esperando y no se conecta

En cambio, si intentas conectarte con telnet, puedes verificar que el puerto está abierto, pero eso no significa que puedas interactuar correctamente con Redis sin el cifrado TLS requerido.

Importancia de Utilizar SSL/TLS en la Conexión a Redis

El cifrado TLS/SSL es esencial para proteger la integridad y privacidad de los datos transmitidos entre el cliente y el servidor Redis. Al utilizar TLS, aseguras que los datos están cifrados durante su transmisión, evitando que sean interceptados o alterados por terceros. Amazon ElastiCache requiere TLS para garantizar la seguridad de los datos en tránsito, por lo que cualquier intento de conexión sin cifrado fallará.

Pasos para Conectarse a un Clúster de Redis en ElastiCache con TLS

A continuación, te mostramos cómo conectar a un clúster de Redis en Amazon ElastiCache utilizando TLS en diferentes versiones de Amazon Linux:

1. Conexión en Amazon Linux 2023

1- Instalar Redis CLI:

sudo yum install redis6 -y

2- Conectar a Redis utilizando TLS:

redis-cli -h [tu_endpoint_redis] -p 6379 --tls
2. Conexión en Amazon Linux 2
sudo yum -y install openssl-devel gcc
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make distclean
make redis-cli BUILD_TLS=yes
sudo install -m 755 src/redis-cli /usr/local/bin/
3. Conexión en Amazon Linux
sudo yum install gcc jemalloc-devel openssl-devel tcl tcl-devel clang wget
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make redis-cli CC=clang BUILD_TLS=yes
sudo install -m 755 src/redis-cli /usr/local/bin/
sudo yum install clang
CC=clang make
sudo make install

Para una conexión exitosa a un clúster de Redis en Amazon ElastiCache, es crucial utilizar TLS/SSL. Sin cifrado, la conexión puede fallar y no podrás interactuar con tu clúster de Redis a través del comando redis-cli. Asegúrate de seguir los pasos adecuados para cada versión de Amazon Linux y verifica que tu configuración TLS esté correcta para garantizar una conexión segura y confiable.

Si tienes alguna pregunta o necesitas más detalles sobre la configuración de TLS en Redis, no dudes en consultar la documentación de Amazon ElastiCache o contactar con el soporte técnico de AWS.