Dans ce tutoriel, nous allons apprendre à installer Redis 6 sur Rocky Linux/Centos 8.
Contenu associé
- Comment installer et configurer Redis 6 sur Fedora 34
- Comment exécuter Redis 6 avec Docker et Docker-Compose
- Comment installer et configurer Postgres 14 sur Fedora 34
- Choses à faire lors d'une nouvelle installation de bureau Fedora 34
Prérequis
Pour suivre, assurez-vous d'avoir :
- Un serveur Rocky Linux/Centos 8 mis à jour
- Accès à Internet
- Accès root au serveur ou utilisateur avec accès sudo
Table des matières
- Mettre à jour le serveur Rocky Linux/Centos 8
- Installer Redis
- Configurer Redis
- Connexion et exécution d'opérations de base dans Redis
- Exécution de l'analyse comparative Redis
1. Mettre à jour le serveur Rocky Linux/Centos 8
Avant de continuer, assurez-vous que le serveur est mis à jour à l'aide de cette commande :
sudo dnf -y update
Assurons-nous également que vim est installé à l'aide de cette commande puisque nous l'utiliserons plus tard :
sudo dnf install -y vim
2. Installation de redis
Redis 6 n'est pas disponible sur les serveurs Rocky Linux/Centos 8 par défaut. Nous utiliserons la version remi pour installer le module Redis qui nous permettra d'installer redis 6.
Activez le dépôt Remi à l'aide de cette commande :
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm -y
Ensuite, répertoriez redis en utilisant ceci :
$ sudo dnf module list redis
Last metadata expiration check: 0:02:05 ago on Fri 29 Oct 2021 08:08:41 PM UTC.
Rocky Linux 8 - AppStream
Name Stream Profiles Summary
redis 5 [d] common [d] Redis persistent key-value database
redis 6 common [d] Redis persistent key-value database
Remi's Modular repository for Enterprise Linux 8 - x86_64
Name Stream Profiles Summary
redis remi-5.0 common [d] Redis persistent key-value database
redis remi-6.0 common [d] Redis persistent key-value database
redis remi-6.2 common [d] Redis persistent key-value database
Activer redis 6.2
sudo dnf module enable redis:remi-6.2 -y
Installer redis
sudo dnf install redis
Utilisez cette commande pour confirmer l'installation du package Redis :
$ rpm -qi redis
Name : redis
Version : 6.2.6
Release : 1.el8.remi
Architecture: x86_64
Install Date: Fri 29 Oct 2021 08:14:06 PM UTC
Group : Applications/Databases
Size : 4522111
License : BSD
Signature : RSA/SHA256, Mon 04 Oct 2021 12:34:26 PM UTC, Key ID 555097595f11735a
Source RPM : redis-6.2.6-1.el8.remi.src.rpm
Build Date : Mon 04 Oct 2021 12:28:08 PM UTC
Build Host : builder.remirepo.net
Relocations : (not relocatable)
Packager : Remi Collet
Vendor : Remi's RPM repository <https://rpms.remirepo.net/>
URL : http://redis.io
Bug URL : https://forum.remirepo.net/
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.
Maintenant que le service est installé, démarrons-le avec cette commande :
sudo systemctl start redis
Activez le service pour qu'il démarre au démarrage :
$ sudo systemctl enable redis
Created symlink /etc/systemd/system/multi-user.target.wants/redis.service → /usr/lib/systemd/system/redis.service.
Une fois le service démarré, utilisez cette commande pour vérifier l'état du service :
$ sudo systemctl status redis
● redis.service - Redis persistent key-value database
Loaded: loaded (/usr/lib/systemd/system/redis.service; enabled; vendor preset: disabled)
Drop-In: /etc/systemd/system/redis.service.d
└─limit.conf
Active: active (running) since Fri 2021-10-29 20:16:17 UTC; 25s ago
Main PID: 62643 (redis-server)
Status: "Ready to accept connections"
Tasks: 5 (limit: 23168)
Memory: 7.3M
CGroup: /system.slice/redis.service
└─62643 /usr/bin/redis-server 127.0.0.1:6379
Oct 29 20:16:17 ip-10-2-40-54.us-west-2.compute.internal systemd[1]: Starting Redis persistent key-v>
Oct 29 20:16:17 ip-10-2-40-54.us-west-2.compute.internal systemd[1]: Started Redis persistent key-va>
Le Active: active (running)
signifie que le service a été démarré avec succès.
3. Configuration de Redis
Le fichier de configuration Redis se trouve dans ce chemin /etc/redis/redis.conf
. Dans cette section, nous allons mettre à jour le fichier de configuration Redis pour autoriser l'accès à distance, définir un mot de passe d'authentification, ajouter un fichier pid et définir le magasin persistant pour la récupération.
Modifiez le fichier de configuration Redis en utilisant ceci :
sudo vim /etc/redis/redis.conf
Pour autoriser l'accès à distance à l'instance redis, liez redis à 0.0.0.0 à l'aide de cette ligne :
bind 0.0.0.0
Pour définir un mot de passe dans redis, utilisez ceci :
requirepass j2GfJuLFR8
Pour ajouter un fichier pid à redis :
pidfile /var/run/redis/redis-server.pid
Définissez le magasin persistant pour la récupération en modifiant la valeur appendonly sur oui
appendonly yes
appendfilename "appendonly.aof"
Redémarrez le service Redis pour appliquer les modifications :
sudo systemctl restart redis
4. Connexion et exécution d'opérations de base dans Redis
Si vous avez un service de pare-feu actif, autorisez le port 6379
sudo firewall-cmd --add-port=6379/tcp --permanent
sudo firewall-cmd --reload
Connexion locale à redis :
$ redis-cli
Pour s'authentifier :
127.0.0.1:6379> auth j2GfJuLFR8
OK
Vous devriez recevoir OK
dans la sortie. Si vous entrez un mot de passe erroné, l'authentification devrait échouer.
Vérifiez les informations redis.
127.0.0.1:6379> INFO
Cela produira une longue liste de données. Vous pouvez limiter la sortie en passant Section comme argument. Par exemple
127.0.0.1:6379> INFO Server # Server redis_version:6.2.6 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:b0cb03c693a4c6cc redis_mode:standalone os:Linux 4.18.0-305.3.1.el8_4.x86_64 x86_64 arch_bits:64 multiplexing_api:epoll atomicvar_api:c11-builtin gcc_version:8.4.1 process_id:62643 process_supervised:systemd run_id:668853b6d043e64d7af95ab586c9aca9d6b8f49a tcp_port:6379 server_time_usec:1635538653706020 uptime_in_seconds:76 uptime_in_days:0 hz:10 configured_hz:10 lru_clock:8148701 executable:/usr/bin/redis-server config_file:/etc/redis/redis.conf io_threads_active:0
5. Effectuer une analyse comparative Redis
Exécutez le benchmark avec 15
connexions parallèles, pour un total de 10k
requêtes, contre redis local pour tester ses performances.
$ 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
Pour plus d'options et d'exemples, utilisez :
$ redis-benchmark --help
Conclusion
Nous avons réussi à installer et à configurer Redis 6 dans Rocky Linux/Centos 8.