Cómo instalar el servidor Redis en CentOS 8 / RHEL 8

redis es un acrónimo de Rser emocionado Dservidor de iccionario. Es una base de datos / almacén de clave-valor de código abierto, en memoria y persistente que almacena datos como pares de clave-valor y también se duplica como un intermediario de mensajes. Redis admite una amplia gama de estructuras de datos, incluidas conjuntos, liza, hachís, instrumentos de cuerda, HyperLogRegistros y muchos más

¿Qué es un par clave-valor?

Un par clave-valor es un conjunto o par de dos elementos vinculados. Considera lo siguiente:

coche = mercedes

En este caso, el coche es la clave y Mercedes es el valor. En una base de datos Redis, esta información se puede escribir usando la sintaxis:

SET “clave1” “valor1”

Nuestro ejemplo se traducirá a:

SET “coche” “Mercedes”

Beneficios de usar Redis

  • A diferencia de las bases de datos relacionales como MySQL, Redis es una base de datos NoSQL que almacena datos como un par de valores clave. Esto lo hace simple y flexible ya que no hay necesidad de crear tablas, columnas y filas que estén asociadas con bases de datos relacionales. Alimentar datos a Redis es simple y directo.
  • Uno de los usos aparentes de Redis es su uso como sistema de almacenamiento en caché. Mientras lo hace, también ofrece persistencia a los datos que se escriben en él.
  • La arquitectura en memoria de Redis lo hace súper rápido en almacenamiento y recuperación de datos.
  • El sistema de caché redis es bastante robusto y tiene la capacidad de soportar fallas e interrupciones.
  • Redis se envía con una función de replicación maestro-esclavo. Cuando se realizan cambios en el nodo maestro, se replican automáticamente en los nodos esclavos para garantizar una alta disponibilidad.
  • Redis tiene la capacidad de almacenar grandes pares de clave y valor de hasta 512 MB.
  • Dada su pequeña huella, Redis se puede instalar en dispositivos IoT como Raspberry Pi y Arduino para admitir aplicaciones IoT.
  • Redis es una base de datos multiplataforma y un sistema de almacenamiento en caché que se puede instalar en Windows, Mac y Linux.

Casos de uso de Redis

Con los beneficios descritos anteriormente, Redis se puede utilizar de las siguientes maneras:

  • Análisis de datos estadísticos en tiempo real.
  • Se utiliza para la integración con servicios de AWS, como instancias de CloudTrail, CloudWatch y Amazon EC2.
  • Puede ser una excelente opción para almacenar sitios web en caché.
  • Las plataformas de redes sociales como Instagram usan Redis para almacenar imágenes
  • Redis admite una amplia gama de tipos de datos, como hiperloglogs, hashes y datos geoespaciales.

Ahora veamos cómo puede instalar Redis en CentOS 8 / RHEL 8

Paso 1: actualizar los repositorios del sistema

Inicie sesión en su sistema CentOS 8 / RHEL 8 y actualice los paquetes y repositorios del sistema con el comando:

$ sudo dnf update -y

Paso 2: Instala Redis con dnf

La versión 5.0.x de Redis ahora está incluida en el repositorio de AppStream de CentOS 8 y su instalación es pan comido. Simplemente ejecute el comando:

$ sudo dnf install redis -y

dnf-install-redis-centos8

Una vez instalado, puede verificar la versión de Redis instalada ejecutando el comando:

[[email protected] ~]$ rpm -q redis 
redis-5.0.3-1.module_el8.0.0+6+ab019c03.x86_64 
[[email protected] ~]$ 

De la salida, está claro que hemos instalado la versión 5.0.3 de Redis. Para recuperar más información sobre Redis, como la versión, la arquitectura, la licencia y una breve descripción, ejecute el comando:

$ rpm -qi redis

redis-rpm-info-comando

Para iniciar y habilitar el servicio Redis, ejecute los siguientes comandos systemctl:

$ sudo systemctl start redis 
$ sudo systemctl enable redis

Una vez iniciado, puede verificar su estado ejecutando

$ sudo systemctl status redis

Redis-Servicio-Estado-CentOS

De forma predeterminada, Redis se ejecuta en el puerto 6379. Puede confirmarlo ejecutando el comando netstat:

$ sudo netstat -pnltu | grep redis

netstat-redis-servidor-centos

Paso 3: Configurar Redis para acceso remoto

La instalación predeterminada solo permite conexiones desde el servidor localhost o Redis y bloquea cualquier conexión externa. Vamos a configurar Redis para conexión remota desde una máquina cliente.

Acceda al archivo de configuración como se muestra:

$ sudo vim /etc/redis.conf

Localice el parámetro de vinculación y reemplace 127.0.0.1 con 0.0.0.0

bind 0.0.0.0

Guarde y cierre el archivo de configuración. Para que los cambios surtan efecto, reinicie Redis.

$ sudo systemctl restart redis

Para iniciar sesión en el shell de Redis, ejecute el comando:

$ redis-cli

Intente hacer ping al servidor redis. Debería obtener una respuesta ‘PONG’ como se muestra.

[[email protected] ~]$ redis-cli
127.0.0.1:6379> ping
PONG
127.0.0.1:6379>

Paso 4: asegurar el servidor Redis

