Cómo instalar Redis en Ubuntu 24.04, 22.04 o 20.04

Redis es un potente almacén de estructuras de datos en memoria ampliamente utilizado como base de datos, caché y intermediario de mensajes. Conocido por su alto rendimiento y versatilidad, Redis admite varias estructuras de datos como cadenas, hashes, listas, conjuntos y más, lo que lo convierte en una opción popular para aplicaciones que requieren acceso rápido a datos y análisis en tiempo real.

En Ubuntu 24.04, 22.04 o 20.04, Redis se puede instalar mediante dos métodos principales. El primer método es a través del repositorio predeterminado de Ubuntu, que proporciona una versión estable que está bien integrada con la administración de paquetes del sistema. Alternativamente, para los usuarios que requieren la última versión con las funciones y actualizaciones más recientes, Redis se puede instalar utilizando el repositorio espejo de Redis APT. Esta guía lo guiará a través de ambos métodos de instalación y lo ayudará a elegir el mejor enfoque para sus necesidades.

Método 1: instalar Redis a través del repositorio predeterminado de APT

Actualice Ubuntu antes de la instalación de Redis

Antes de instalar Redis, es esencial asegurarse de que los paquetes de su sistema estén actualizados. Este paso ayuda a evitar cualquier conflicto que pueda surgir durante el proceso de instalación. Para actualizar su sistema Ubuntu, ejecute el siguiente comando:

sudo apt update && sudo apt upgrade

Este comando obtendrá la información más reciente del paquete de los repositorios y actualizará cualquier paquete obsoleto en su sistema.

Instale Redis mediante el comando APT

De forma predeterminada, el paquete Redis está incluido en el repositorio de Ubuntu, que puedes instalar con el siguiente comando:

sudo apt install redis

Este comando descargará e instalará el paquete Redis y sus dependencias en su sistema.

Verificar la instalación de Redis

Ahora que ha instalado Redis, verificar la instalación es crucial, ya que necesita verificar la versión instalada. Este paso garantiza que Redis se haya instalado correctamente y funcione como se esperaba.

Para verificar la instalación de Redis, ejecute el siguiente comando:

redis-cli --version

Este comando mostrará la versión de Redis instalada en su sistema. Si el resultado muestra la versión de Redis, confirma que la instalación se realizó correctamente.

Método 2: instalar Redis a través de Redis.io APT PPA

Actualice Ubuntu antes de la instalación de Redis con Redis.io

Antes de continuar con la instalación de Redis, actualice los paquetes de su sistema para garantizar la compatibilidad y evitar conflictos:

sudo apt update && sudo apt upgrade

Instalar paquetes iniciales para Redis.io PPA

Para completar la instalación, debe instalar algunos paquetes de software de requisitos previos. Ejecute el siguiente comando para instalarlos:

sudo apt install software-properties-common apt-transport-https curl ca-certificates curl -y

Estos paquetes son necesarios para agregar el repositorio de Redis.io y recuperar de forma segura la información del paquete.

Importar el repositorio APT de Redis.io

Primero, importe la clave GPG para autenticar los paquetes:

curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg

A continuación, agregue el repositorio Redis.io a su sistema:

echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list

Actualizar la lista de paquetes después de la importación de PPA de Redis.io

Actualice su lista de fuentes para incluir el repositorio Redis.io recién agregado:

sudo apt update

Finalice la instalación de Redis PPA mediante el comando de terminal

Ahora puede instalar Redis desde el repositorio de Redis.io. Si ya tienes Redis instalado, este comando lo actualizará:

sudo apt install redis-server redis-tools

Verificación de la instalación de Redis

Para asegurarse de haber instalado la versión de Redis.io, utilice el comando de política apt-cache:

apt-cache policy redis-server

Verifique que el resultado indique la versión correcta.

A continuación, habilite e inicie el servicio Redis:

sudo systemctl enable redis-server --now

Verifique el estado del servicio Redis y asegúrese de que se esté ejecutando sin errores:

systemctl status redis-server

Redis debería estar escuchando activamente en localhost en el puerto predeterminado 6379. Para confirmar esto, ejecute el siguiente comando:

ps -ef | grep redis

Salida de ejemplo:

redis       4171       1  0 23:35 ?        00:00:00 /usr/bin/redis-server 127.0.0.1:6379
joshua      4702    4691  0 23:36 pts/0    00:00:00 grep --color=auto redis

Probar la conexión de Redis

Para probar su instalación de Redis, conéctese al servicio de Redis usando el comando redis-cli:

redis-cli

Una vez conectado, su terminal mostrará 127.0.0.1:6379. Realice una prueba de ping para garantizar una comunicación adecuada con el servicio Redis:

