Recherche de site Web

Comment installer le serveur Redis dans les systèmes CentOS et Debian


Redis est un magasin de structures de données en mémoire open source, hautes performances et flexible (format clé-valeur), utilisé comme base de données, cache et courtier de messages. Il est écrit en ANSI C et fonctionne sur la plupart, sinon tous les systèmes d'exploitation de type Unix, y compris Linux (recommandé pour le déploiement) sans dépendances externes.

Il est riche en fonctionnalités et prend en charge plusieurs langages de programmation et structures de données, notamment des chaînes, des hachages, des listes, des ensembles, des ensembles triés avec des requêtes de plage, des bitmaps, entre autres.

Fonctionnalités Redis :

  • Prend en charge la plupart des langages de programmation, notamment C, Bash, Python, PHP, Node.js, Perl, Ruby, pour n'en citer que quelques-uns.
  • Possède une réplication inhérente, des scripts Lua, une expulsion LRU, des transactions ainsi que différents niveaux de persistance sur disque.
  • Fournit une haute disponibilité via Redis Sentinel et un partitionnement automatique via Redis Cluster.
  • Prend en charge l'exécution d'opérations atomiques.
  • Il fonctionne avec un ensemble de données en mémoire pour atteindre des performances remarquables.
  • Prend en charge la réplication asynchrone maître-esclave simple à configurer.
  • Prend en charge le basculement automatique.
  • Vous permet d'enregistrer l'ensemble de données sur le disque rarement pendant une période de temps donnée, ou en ajoutant chaque commande à un journal.
  • Permet la désactivation facultative de la persistance.
  • Prend en charge la messagerie de publication/abonnement.
  • Il prend également en charge les transactions MULTI, EXEC, DISCARD et WATCH et bien d'autres.

Exigences:

  1. Un serveur CentOS 7 et un serveur RHEL 7 avec une installation minimale
  2. Un serveur Ubuntu ou un serveur Debian avec une installation minimale
  3. Compilateur GCC et libc

Dans ce didacticiel, nous fournirons des instructions sur la façon d'installer un serveur Redis à partir des sources (qui est la méthode recommandée) sous Linux. Nous montrerons également comment configurer, gérer et sécuriser Redis. Étant donné que Redis sert toutes les données de la mémoire, nous vous suggérons fortement d'utiliser un serveur VPS à haute mémoire avec ce guide.

Étape 1 : Installer le serveur Redis à partir de la source

1. Tout d’abord, installez les dépendances de build requises.

--------------- On CentOS / RHEL / Fedora --------------- 
yum groupinstall "Development Tools"
dnf groupinstall "Development Tools"

--------------- On Debian / Ubuntu --------------- 
sudo apt install build-essential

2. Ensuite, téléchargez et compilez la dernière version stable de Redis à l'aide de l'URL spéciale qui pointe toujours vers la dernière version stable de Redis à l'aide de la commande wget.

wget -c http://download.redis.io/redis-stable.tar.gz
tar -xvzf redis-stable.tar.gz
cd redis-stable
make 
make test
sudo make install

3. Après la compilation Redis, le répertoire src à l'intérieur de la distribution Redis est rempli avec les différents exécutables suivants qui font partie de Redis :

  • redis-server – serveur redis.
  • redis-sentinel – exécutable redis sentinel (surveillance et basculement).
  • redis-cli – un utilitaire CLI pour interagir avec Redis.
  • redis-benchmark – utilisé pour vérifier les performances de Redis.
  • redis-check-aof et redis-check-dump – utiles dans les rares cas de fichiers de données corrompus.

Étape 2 : configurer le serveur Redis sous Linux

4. Ensuite, vous devez configurer Redis pour qu'un environnement de développement soit géré par le système init (systemd pour les besoins de ce didacticiel). . Commencez par créer les répertoires nécessaires pour stocker les fichiers de configuration Redis et vos données :

sudo mkdir /etc/redis
sudo mkdir -p /var/redis/

