TL;DR — Résumé Rapide

Valkey est le fork open source de Redis par la Linux Foundation. Installez-le, migrez depuis Redis sans perte de données et configurez clusters et Sentinel.

Valkey est le fork open source de Redis sous la Linux Foundation, créé après le changement de licence de Redis Ltd en mars 2024. Si vous exploitez Redis en production et souhaitez rester sur un magasin clé-valeur véritablement open source avec une gouvernance communautaire, ce guide couvre l’installation, la migration depuis Redis sans perte de données, et l’exploitation des clusters et de Sentinel.

Pourquoi Valkey Existe

Redis était sous licence BSD de 2009 jusqu’au début 2024. Le 20 mars 2024, Redis Ltd a relicencié Redis sous un modèle dual SSPL/RSAL — aucune de ces licences n’est approuvée par l’OSI, ce qui signifie que Redis n’est plus open source au sens standard. Les fournisseurs cloud et les contributeurs ont forké la dernière version BSD (7.2.4) en quelques jours.

La Linux Foundation a accepté le fork comme Valkey en avril 2024, soutenu par Amazon Web Services, Google Cloud, Oracle, Ericsson, Snap et de nombreux contributeurs individuels.

Prérequis

  • Serveur Linux avec Ubuntu 22.04+, Debian 12+, RHEL 9+, ou toute distro moderne.
  • Installation Redis 6.x ou 7.x existante (si migration).
  • Accès sudo ou root.
  • Docker (optionnel, pour la voie conteneur).

Installation de Valkey

apt (Debian/Ubuntu)

curl -fsSL https://packages.valkey.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/valkey.gpg
echo "deb [signed-by=/usr/share/keyrings/valkey.gpg] https://packages.valkey.io/apt stable main" \
  | sudo tee /etc/apt/sources.list.d/valkey.list
sudo apt update && sudo apt install -y valkey

dnf (RHEL/Fedora/Rocky Linux)

sudo dnf install -y https://packages.valkey.io/rpm/valkey-release-latest.rpm
sudo dnf install -y valkey

Docker

docker run -d \
  --name valkey \
  -p 6379:6379 \
  -v valkey-data:/data \
  valkey/valkey:latest valkey-server --save 60 1 --loglevel warning

Migration de Redis vers Valkey

Valkey lit directement les fichiers RDB et AOF de Redis — aucune conversion n’est requise.

Étape 1 : Sauvegarder les Données Redis

redis-cli SAVE
sudo cp -r /var/lib/redis /var/lib/redis-backup

Étape 2 : Arrêter Redis

sudo systemctl stop redis-server
sudo systemctl disable redis-server

Étape 3 : Configurer Valkey

sudo cp /etc/redis/redis.conf /etc/valkey/valkey.conf
sudo sed -i 's|^dir .*|dir /var/lib/redis|' /etc/valkey/valkey.conf

valkey.conf utilise une syntaxe identique à redis.conf. Chaque directive — bind, requirepass, maxmemory, politiques d’éviction, TLS, RDB, AOF — fonctionne sans modification.

Étape 4 : Démarrer Valkey et Vérifier

sudo systemctl enable valkey-server
sudo systemctl start valkey-server
valkey-cli PING          # → PONG
valkey-cli DBSIZE        # vérifier le nombre de clés

Étape 5 : Mettre à Jour les Chaînes de Connexion

Changez host: redis en host: valkey (ou le nouvel IP/hostname). Aucun autre changement de code n’est nécessaire.


Référence de Configuration

DirectiveExempleObjectif
bindbind 127.0.0.1 ::1Adresses d’écoute
requirepassrequirepass s3cr3tAuthentification par mot de passe
maxmemorymaxmemory 2gbLimite mémoire
maxmemory-policyallkeys-lruPolitique d’éviction
savesave 900 1Calendrier des snapshots RDB
appendonlyappendonly yesActiver AOF