ping
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> 

La salida debe ser "PONG", lo que indica una conexión exitosa. Para salir de la instancia de Redis, escriba:

exit

¡Felicidades! Ha instalado correctamente Redis en su sistema y ha verificado que está operativo. Ahora puede proceder a configurar Redis según sea necesario.

Resumen rápido sobre la configuración de Redis

Redis es una herramienta versátil que se puede configurar de varias maneras para adaptarse a diferentes casos de uso. Esta sección lo guiará a través de la configuración de Redis para almacenamiento en caché, acceso a la red y configuración de una contraseña para mayor seguridad.

Edite el archivo de configuración de Redis

Para comenzar a configurar Redis, abra el archivo /etc/redis/redis.conf usando el editor nano:

sudo nano /etc/redis.conf

Configurar la memoria máxima para Redis

Una de las principales razones por las que la gente usa Redis es para fines de almacenamiento en caché. Para asignar una cantidad específica de memoria para el almacenamiento en caché de Redis, agregue las siguientes líneas al final del archivo de configuración:

maxmemory 500mb 
maxmemory-policy allkeys-lru

En este ejemplo, hemos dedicado 500 MB de memoria a Redis. Puede ajustar este valor según los requisitos de aplicación y hardware de su servidor. Una vez que se agota la memoria asignada, Redis eliminará las claves según el algoritmo menos utilizado recientemente (LRU).

Configurar el acceso a la red para Redis

De forma predeterminada, Redis solo escucha la interfaz del host local. Puede configurarlo para escuchar en todas las interfaces de red o direcciones IP/subredes específicas.

Primero, ubique la línea 69 en el archivo de configuración.

Opción 1: escuchar en todas las interfaces de red

Para escuchar en todas las interfaces de red, comente la línea "bind" agregando un # al principio:

# bind 127.0.0.1 ::1

Opción 2: vincularse a una dirección IP o subred específica

Para vincular Redis a una dirección IP o subred específica, reemplace la línea "vincular" con la IP o subred deseada:

bind 0.0.0.0/0

o

bind 192.150.5.0/24

Nota: Al vincular Redis a una dirección IP o subred, se recomienda encarecidamente establecer una contraseña para mayor seguridad.

Configurar contraseña para Redis

Para proteger aún más su instancia de Redis, establezca una contraseña para la autenticación.

Busque la línea que comienza con # requirepass (alrededor de la línea 507), descomentela y establezca una contraseña segura:

requirepass YourStrongPasswordHere

Reemplace YourStrongPasswordHere con una contraseña sólida que contenga una combinación de letras mayúsculas, minúsculas, números y símbolos especiales.

Después de configurar una contraseña, deberá usar el comando auth con la contraseña cuando se conecte a Redis usando redis-cli:

redis-cli
auth YourStrongPasswordHere

Los usuarios que no se autentiquen recibirán un mensaje de error: (error) NOAUTH Se requiere autenticación. Tras una autenticación exitosa, los usuarios verán un mensaje OK.

Guarde los cambios y reinicie Redis

Después de realizar los cambios necesarios en el archivo de configuración, guarde los cambios presionando Ctrl + O y luego salga del editor nano presionando Ctrl + X. Finalmente, reinicie el servicio Redis para aplicar la nueva configuración:

Configurar reglas de firewall de Redis UFW

Al utilizar Redis, especialmente si lo ha configurado para escuchar en subredes o direcciones IP específicas, es fundamental asegurarse de que su firewall permita conexiones entrantes en el puerto TCP 6379. Esta sección analizará la configuración de reglas UFW (Firewall sin complicaciones) para permitir conexiones de Redis.

Asegúrese de que UFW esté instalado y habilitado

Primero, asegúrese de que UFW esté instalado en su sistema:

sudo apt install ufw -y

A continuación, habilite UFW si aún no lo está:

sudo ufw enable

Crear reglas UFW para Redis

Dependiendo de sus requisitos y la configuración de la red, es posible que necesite crear reglas para una única instancia de servidor o varias instancias en un clúster.

Opción 1: permitir el acceso desde una dirección IP específica

Si necesita permitir el acceso a Redis desde un único servidor, cree una regla UFW para esa dirección IP específica:

sudo ufw allow proto tcp from <ip address> to any port 6379

Reemplazar con la dirección IP apropiada.

Opción 2: permitir el acceso desde una subred

Si tiene una red de clúster con varias instancias, puede crear una regla UFW para permitir el acceso desde una subred completa:

sudo ufw allow proto tcp from <ip address>/24 to any port 6379

Reemplazar con la dirección IP de subred adecuada. Antes de usar esta regla, asegúrese de que su red interna sea segura y confiable.

