TL;DR — Kurzzusammenfassung
Valkey ist der Open-Source-Redis-Fork der Linux Foundation. Installieren, ohne Datenverlust von Redis migrieren und Cluster sowie Sentinel konfigurieren.
Valkey ist der Open-Source-Fork von Redis unter der Linux Foundation, der nach der Lizenzänderung von Redis Ltd im März 2024 entstanden ist. Wenn Sie Redis im Produktionsbetrieb einsetzen und bei einem wirklich quelloffenen Key-Value-Store mit Community-Governance bleiben möchten, führt Sie dieser Leitfaden durch Installation, Migration von Redis ohne Datenverlust sowie den Betrieb von Clustern und Sentinel.
Warum Valkey Existiert
Redis war von 2009 bis Anfang 2024 BSD-lizenziert. Am 20. März 2024 relizenzierte Redis Ltd Redis unter einem dualen SSPL/RSAL-Modell — keine der Lizenzen ist OSI-genehmigt, was bedeutet, dass Redis nach der Standarddefinition nicht mehr Open Source ist. Cloud-Anbieter und Mitwirkende forkten die letzte BSD-lizenzierte Version (7.2.4) innerhalb weniger Tage.
Die Linux Foundation nahm den Fork als Valkey im April 2024 auf, unterstützt von Amazon Web Services, Google Cloud, Oracle, Ericsson, Snap und vielen einzelnen Mitwirkenden.
Voraussetzungen
- Linux-Server mit Ubuntu 22.04+, Debian 12+, RHEL 9+ oder einer modernen Distribution.
- Vorhandene Redis 6.x- oder 7.x-Installation (bei Migration).
sudo-Zugriff oder Root.- Docker (optional, für den Container-Pfad).
Valkey Installieren
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 von Redis zu Valkey
Valkey liest Redis-RDB- und AOF-Dateien direkt — keine Konvertierung erforderlich.
Schritt 1: Redis-Daten Speichern und Sichern
redis-cli SAVE
sudo cp -r /var/lib/redis /var/lib/redis-backup
Schritt 2: Redis Stoppen
sudo systemctl stop redis-server
sudo systemctl disable redis-server
Schritt 3: Valkey Konfigurieren
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 verwendet identische Syntax zu redis.conf. Jede Direktive — bind, requirepass, maxmemory, Eviction-Richtlinien, TLS, RDB, AOF — funktioniert unverändert.
Schritt 4: Valkey Starten und Überprüfen
sudo systemctl enable valkey-server
sudo systemctl start valkey-server
valkey-cli PING # → PONG
valkey-cli DBSIZE # Schlüsselanzahl überprüfen
Schritt 5: Verbindungsstrings Aktualisieren
Ändern Sie host: redis auf host: valkey (oder die neue IP/den neuen Hostnamen). Keine weiteren Codeänderungen erforderlich.
Konfigurationsreferenz
| Direktive | Beispiel | Zweck |
|---|---|---|
bind | bind 127.0.0.1 ::1 | Adressen zum Lauschen |
requirepass | requirepass s3cr3t | Passwort-Authentifizierung |
maxmemory | maxmemory 2gb | Speicherlimit |
maxmemory-policy | allkeys-lru | Eviction-Richtlinie |
save | save 900 1 | RDB-Snapshot-Zeitplan |
appendonly | appendonly yes | AOF aktivieren |
Neue Valkey-Funktionen
Valkey enthält Verbesserungen, die in Redis OSS nicht vorhanden sind:
- RDMA-Transport — Remote Direct Memory Access für Ultra-Low-Latency-Cluster (Valkey 8.0+).
- Dict pro Slot im Cluster-Modus — Jeder der 16.384 Hash-Slots erhält sein eigenes Dictionary, was Lock-Contention reduziert.
- Dual-Channel-Replikation — Dedizierter Kanal für Massenübertragung und ein weiterer für Live-Command-Streaming.
- Verbesserte Speichereffizienz — Geringerer Overhead pro Schlüssel vs. Redis 7.2.
Valkey-Cluster
Der Valkey-Cluster verwendet das gleiche 16.384-Hash-Slot-Modell wie Redis Cluster. Vorhandene Cluster-Tools funktionieren unverändert.
# 6-Knoten-Cluster erstellen (3 primär + 3 Replikate)
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
# Cluster-Status prüfen
valkey-cli --cluster check 192.168.1.1:7000
Sentinel für Hochverfügbarkeit
# /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 mit 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 und Alternativen
| Merkmal | Valkey | Redis OSS | Redis Enterprise | KeyDB | Dragonfly |
|---|---|---|---|---|---|
| Lizenz | BSD 3-Clause | SSPL/RSAL | Proprietär | BSD | BSL 1.1 |
| Governance | Linux Foundation | Redis Ltd | Redis Ltd | Snap Inc | Dragonfly DB |
| Redis-Compat. | Vollständig (7.2) | Nativ | Vollständig | Vollständig | Hoch |
| Cluster | Ja | Ja | Ja | Ja | Ja |
| RDMA | Ja (v8+) | Nein | Teilweise | Nein | Nein |
| Kosten | Kostenlos | Kostenlos | Kostenpflichtig | Kostenlos | Kostenlos (Kern) |
Zusammenfassung
- Valkey ist der BSD-lizenzierte Fork von Redis 7.2 unter Linux Foundation-Governance — vollständig kompatibler Direktersatz.
- Die Migration ist unkompliziert: Redis stoppen, Valkey auf das vorhandene Datenverzeichnis zeigen, Valkey starten.
- Alle Redis-Clients verbinden sich ohne Codeänderungen mit Valkey — nur der Hostname ändert sich.
- Cluster und Sentinel verwenden identische Konfiguration und Tools wie Redis.
- Neue Funktionen in Valkey 8+ verbessern die Leistung über Redis 7.2 hinaus.