Nouvelles Fonctionnalités de Valkey

Valkey inclut des améliorations absentes de Redis OSS :

  • Transport RDMA — Remote Direct Memory Access pour les clusters à très faible latence (Valkey 8.0+).
  • Dict par slot en mode cluster — Chacun des 16 384 hash slots obtient son propre dictionnaire, réduisant la contention de verrous.
  • Réplication à double canal — Canal dédié pour le transfert de données en masse et un autre pour le streaming de commandes en direct.
  • Meilleure efficacité mémoire — Surcharge par clé réduite vs Redis 7.2.

Cluster Valkey

Le Cluster Valkey utilise le même modèle de 16 384 hash slots que Redis Cluster. Les outils existants fonctionnent sans modification.

# Créer un cluster de 6 nœuds (3 primaires + 3 répliques)
valkey-cli --cluster create \
  192.168.1.1:7000 192.168.1.2:7001 192.168.1.3:7002 \
  192.168.1.4:7003 192.168.1.5:7004 192.168.1.6:7005 \
  --cluster-replicas 1

# Vérifier l'état du cluster
valkey-cli --cluster check 192.168.1.1:7000

Sentinel pour Haute Disponibilité

# /etc/valkey/sentinel.conf
sentinel monitor mymaster 192.168.1.1 6379 2
sentinel auth-pass mymaster s3cr3t
sentinel down-after-milliseconds mymaster 5000
sentinel failover-timeout mymaster 60000
valkey-sentinel /etc/valkey/sentinel.conf

Docker Compose avec Sentinel

services:
  valkey-primary:
    image: valkey/valkey:latest
    command: valkey-server --requirepass ${VALKEY_PASSWORD} --appendonly yes
    volumes:
      - valkey-primary-data:/data
    networks: [valkey-net]

  valkey-replica:
    image: valkey/valkey:latest
    command: >
      valkey-server
      --replicaof valkey-primary 6379
      --requirepass ${VALKEY_PASSWORD}
      --masterauth ${VALKEY_PASSWORD}
    volumes:
      - valkey-replica-data:/data
    networks: [valkey-net]
    depends_on: [valkey-primary]

  valkey-sentinel:
    image: valkey/valkey:latest
    command: valkey-sentinel /etc/valkey/sentinel.conf
    configs:
      - source: sentinel-conf
        target: /etc/valkey/sentinel.conf
    networks: [valkey-net]

volumes:
  valkey-primary-data:
  valkey-replica-data:

networks:
  valkey-net:

configs:
  sentinel-conf:
    content: |
      sentinel monitor mymaster valkey-primary 6379 1
      sentinel auth-pass mymaster ${VALKEY_PASSWORD}
      sentinel down-after-milliseconds mymaster 5000

Valkey vs Redis et Alternatives

FonctionnalitéValkeyRedis OSSRedis EnterpriseKeyDBDragonfly
LicenceBSD 3-ClauseSSPL/RSALPropriétaireBSDBSL 1.1
GouvernanceLinux FoundationRedis LtdRedis LtdSnap IncDragonfly DB
Compat. RedisTotale (7.2)NativeTotaleTotaleHaute
ClusterOuiOuiOuiOuiOui
RDMAOui (v8+)NonPartielNonNon
CoûtGratuitGratuitPayantGratuitGratuit (cœur)

Résumé

  • Valkey est le fork BSD sous gouvernance Linux Foundation de Redis 7.2 — remplacement direct compatible.
  • La migration est simple : arrêtez Redis, pointez Valkey vers le répertoire de données existant, démarrez Valkey.
  • Tous les clients Redis se connectent à Valkey sans modifications de code — seul le hostname change.
  • Cluster et Sentinel utilisent une configuration et des outils identiques à Redis.
  • Nouvelles fonctionnalités dans Valkey 8+ améliorent les performances au-delà de Redis 7.2.

Articles Connexes