Probar la conectividad de Redis

Después de configurar sus reglas de UFW, pruebe su servicio Redis para asegurarse de que esté operativo y sea accesible desde las direcciones IP o subredes permitidas. Utilice el comando redis-cli con el indicador -h, seguido de la dirección IP a la que desea conectarse:

redis-cli -h  <ip address> ping

Reemplazar con la dirección IP adecuada. Si la configuración es correcta, debería recibir una respuesta de tipo "pong".

pong

Opciones de configuración adicionales de Redis

Redis es un almacén de estructuras de datos en memoria versátil y rico en funciones que se utiliza principalmente para almacenamiento en caché, intermediación de mensajes y más. En esta sección, exploraremos opciones de configuración adicionales para Redis que pueden ayudarlo a adaptar su rendimiento y comportamiento a sus necesidades específicas modificando el archivo de configuración de Redis.

Configurar la política de caducidad de valores clave para Redis

En el archivo de configuración de Redis, puede establecer un tiempo de vida (TTL) predeterminado para las claves modificando la configuración de maxmemory-policy y maxmemory-samples. Abra el archivo /etc/redis/redis.conf usando nano editor:

sudo nano /etc/redis/redis.conf

Busque la configuración de política de memoria máxima y configúrela como desee. Por ejemplo, para configurar la política para que caduquen las claves utilizando el algoritmo utilizado menos recientemente (LRU), actualice la configuración de la siguiente manera:

maxmemory-policy volatile-lru

Ahora busque la configuración de maxmemory-samples y configure la cantidad de muestras que Redis debe verificar para tomar la decisión de desalojo:

maxmemory-samples 5

Configurar TCP Keepalive para Redis

TCP keepalive puede ayudar a detectar y cerrar conexiones inactivas, liberando recursos. Para habilitar TCP keepalive, busque la configuración tcp-keepalive en el archivo /etc/redis/redis.conf:

tcp-keepalive 300

En este ejemplo, configuramos el intervalo de actividad en 300 segundos. Ajuste el valor según sus necesidades.

Configurar la supervisión de registros lentos para Redis

Los registros lentos pueden ayudar a identificar problemas de rendimiento al registrar consultas que tardan más que una cantidad de tiempo específica. Para configurar registros lentos, busque las configuraciones slowlog-log-slower-than y slowlog-max-len en el archivo /etc/redis/redis.conf:

slowlog-log-slower-than 10000
slowlog-max-len 128

En este ejemplo, configuramos el umbral de registro lento en 10 000 microsegundos (10 milisegundos) y limitamos el registro lento a las 128 entradas más recientes. Ajuste estos valores según sus necesidades.

Configurar notificaciones de eventos de Redis para Redis

Redis puede generar notificaciones para eventos específicos, lo que puede resultar útil para el seguimiento y la depuración. Para habilitar las notificaciones de eventos, busque la configuración notify-keyspace-events en el archivo /etc/redis/redis.conf:

notify-keyspace-events ExA

En este ejemplo, configuramos Redis para enviar notificaciones sobre claves caducadas y desalojadas. La documentación oficial de Redis proporciona más información sobre las notificaciones de eventos y las opciones disponibles.

Configurar el nivel de registro de Redis para Redis

Ajustar el nivel de registro de Redis puede ayudarle a recopilar la cantidad adecuada de información para fines de resolución de problemas y monitoreo. Para configurar el nivel de registro, busque la configuración del nivel de registro en el archivo /etc/redis/redis.conf:

loglevel notice

En este ejemplo, configuramos el nivel de registro en "aviso", que es el nivel predeterminado. Puede elegir entre las siguientes opciones: depuración, detallado, aviso y advertencia. Ajuste el nivel de registro según sus requisitos.

Después de configurar las opciones deseadas, guarde los cambios y reinicie Redis:

sudo systemctl restart redis-server

Conclusión

Con Redis instalado en su sistema Ubuntu, obtiene acceso a una poderosa herramienta para administrar datos en memoria, brindando soluciones de almacenamiento rápidas y eficientes para una variedad de aplicaciones. Ya sea que opte por la estabilidad del repositorio predeterminado de Ubuntu o las funciones de vanguardia del repositorio espejo de Redis APT, ambos métodos garantizan una instalación sólida. Actualizar periódicamente su configuración de Redis, especialmente cuando utiliza el espejo APT, mantendrá su sistema funcionando sin problemas con las últimas funciones y mejoras de seguridad. Disfrute de la velocidad y flexibilidad que Redis aporta a su entorno Ubuntu.

Joshua James
Sígueme
Últimas entradas de Joshua James (ver todo)

Deja un comentario