Présentation de Valkey
- CONTENU
Valkey est un magasin de structures de données en mémoire Open Source qui excelle en tant que base de données, cache, courtier de messages et moteur de streaming. Valkey fournit un magasin de données en mémoire très performant, évolutif et polyvalent, essentiel pour rendre les applications plus rapides et gérer efficacement les divers besoins en données avec un multithreading et une fiabilité accrus.
- MOTIF
Découvrez comment installer et configurer Valkey.
- EFFORT
La lecture de cet article vous prendra 40 minutes.
- OBJECTIF
Configuration de Valkey sous SUSE Linux Enterprise Server ou migration de Redis vers Valkey.
1 À propos de Valkey #
Valkey est un dérivé de Redis version 7.2.4. Il s'agit d'un magasin de structures de données en mémoire Open Source, concédé sous licence BSD (Berkeley Software Distribution), qui sert de plate-forme polyvalente pour diverses applications. Il excelle en tant que base de données, en assurant un stockage rapide et flexible des données ; en tant que cache, en améliorant de manière significative les performances des applications ; en tant que courtier de messages, en permettant une communication asynchrone ; et même en tant que moteur de streaming pour le traitement des données en temps réel. Valkey s'appuie sur la base de Redis OSS, intègre le multithreading pour améliorer les performances et offre une solution robuste pour les applications exigeant vitesse, évolutivité et diverses fonctionnalités de traitement des données.
Valkey présente de nombreux avantages, dont les suivants :
Accès rapide et à faible latence aux données stockées en mémoire, idéal pour la mise en cache, l'analyse en temps réel et le courtage de messages.
Prise en charge de structures de données puissantes et polyvalentes telles que les chaînes, les hachages, les listes, les ensembles, les ensembles triés, les flux et les index géospatiaux.
Fonctionnalités de persistance par le biais d'instantanés RDB (Redis Database Backup) et de fichiers AOF (Append-Only File) pour récupérer les données après les redémarrages.
Évolutivité horizontale grâce au partitionnement des données sur plusieurs noeuds.
Maintien de la compatibilité avec Redis 7.2, ce qui permet de migrer facilement sans modifier les bibliothèques client existantes ni la logique applicative.
Fonctionnalités intégrées de publication/d'abonnement pour la création de systèmes basés sur des événements ou des messages.
Pour plus d'informations sur Valkey, reportez-vous à la page https://valkey.io/docs/.
2 Gestion de Valkey #
Apprenez à installer Valkey, à utiliser l'outil de ligne de commande et à migrer de Redis vers Valkey.
2.1 Configuration d'un fichier de service Valkey #
Valkey est un magasin de données en mémoire Open Source qui fait office de base de données, de cache, de courtier de messages et de moteur de streaming.
systemd Valkey #Installez Valkey :
>sudozypper -n in valkeyCréez un fichier de service
systemdValkey :>sudovi /etc/systemd/system/valkey.serviceAjoutez ce qui suit au fichier :
[Unit] Description=Valkey In-Memory Data Store After=network.target [Service] User=valkey Group=valkey ExecStart=/usr/sbin/redis-server /etc/redis/valkey.conf LimitNOFILE=10240 ExecStop=/usr/bin/valkey-cli shutdown Restart=always [Install] WantedBy=multi-user.targetCopiez le fichier d'exemple dans le fichier de configuration spécifié :
>sudocp /etc/valkey/default.conf.example /etc/valkey/valkey.confMettez à jour les autorisations du fichier :
>sudochown valkey:valkey /etc/valkey/valkey.confDémarrez et activez le service Valkey :
>sudosystemctl start valkey>sudosystemctl enable valkeyVérifiez la configuration Valkey :
valkey-cli ping
Valkey est en cours d'exécution sur votre système lorsque votre commande ping renvoie la réponse
PONG.
2.2 Interface de ligne de commande Valkey #
L'interface de ligne de commande Valkey est utilisée pour gérer, déboguer et tester Valkey. Par défaut, la commande valkey-cli se connecte au serveur à l'adresse 127.0.0.1 avec le port 6379.
Voici quelques-unes des options de la commande valkey-cli :
-
-h Nom d'hôte du serveur avec l'adresse IP par défaut 127.0.0.1.
-
-p Port du serveur avec une valeur par défaut de 6379.
-
-t Timeout de connexion au serveur en secondes (décimales autorisées). Le timeout par défaut est de
0, ce qui signifie qu'il n'y a pas de limite, et dépend du système d'exploitation.-
-s Le socket du serveur remplace le nom d'hôte et le port.
-
-a Mot de passe à utiliser lors de la connexion au serveur. Vous pouvez également utiliser la variable d'environnement
VALKEYCLI_AUTHpour transmettre ce mot de passe de manière plus sûre. Cet argument est prioritaire lorsque les deux options sont utilisées.-
--user Nom d'utilisateur employé pour envoyer le style ACL (Access Control List), qui est
AUTH username pass. Option-arequise.-
--pass Mot de passe qui est un alias de l'option
-apour s'aligner sur la nouvelle option--user.-
--askpass Force la saisie du mot de passe via STDIN avec masquage. Si cet argument est utilisé, l'option
-aet la variable d'environnementVALKEYCLI_AUTHsont ignorées.-
-u URI du serveur au format
valkey://user:password@host:port/dbnum. Les valeur "user", "password" et "dbnum" sont facultatives. Pour l'authentification sans nom d'utilisateur, utilisez le nom d'utilisateurdefault. Pour TLS, utilisez le schémavalkeys.-
--help Permet d'afficher l'aide et de quitter.
-
--version Permet d'afficher la version et de quitter.
-
--cluster help Liste toutes les commandes disponibles pour le gestionnaire de grappes.
valkey-cli de base : #SET: définit une paire clé-valeur.>valkey-cli SET KEY_NAME "Hello Valkey"Par exemple :
>valkey-cli SET TESTKEY "Hello Valkey"GET: récupère la valeur associée à une clé.>valkey-cli GET TESTKEY "Hello Valkey"DEL: supprime une clé.>valkey-cli DEL TESTKEY (integer) 11si supprimée et0si introuvable.INFO: affiche des informations et des statistiques sur le serveur Valkey.>valkey-cli INFO Server redis_version:7.2.4 server_name:valkey valkey_version:8.0.2 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:e0cc1d08b1f9571a server_mode:standalone os:Linux 6.12.0-160000.9-default x86_64 arch_bits:64 monotonic_clock:POSIX clock_gettime multiplexing_api:epoll gcc_version:13.3.1 process_id:974 process_supervised:no run_id:32864c141804bcb17cae98145beee86ca251afd7 tcp_port:6379 server_time_usec:1750760734442451 uptime_in_seconds:2780 uptime_in_days:0 hz:10 configured_hz:10 lru_clock:5930270 executable:/usr/sbin/redis-server config_file:/etc/valkey/valkey.conf io_threads_active:0 availability_zone: [...]MONITOR: diffuse en temps réel toutes les commandes traitées par le serveur Valkey.>valkey-cli MONITOR OKKEYS: recherche toutes les clés correspondant à un modèle.>valkey-cli KEYS "*" # All keys "TESTKEY" "TESTKEY1"
2.3 Migration de Redis vers Valkey #
Valkey est conçu pour permettre un remplacement fluide, en maintenant la compatibilité avec l'API Redis, le protocole, les données de persistance, les ports et les fichiers de configuration. La transition de Redis vers Valkey est facile pour de nombreuses configurations de base. La procédure suivante suppose que Redis est installé, qu'il est en cours d'exécution et qu'il est chargé avec les données.
Vérifiez la version actuelle du serveur Redis :
>redis-cli info server # Server redis_version:7.2.4 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:8c22b097984bd350 redis_mode:standalone [...]Installez le paquet valkey-compat-redis avec l'option
--force-resolution:>sudo# zypper in --force-resolution valkey-compat-redis Refreshing service 'NVIDIA'. Refreshing service 'openSUSE'. Loading repository data... Reading installed packages... Resolving package dependencies... The following 2 NEW packages are going to be installed: valkey valkey-compat-redis The following package is going to be REMOVED: redis 2 new packages to install, 1 to remove. Package download size: 1.3 MiB Package install size change: | 5.2 MiB required by packages that will be installed -245.2 KiB | - 5.4 MiB released by packages that will be removed Backend: classic_rpmtrans Continue? [y/n/p/...? shows all options] (y):Le paquet prend vos fichiers de configuration et vos données de persistance existants et les transfère dans Valkey sans nécessiter aucune étape supplémentaire. Cette migration est possible, car Valkey est entièrement compatible avec l'API, le protocole, les données de persistance, les ports et les fichiers de configuration de Redis.
Démarrez et activez Valkey :
>sudosystemctl start valkey>sudosystemctl enable valkeyVérifiez les informations sur le serveur :
>redis-cli info server # Server redis_version:7.2.4 server_name:valkey valkey_version:7.2.5 redis_git_sha1:00000000 redis_git_dirty:0 redis_build_id:b0d9f188ef999bd3 redis_mode:standalone [...]Valkey répond à la fois à
redis_version:7.2.4et àvalkey_version:7.2.5. Le maintien deredis_versionassure une compatibilité maximale, tout en permettant d'identifier le serveur avecvalkey_version. Valkey comporte un fichier binaire nommévalkey-cli, mais lie symboliquementredis-cli. Les deux interfaces de ligne de commande ont les mêmes fonctionnalités.
3 Mentions légales #
Copyright © 2006–2025 SUSE LLC et contributeurs. Tous droits réservés.
Il est autorisé de copier, distribuer et/ou modifier ce document conformément aux conditions de la licence « GNU Free Documentation License » version 1.2 ou (à votre discrétion) 1.3, avec la section permanente qu'est cette mention de copyright et la licence. Une copie de la version de licence 1.2 est incluse dans la section intitulée « GNU Free Documentation License ».
Pour les marques commerciales SUSE, consultez le site Web https://www.suse.com/company/legal/. Toutes les autres marques de fabricants tiers sont la propriété de leur détenteur respectif. Les symboles de marque (®, ™, etc.) désignent des marques de SUSE et de ses sociétés affiliées. Des astérisques (*) désignent des marques commerciales de fabricants tiers.
Toutes les informations de cet ouvrage ont été regroupées avec le plus grand soin. Cela ne garantit cependant pas sa complète exactitude. Ni SUSE LLC, ni les sociétés affiliées, ni les auteurs, ni les traducteurs ne peuvent être tenus responsables des erreurs possibles ou des conséquences qu'elles peuvent entraîner.