Instalar un servidor Redis en Ubuntu, Debian y derivados.
Redis es un almacén de estructura de datos en memoria cache de código abierto, utilizado como servidor de base de datos, caché y agente de mensajes. Admite varias estructuras de datos como por ejemplo, cadenas, hashes, listas, conjuntos, y muchas más.
Implantar tu propio servidor Redis es saltar a un nivel superior, ademas de ofrecer un rendimiento excelente también nos proporciona una alta disponibilidad con Redis Sentinel, monitoreo, notificaciones failover, e incluso el particionado automático de varios nodos.
En este articulo no nos limitaremos a instalar Redis en un servidor que contiene nuestros sitios webs, lo que vamos a realizar es montar un servidor exclusivo para Redis, y que admita las conexiones entrantes de otras maquinas.
Instalar un servidor Redis en Ubuntu
Esta herramienta viene en los repositorios de la mayoría de distribuciones linux, así que directamente actualizamos e instalamos Redis.
sudo apt update sudo apt install redis-server
Una vez instalado, lo iniciamos y habilitamos que arranque con el sistema.
sudo systemctl start redis-server sudo systemctl enable redis-server
Verificamos su funcionamiento.
sudo systemctl status redis-server
ejemplo de salida correcta…
redis-server.service – Advanced key-value store
Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2019-12-04 19:02:30 CST; 15s ago
Docs: http://redis.io/documentation,
man:redis-server(1)
Main PID: 26589 (redis-server)
Tasks: 4 (limit: 4674)
CGroup: /system.slice/redis-server.service
└─26589 /usr/bin/redis-server 127.0.0.1:6379
Configurar un servidor Redis
Ahora que lo tenemos instalado y verificado, sigue los pasos que te indico para configurar el inicio de sesión remoto y el firewall de Ubuntu.
Como ya comentamos anteriormente, de forma predeterminada Redis no admite el acceso desde una ubicación remota (un servidor, cliente, etc…). El acceso está restringido para su uso exclusivo en el host local, donde instalaste la aplicación (127.0.0.1).
Si tus aplicaciones o sitios web están instalados en el mismo servidor que Redis Server, no necesitas acceso remoto para nada. Si tus requerimientos son superiores debes montar un servidor exclusivo para Redis, sigue los pasos que vemos a continuación para permitir el acceso remoto.
Abrimos el archivo de configuración.
sudo nano /etc/redis/redis.conf
Busca la linea siguiente:
# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES # JUST COMMENT THE FOLLOWING LINE. # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ bind 127.0.0.1 ::1
Ahora modifica la linea «bind 127.0.0.1 ::1», tal como te indico.
# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES # JUST COMMENT THE FOLLOWING LINE. # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ bind 0.0.0.0 ::1
Guarda el archivo y cierra el editor.
Reinicia Redis.
sudo systemctl restart redis-server
Por defecto Redis utiliza el puerto «6379», te recomiendo que verifiques si escucha o no.
ss -an | grep 6379
ejemplo de salida…
tcp LISTEN 0 128 0.0.0.0:6379 0.0.0.0:*
tcp LISTEN 0 128 [::1]:6379 [::]:*
Si estas ejecutando el firewall UFW puedes conceder permisos a una ip.
sudo ufw allow proto tcp from 192.168.0.56 to any port 6379
Tal vez te interese conceder permisos a una subnet.
sudo ufw allow proto tcp from 192.168.0.0/24 to any port 6379
Una vez concluido todo el proceso te recomiendo que reinicies tu servidor.
reboot
Listo!!!.
Espero que este articulo te sea de utilidad, puedes ayudarnos a mantener el servidor con una donación (paypal), o también colaborar con el simple gesto de compartir nuestros artículos en tu sitio web, blog, foro o redes sociales.