Installation et configuration de Redis sur serveur Debian

Voici deux méthodes pour installer un serveur Redis sur une distribution Debian/Linux. La première méthode utilise les paquets de la distribution Debian. La seconde méthode est basée sur l'installation de Redis à l'aide des sources.

Pré-requis - Difficultés

Ce tutoriel a été testé sur la distribution Stretch Debian (Version 9), il fonctionne sur Debian Buster (version 10). Toutes les lignes de commande s'exécute dans un terminal en mode super-administrateur (root).

Difficulté
Moyen

Méthode 1 : Installation de Redis à l'aide des paquets

Pour installer Redis, nous pouvons utiliser l'installation grâce aux paquets officiels de la distribution Debian. On utilise apt ou aptitude, c'est selon vos habitudes. Pour ma part, j'ai ma préférence pour aptitude.

aptitude install redis-serveur

ou

apt install redis-server

Vous pouvez vérifier si Redis s'est correctement installé en utilisant la ligne de commande suivante :

systemctl status redis

Le système doit vous retourner un résultat ressemblant à ceci :

● redis.service - Redis In-Memory Data Store
   Loaded: loaded (/etc/systemd/system/redis.service; disabled; vendor preset: enabled)
   Active: active (running) since Sat 2019-12-28 23:00:07 CET; 5 days ago
 Main PID: 2335 (redis-server)
    Tasks: 4 (limit: 4915)
   CGroup: /system.slice/redis.service
           └─2335 /usr/local/bin/redis-server 127.0.0.1:6379

Si, comme moi, Redis ne démarre pas, vous pouvez désinstaller les paquets officiels pour effectuer une installation à l'aide des sources officielles.

Installation de Redis à l'aide des sources officielles

Pour commencer, on installe les paquets nécessaires à la compilation des sources :

aptitude -y install wget curl build-essential tcl

L'option -y permet de répondre "oui" à chaque question que posera l'utilitaire d'installation.

Nous créons ensuite un répertoire de travail :

mkdir /root/redis

Puis nous récupérons la dernière version des sources officielles de Redis.

wget http://download.redis.io/redis-stable.tar.gz --output-document /root/redis/redis-stable.tar.gz

Maintenant que nous avons récupérer les sources de Redis, nous allons décompresser l'archive tar.gz.

tar -xvzf /root/redis/redis-stable.tar.gz -C /root/redis

Maintenant, passons aux choses sérieuses, la compilation des sources :

cd /root/redis/redis-stable
make
make install

Nous créons l'utilisateur et le groupe redis:

adduser --system --group --no-create-home redis

Nous modifions l'environnement du serveur pour l'adapté à Redis

echo 1024 > /proc/sys/net/core/somaxconn
echo never > /sys/kernel/mm/transparent_hugepage/enabled
sysctl vm.overcommit_memory=1

Nous créons les répertoires nécessaires au bon fonctionnement de Redis:

mkdir /etc/redis
mkdir /var/redis

Et nous appliquons les droits nécessaires à ces répertoires :

chown redis:redis /var/redis
chmod 770 /var/redis

Maintenant nous copions le fichier de configuration par défaut fournit par les sources

cp /etc/redis/redis-stable/redis.conf /etc/redis/

Configuration de Redis

Nous apportons les modifications au fichier de configuration /etc/redis/redis.conf

/bin/sed -i -r "s|supervised no|supervised systemd|" /etc/redis/redis.conf
/bin/sed -i -r "s|logfile \"\"|logfile \"/var/log/redis.log\"|" /etc/redis/redis.conf
/bin/sed -i -r "s| dir ./|dir /var/redis/|" /etc/redis/redis.conf

Mise en place du service de démarrage

Comme tout services sur Debian, il faut mettre en place le script de "démarrage/arrêt" de Redis.

if [ ! -e /etc/systemd/system/redis.service ]; then
    echo '[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' > /etc/systemd/system/redis.service
fi

et voilà, il suffit de lancer Redis avec la commande :

systemctl start redis

Aller plus loin

D'autres articles sur Redis seront écrits dans les prochaines semaines. Vous pouvez vous inscrire ici si vous voulez être prévenu lors de la sortie du prochain article.

Notes de version

  • [03/01/2020] : Création de l'article
  • [28/01/2020] : Amélioration de la mise en page, liens

Auteurs et sources

Les tutoriels pour Redis sur Debian

Serveur Redis Debian

12/01/2020 00:35 · montuy337513

Autres liens rapides pouvant vous intéresser