Nuestra configuración de Redis permite que cualquier persona acceda al shell y las bases de datos sin autenticación, lo que representa un grave riesgo de seguridad. Para establecer una contraseña, regrese al archivo de configuración /etc/redis.conf

Ubique y descomente el parámetro requirepass y especifique una contraseña segura como se muestra

Secure-redisserver-centos8

Reinicie Redis y regrese al servidor.

$ sudo systemctl restart redis

Si intenta ejecutar cualquier comando antes de autenticarse, se mostrará el error que se muestra a continuación

[[email protected] ~]$ redis-cli
127.0.0.1:6379> ping
(error) NOAUTH Authentication required.
127.0.0.1:6379>

Para autenticarse, escriba ‘auth’ seguido de la contraseña establecida. En nuestro caso esto será:

autenticación [email protected]

A partir de entonces, puede continuar ejecutando sus comandos.

[[email protected] ~]$ redis-cli
127.0.0.1:6379> auth [email protected]
OK
127.0.0.1:6379> ping
PONG
127.0.0.1:6379>

Para salir de redis-cli, escriba exit

Paso 5: Configuración del firewall para redis

Por último, debemos configurar el firewall para permitir conexiones remotas al servidor Redis. Para hacer esto, necesitamos abrir el puerto redis que es 6379.

Entonces, ejecute los comandos a continuación.

$ sudo firewall-cmd --add-port=6379/tcp --permanent
$ sudo firewall-cmd --reload

Para acceder a Redis de forma remota, utilice la siguiente sintaxis.

$ redis-cli -h DIRECCIÓN_IP_REDIS

A continuación, autentíquese y presione ‘INGRESAR

La dirección IP de nuestro servidor Redis es 192.168.1.5 El comando desde otra PC cliente será

$ redis-cli -h 192.168.1.5

A continuación, proporcione la contraseña y presione ‘ENTRAR’

autenticación [email protected]

Remote-Connect-redis-servidor-linux

Arriba confirma que Redis Server se instaló correctamente, pasemos a la siguiente sección.

Cómo realizar Redis Benchmark

Redis viene con una herramienta integrada conocida como redis-benchmark que brinda información sobre las estadísticas de rendimiento del sistema, como la tasa de transferencia de datos, el rendimiento y la latencia, por mencionar algunos.

Algunas de las opciones de comando que puede usar con Redis incluyen

  • -n: Esto define el número de solicitudes a realizar. El valor predeterminado es 100000
  • -c: Define el número de conexiones en paralelo a simular. Por defecto, este valor es 50
  • -p: Este es el puerto Redis que por defecto es 6379
  • -h: se utiliza para definir el host. De forma predeterminada, este valor se establece en localhost (127.0.0.1)
  • -a: se usa para solicitar una contraseña si el servidor necesita autenticación
  • -q: significa modo silencioso. Muestra las solicitudes promedio realizadas por segundo
  • -t: se utiliza para ejecutar una combinación de pruebas
  • -P: se utiliza para canalizar para mejorar el rendimiento.
  • -d: especifica el tamaño de los datos en bytes para los valores GET y SET. De forma predeterminada, esto se establece en 3 bytes

Ejemplos:

Para confirmar el promedio no. de solicitudes que su servidor Redis puede manejar, ejecute el comando:

$ redis-benchmark -q

Redis-Número-solicitud-CentOS

Presta atención a la última línea. Indica que Redis puede manejar 23046 solicitudes por segundo.

Además, puede usar la opción -t para ejecutar un subconjunto de comandos. En el ejemplo a continuación, lo estamos usando para mostrar el número promedio. Solicitudes de comandos SET y GET.

$ redis-benchmark -t set,get -q

[[email protected] ~]$ redis-benchmark -t set,get -q
SET: 26102.84 requests per second
GET: 25555.84 requests per second
[[email protected] ~]$

A partir de la salida, podemos ver que tenemos 26102,84 solicitudes por segundo para el comando SET y 25555,84 solicitudes para el comando GET.

Por defecto, el número de conexiones paralelas es 50. Para especificar un número diferente de conexiones de clientes, digamos 1000, use el parámetro -c como se muestra:

[[email protected] ~]$ redis-benchmark -t set,get -q -c 1000
SET: 21997.36 requests per second
GET: 22119.00 requests per second
[[email protected] ~]$

Como habrás podido observar, el número de solicitudes por segundo se ha reducido debido al aumento del número de conexiones paralelas de 50 a 1000.

Avancemos y establezcamos el número de solicitudes en 1000000

[[email protected] ~]$ redis-benchmark -t  set,get -q -c 1000 -n 1000000
SET: 16660.28 requests per second
GET: 21550.79 requests per second
[[email protected] ~]$

Una vez más, los valores de SET y GET disminuyen debido al aumento en el número de solicitudes desde el valor predeterminado de 100 000 a 1 000 000.

Y esto concluye nuestro tema de hoy. Hemos instalado con éxito el servidor Redis en CentOS 8 y logramos realizar algunas pruebas comparativas en nuestro servidor. Le invitamos a compartir sus opiniones y comentarios.

Leer también : Cómo instalar Memcached (servidor de almacenamiento en caché) en CentOS 8

Entradas relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *