Redis es una herramienta para agilizar el tiempo de respuesta de un sitio web cuando se está trabajando con sitios con muchas visitas. Redis es una base de datos en memoria un tanto particular y aquí vamos a ver como instalar Redis en Ubuntu 16.04.
Como instalar Redis en Ubuntu 16.04
Como lo dice en la definición de wikipedia, Redis es un motor de base de datos en memoria, basado en el almacenamiento en tablas de hashes (que tienen una relación clave/valor) pero que puede ser usada como una base de datos durable o persistente lo que lo hacer bastante interesante.
Hay dos formas de Instalar Redis en Ubuntu Server 16.04 o en la versión de escritorio si estas probando, si lo deseas puedes instalarlo desde los repositorios de Ubuntu o puedes hacer una instalación manual desde el código fuente para tener las versión más actualizada.
Instalar Redis desde los Repositorios de Ubuntu
Para instalar Redis desdes los repositorios no necesitas seguir una gran cantidad de pasos, en realidad es bastante sencillo y rápido ya que los paquetes entregan un entorno preconfigurado de propósito general que cubrirá en general las necesidades de cualquier proyecto.
Para instalar Redes en Ubuntu 16.04 desde los repositorios solo necesitas hacer una actualización de la lista de paquetes e instalar este servicio. Puedes hacerlo ejecutando estos comandos:
sudo apt update sudo apt install redis-server
Luego se debe configurar para que se inicie el servicio al arrancar el sistema
sudo systemctl enable redis-server
Ahora puedes verificar que el servicio funciona, la forma de hacerlo está al final del post.
Instalarla versión mas reciente Redis desde el código fuente en Ubuntu
Hacer la instalación desde el código fuente puede tener varias ventajas, una de ellas es que se puede tener más control sobre la configuración de este servicio. Para realizar la instalación se debe descargar los archivos necesario y también se debe satisfacer algunos requisitos que puedes cumplir al instalar los paquetes built-essential y tcl
sudo apt-get install build-essential tcl
Descargar Redis Estable
Para descargar la mas reciente versión de Redis solo hay que acceder a la URL de Descarga de la versión estable que es: http://download.redis.io/redis-stable.tar.gz y puedes descargarla con el comando curl.
cd /tmp curl -O http://download.redis.io/redis-stable.tar.gz
Luego solo tienes que descomprimir el archivo y acceder al directorio redis-estable
tar xzvf redis-stable.tar.gz cd redis-stable
Compilar Redis desde los archivos fuentes.
Compilar Redis desde los archivos fuente no es tan complicado, en general se tiene que hacer 3 comandos para esta tarea y aquí te los describo. Primero debes ejecutar make estando dentro del directorio redis-stable
make
Luego tienes que hacer una verificación de la configuración que ha realizado make.
make test
Si todo funciona bien y no te muestra errores entonces puedes instalar el software así:
sudo make install
Configurar Redis en Ubuntu 16.04
Para configurar Redis se debe copiar el archivo redis.conf, para esto, primero crearemos el directorio.
sudo mkdir /etc/redis
Ahora copiaremos el archivo mencionada a esta ubicación
sudo cp /tmp/redis-stable/redis.conf /etc/redis
Ahora es necesario modificar este archivo, localiza a lo largo del texto los encabezados que se muestra y configura la linea que se indica al final de cada uno
sudo nano /etc/redis/redis.conf
Este es el primer bloque de texto que se refiere a como interactua Redis con el sistema, como es un servidor Ubuntu 16.04 se debe indicar systemd como se muestra en la ultima linea de este bloque.
# If you run Redis from upstart or systemd, Redis can interact with your
# supervision tree. Options:
# supervised no - no supervision interaction
# supervised upstart - signal upstart by putting Redis into SIGSTOP mode
# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
# supervised auto - detect upstart or systemd method based on
# UPSTART_JOB or NOTIFY_SOCKET environment variables
# Note: these supervision methods only signal "process is ready."
# They do not enable continuous liveness pings back to your supervisor.
supervised systemd
El otro bloque se refiere a un directorio donde se van a almacenar los archivos de la base de datos. Este no debe ser accesible por otros usuarios o desde internet. Para esto se ha seleccionado el directorio /var/lib/redis
# The working directory.
#
# The DB will be written inside this directory, with the filename specified
# above using the 'dbfilename' configuration directive.
#
# The Append Only File will also be created inside this directory.
#
# Note that you must specify a directory here, not a file name.
dir /var/lib/redis
Asegúrate de guardar los cambios al momento de salir del editor nano.
Crear el archivo unit de Redis para systemd
El archivo unit sirve para que el sistema init pueda gestionar el proceso de Redis. Para crear este archivo debes usar el comando nano para editar este archivo y al grabarlo se creará. Utiliza este comando:
sudo nano /etc/systemd/system/redis.service
Dentro del archivo debes ingresar el texto siguiente:
[Unit] Description=Redis In-Memory Data Store After=network.target [Service] User=redis Group=redis ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf ExecStop=/usr/local/bin/redis-cli shutdown Restart=always [Install] WantedBy=multi-user.target
Debes grabar los cambios en este archivo para que se pueda inicializar el servicio cuando arranque el sistema y que se pueda gestionar con el comando systemctl.
Crear el usuario, grupo y directorio de Redis
Ahora debes crear los elementos para que pueda operar lo que has configurado, uno de esos elementos es el directorio que se configuró en el archivo /etc/redis/redis.conf en la variable dir. Puedes crear ese directorio con el siguiente comando:
sudo mkdir /var/lib/redis
El siguiente paso es crear un usuario para redis que no directorio home.
sudo adduser --system --group --no-create-home redis
Y debes asignar permisos y asignar como propietario del directorio /var/lib/redis al usuario redis.
sudo chown redis:redis /var/lib/redis sudo chmod 770 /var/lib/redis
Ahora podrás probar el servicio y validar que funciona todo lo que has configurado.
Iniciar el servicio Redis y probar que funciona
Para iniciar el servicio redis en tu servidor puedes utilizar el comando systemctl.
sudo systemctl start redis
Puedes verificar que está funcionando al verificar el estado del servicio con el parámetro status.
sudo systemctl status redis
Este comando te debe mostrar una salida parecida a esta:
●redis.service - Redis In-Memory Data Store Loaded: loaded (/etc/systemd/system/redis.service; disabled; vendor preset: enabled) Active: active (running) since vie 2016-12-23 10:39:59 CST; 2min 30s ago Main PID: 11809 (redis-server) CGroup: /system.slice/redis.service └─11809 /usr/local/bin/redis-server 127.0.0.1:6379
Para probar que el servicio de Redis está funcionando puedes hacer la siguiente prueba:
redis-cli
Y se abrirá una interfaz de texto de Redis que podrás identificar por un promt que se parece a est0: «127.0.0.1:6379>». Ahí podrás crear un hash y almacenarlo en memoria para la prueba.
set test "It's working!"
Al solicitar el valor del hash «test» te deberá regresar el texto que se almacenó en el.
get test
Al ejecutar el comando anterior en el promt de Redis debes obtener una salida de texto parecida a esta:
127.0.0.1:6379> get test "It's working!"
Si ves el texto anterior es que Redis está funcionando en tu servidor y la instalación.
Conclusión
Como puedes ver Redis es un servicio que puede ser instalado en Ubuntu Server 16.04 tanto de forma sencilla y práctica por medio de los repositorios o puede ser compilada y configurada según tus necesidades. En el segundo de los casos hemos visto un configuración general pero que puede servir de base para una configuración mas a detalle.
Espero que este post te sea de ayuda y no olvides que cualquier aporte o mejora al post es bienvenida, dejarme tus comentarios abajo.
By Bitacoras.com 12/23/2016 - 11:24 am
Información Bitacoras.com
Valora en Bitacoras.com: Redis es una herramienta para agilizar el tiempo de respuesta de un sitio web cuando se está trabajando con sitios con muchas visitas. Redis es una base de datos en memoria un tanto particular y aquí vamos a ver como … Co…
By Instalar redis en debian | SER-LIBRE 07/18/2017 - 8:00 am
[…] Fuente: helloit.es solvetic.com webtutoriales.com comoinstalarlinux.com […]