4. Copiez ensuite le modèle de fichier de configuration Redis fourni dans le répertoire que vous avez créé ci-dessus.

sudo cp redis.conf /etc/redis/

5. Ouvrez maintenant le fichier de configuration et mettez à jour quelques paramètres comme suit.

sudo vi /etc/redis/redis.conf

6. Recherchez ensuite les options suivantes, puis modifiez (ou utilisez) leurs valeurs par défaut en fonction des besoins de votre environnement local.

port  6379				#default port is already 6379. 
daemonize yes				#run as a daemon
supervised systemd			#signal systemd
pidfile /var/run/redis.pid 		#specify pid file
loglevel notice				#server verbosity level
logfile /var/log/redis.log		#log file name
dir  /var/redis/			#redis directory

Étape 3 : Créer un fichier d'unité Redis Systemd

7. Vous devez maintenant créer un fichier d'unité systemd pour redis afin de contrôler le démon, en exécutant la commande suivante.

sudo vi /etc/systemd/system/redis.service

Et ajoutez la configuration ci-dessous :

[Unit]
Description=Redis In-Memory Data Store
After=network.target

[Service]
User=root
Group=root
ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
ExecStop=/usr/local/bin/redis-cli shutdown
Restart=always
Type=forking

[Install]
WantedBy=multi-user.target

Enregistrez et fermez le fichier.

Étape 4 : Gérer et tester le serveur Redis sous Linux

8. Une fois que vous avez effectué toutes les configurations nécessaires, vous pouvez maintenant démarrer le serveur Redis. Pour l'instant, activez-le pour démarrer automatiquement au démarrage du système ; puis affichez son statut comme suit.

sudo systemctl start redis
sudo systemctl enable redis
sudo systemctl status redis

9. Ensuite, testez si l'ensemble de la configuration Redis fonctionne correctement. Pour interagir avec le serveur Redis, utilisez la commande redis-cli. Après vous être connecté au serveur, essayez d'exécuter quelques commandes.

redis-cli
Test connection to server using ping command:
127.0.0.1:6379> ping
Use the echo command to echo a given string:
127.0.0.1:6379> echo "Tecmint is testing Redis"
You can also set a key value using the set command like this:
127.0.0.1:6379> set mykey "Tecmint is testing Redis"
Now view the value of mykey:
127.0.0.1:6379> get mykey

10. Fermez ensuite la connexion avec la commande exit et redémarrez le serveur Redis. Ensuite, vérifiez si ma clé est toujours stockée sur le serveur comme indiqué ci-dessous :

127.0.0.1:6379> exit
sudo systemctl restart redis
redis-cli
127.0.0.1:6379> get mykey

11. Pour supprimer une clé, utilisez la commande delete comme suit :

127.0.0.1:6379> del mykey
127.0.0.1:6379> get mykey

Étape 5 : Sécuriser le serveur Redis sous Linux

12. Cette section est destinée aux utilisateurs qui ont l'intention d'utiliser un serveur Redis connecté à un réseau externe comme Internet.

Important : exposer Redis à Internet sans aucune sécurité le rend extrêmement facile à exploiter ; sécurisez donc le serveur Redis comme suit :

  • bloquer les connexions au port redis dans le système pare-feu
  • définir la directive bind sur l'interface de bouclage : 127.0.0.1
  • définissez l'option requirepass afin que les clients doivent s'authentifier à l'aide de la commande AUTH.
  • configurez le tunneling SSL pour chiffrer le trafic entre les serveurs Redis et les clients Redis.

Pour plus d'informations sur l'utilisation, exécutez la commande ci-dessous :

redis-cli -h

Vous pouvez trouver plus de commandes de serveur et apprendre à utiliser Redis dans votre application sur la page d'accueil de Redis : https://redis.io/

Dans ce tutoriel, nous avons montré comment installer, configurer, gérer et sécuriser Redis sous Linux. Pour partager vos réflexions, utilisez le formulaire de commentaires ci-dessous.