En este tutorial vamos a aprender cómo instalar Redis 6 en Fedora 34.
Contenido relacionado
- Cómo instalar y configurar Redis 6 en FreeBSD 13
- Cómo instalar y configurar Redis 6 en OpenSUSE Leap 15.3
- Cómo ejecutar Redis 6 con Docker y Docker-Compose
- Cómo instalar y configurar Postgres 14 en Fedora 34
- Cosas que hacer en una nueva instalación de escritorio de Fedora 34
Requisitos
Para seguir, asegúrese de tener:
- Un servidor Fedora 34 actualizado
- Acceso a Internet
- Acceso raíz al servidor o usuario con acceso sudo
Tabla de contenido
- Actualizar servidor Fedora 34
- Instalación de Redis
- Configuración de Redis
- Conectar y realizar operaciones básicas en Redis
- Ejecución de Benchmark de Redis
1. Actualizar servidor Fedora 34
Antes de continuar, asegúrese de que el servidor esté actualizado con este comando:
sudo dnf -y update
También asegurémonos de que vim esté instalado usando este comando, ya que lo usaremos más adelante:
sudo dnf install -y vim
2. Instalando redis
Redis está disponible en los repositorios predeterminados de Fedora 34. Para instalarlo, use este comando:
sudo dnf install redis
Use este comando para confirmar que el paquete redis está instalado:
# rpm -qi redis
Name : redis
Version : 6.2.6
Release : 1.fc34
Architecture: x86_64
Install Date: Thu 28 Oct 2021 07:22:18 PM UTC
Group : Unspecified
Size : 4939623
License : BSD and MIT
Signature : RSA/SHA256, Mon 04 Oct 2021 02:11:42 PM UTC, Key ID 1161ae6945719a39
Source RPM : redis-6.2.6-1.fc34.src.rpm
Build Date : Mon 04 Oct 2021 02:04:48 PM UTC
Build Host : buildvm-x86-25.iad2.fedoraproject.org
Packager : Fedora Project
Vendor : Fedora Project
URL : https://redis.io
Bug URL : https://bugz.fedoraproject.org/redis
Summary : A persistent key-value database
Description :
Redis is an advanced key-value store. It is often referred to as a data
structure server since keys can contain strings, hashes, lists, sets and
sorted sets.
You can run atomic operations on these types, like appending to a string;
incrementing the value in a hash; pushing to a list; computing set
intersection, union and difference; or getting the member with highest
ranking in a sorted set.
In order to achieve its outstanding performance, Redis works with an
in-memory dataset. Depending on your use case, you can persist it either
by dumping the dataset to disk every once in a while, or by appending
each command to a log.
Redis also supports trivial-to-setup master-slave replication, with very
fast non-blocking first synchronization, auto-reconnection on net split
and so forth.
Other features include Transactions, Pub/Sub, Lua scripting, Keys with a
limited time-to-live, and configuration settings to make Redis behave like
a cache.
You can use Redis from most programming languages also.
Ahora que el servicio ha sido instalado, comencemos con este comando:
sudo systemctl start redis
Habilite el servicio para que se inicie al arrancar:
$ sudo systemctl enable redis
Created symlink /etc/systemd/system/multi-user.target.wants/redis.service → /usr/lib/systemd/system/redis.service.
Después de que se inicie el servicio, use este comando para verificar el estado del servicio:
$ sudo systemctl status redis
● redis.service - Redis persistent key-value database
Loaded: loaded (/usr/lib/systemd/system/redis.service; disabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/redis.service.d
└─limit.conf
Active: active (running) since Thu 2021-10-28 19:34:31 UTC; 9s ago
Main PID: 27610 (redis-server)
Status: "Ready to accept connections"
Tasks: 5 (limit: 4603)
Memory: 2.1M
CPU: 22ms
CGroup: /system.slice/redis.service
└─27610 /usr/bin/redis-server 127.0.0.1:6379
Oct 28 19:34:31 ip-10-2-40-182.us-west-2.compute.internal systemd[1]: Starting Redis persistent key-value database...
Oct 28 19:34:31 ip-10-2-40-182.us-west-2.compute.internal systemd[1]: Started Redis persistent key-value database.
El Active: active (running)
significa que el servicio se ha iniciado correctamente.
3. Configuración de Redis
El archivo de configuración de redis se encuentra en esta ruta /etc/redis/redis.conf
. En esta sección, actualizaremos el archivo de configuración de redis para permitir el acceso remoto, establecer una contraseña de autenticación, agregar un archivo pid y Establecer almacenamiento persistente para recuperación.
Edite el archivo de configuración de redis usando esto:
sudo vim /etc/redis/redis.conf
Para permitir el acceso remoto a la instancia de redis, vincule redis a 0.0.0.0 usando esta línea:
bind 0.0.0.0
Para establecer una contraseña en redis, use esto:
requirepass j2GfJuLFR8
Para agregar un archivo pid a redis:
pidfile /var/run/redis/redis-server.pid
Configure el almacenamiento persistente para la recuperación cambiando el valor appendonly a sí
appendonly yes
appendfilename "appendonly.aof"
Reinicie el servicio Redis para aplicar los cambios:
sudo systemctl restart redis
4. Conexión y realización de operaciones básicas en Redis
Si tiene un servicio de firewalld activo, permita el puerto 6379
sudo firewall-cmd --add-port=6379/tcp --permanent
sudo firewall-cmd --reload
Conexión a redis localmente:
$ redis-cli
Para autenticar:
127.0.0.1:6379> auth j2GfJuLFR8
OK
Deberías recibir OK
en la salida. Si ingresa una contraseña incorrecta, la autenticación debería fallar.
Verifique la información de redis.
127.0.0.1:6379> INFO
Esto generará una larga lista de datos. Puede limitar la salida pasando Sección como argumento. Por ejemplo
127.0.0.1:6379> INFO Server # Server redis_version:6.2.6 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:db74a1b227e296fe redis_mode:standalone os:Linux 5.11.12-300.fc34.x86_64 x86_64 arch_bits:64 multiplexing_api:epoll atomicvar_api:atomic-builtin gcc_version:11.2.1 process_id:27781 process_supervised:systemd run_id:9ba7b7785f0905ecc4dc3a6ecda2ffe5beaec53a tcp_port:6379 server_time_usec:1635451060104781 uptime_in_seconds:241 uptime_in_days:0 hz:10 configured_hz:10 lru_clock:8061108 executable:/usr/bin/redis-server config_file:/etc/redis/redis.conf io_threads_active:0
5. Realización de evaluación comparativa de Redis
Ejecute el punto de referencia con 15
conexiones paralelas, por un total de 10k
solicitudes, contra redes locales para probar su rendimiento.
$ redis-benchmark -h 127.0.0.1 -p 6379 -n 10000 -c 15 -a j2GfJuLFR8
====== PING_INLINE ======
10000 requests completed in 0.23 seconds
15 parallel clients
3 bytes payload
keep alive: 1
host configuration "save": 3600 1 300 100 60 10000
host configuration "appendonly": no
multi-thread: no
Latency by percentile distribution:
0.000% <= 0.055 milliseconds (cumulative count 2)
50.000% <= 0.127 milliseconds (cumulative count 5509)
75.000% <= 0.159 milliseconds (cumulative count 7514)
..........
99.940% <= 0.503 milliseconds (cumulative count 9994)
100.000% <= 0.607 milliseconds (cumulative count 10000)
Summary:
throughput summary: 74074.07 requests per second
latency summary (msec):
avg min p50 p95 p99 max
0.159 0.072 0.151 0.239 0.279 0.567
Para más opciones y ejemplos, use:
$ redis-benchmark --help
Conclusión
Hemos logrado instalar y configurar Redis 6 en Fedora 34.