Utiliser la migration à chaud RIOT pour migrer vers Redis Enterprise Cloud

Last reviewed 2024-01-29 UTC

Ce document décrit une architecture permettant de migrer des sources compatibles avec Redis, telles que Redis Open Source (Redis OSS), AWS ElastiCache et Azure Cache pour Redis, vers un service Redis Enterprise Cloud entièrement géré dans Google Cloud à l'aide du service de migration à chaud RIOT (Redis Input and Output Tool). Ce document est destiné aux architectes, administrateurs et ingénieurs de bases de données qui souhaitent migrer des sources compatibles avec Redis vers Redis Enterprise Cloud entièrement géré.

Redis Enterprise Cloud est une solution Redis entièrement gérée et pensée pour les entreprises, qui peut vous aider à gérer vos applications critiques. Par rapport aux sources compatibles avec Redis, ce service améliore l'évolutivité, la disponibilité, la sécurité et l'efficacité opérationnelle. En utilisant RIOT, un utilitaire de ligne de commande gratuit, vous pouvez migrer vos données de Redis vers Redis Enterprise Cloud sans interruption de service ni temps d'arrêt.

Architecture

Le schéma suivant illustre l'architecture de migration :

Les sources compatibles avec Redis sont migrées via RIOT vers Redis Enterprise Cloud.

Dans le schéma, le service de migration à chaud RIOT permet de migrer des sources compatibles avec Redis vers Redis Enterprise Cloud.

L'architecture contient les composants suivants :

  • Source : sources compatibles avec Redis, telles que Redis OSS, AWS ElastiCache et Azure Redis.
  • Cible : Redis Enterprise Cloud s'exécutant dans le VPC géré Redis.
  • Service de migration : RIOT exécuté sur les machines virtuelles (VM) Compute Engine.

Produits utilisés

Cette architecture de référence utilise les produits Google Cloud et tiers suivants :

  • Compute Engine : service de calcul sécurisé et personnalisable qui vous permet de créer et d'exécuter des machines virtuelles au sein de l'infrastructure de Google.
  • Migration à chaud RIOT : utilitaire de ligne de commande gratuit conçu pour vous aider à transférer des données vers et depuis Redis.
  • Redis Enterprise Cloud sur Google Cloud : solution Redis entièrement gérée, pensée pour les entreprises, qui peut vous aider à gérer vos applications stratégiques.

Cas d'utilisation

Redis offre une latence inférieure à une milliseconde, une compatibilité avancée avec les structures de données, une résilience et une portabilité Open Source. Cependant, il peut être difficile de faire évoluer les sources autogérées compatibles avec Redis pour répondre aux charges de travail exigeantes des entreprises tout en maintenant des latences très faibles. Si vous dépassez les limites de votre déploiement de cluster Redis autogéré, vous aurez peut-être des difficultés à faire évoluer votre solution. La conception d'une solution à disponibilité élevée et la gestion de la réplication sont chronophages et sujettes aux erreurs. Le scaling soulève également les défis logistiques et les coûts associés à la gestion du matériel, à l'application de correctifs et aux mises à niveau.

Pour vous aider à résoudre ces problèmes, Redis Enterprise Cloud s'intègre entièrement à Google Cloud afin de fournir un service de base de données en temps réel permettant d'exécuter, de faire évoluer et de gérer Redis. Redis Enterprise Cloud offre un noyau Open Source, des fonctionnalités et une sécurité professionnelles complètes, ainsi que des performances de pointe, l'évolutivité et la disponibilité requises par les applications stratégiques. Redis Enterprise Cloud offre une latence inférieure à une milliseconde, un basculement de quelques secondes et un temps d'activité de 99,999 %.

Alternatives de conception

RIOT fournit une solution de migration flexible vers et depuis Redis. Les sections suivantes présentent des alternatives de conception potentielles pour cette architecture. Les alternatives entraînent des temps d'arrêt ou nécessitent que la base de données cible soit hébergée sur un abonnement Flexible (ou annuel) Redis.

Instantanés RDB

L'instantané de base de données Redis (RDB) permet de conserver vos données dans Redis dans un espace de stockage durable. Il effectue des instantanés de votre ensemble de données à un moment précis et est couramment utilisé pour sauvegarder des données dans Redis. Au lieu d'utiliser RIOT pour effectuer votre migration, vous pouvez utiliser un instantané RDB pour migrer d'une instance Redis OSS vers Redis Enterprise. Cependant, contrairement à RIOT, l'instantané RDB n'est pas compatible avec la migration à chaud et entraîne des temps d'arrêt.

Synchroniser en mode actif/passif

Vous pouvez utiliser la commande Redis OSS ReplicaOf pour configurer une instance Redis en tant qu'instance répliquée d'un autre serveur Redis. Cette commande est utilisée dans le contexte de la réplication Redis, ce qui vous permet de créer des copies de vos données dans différentes instances Redis. Tout comme RIOT, la commande ReplicaOf est compatible avec la migration à chaud et ne produit aucun temps d'arrêt. Elle est toutefois intégrée à Redis OSS. Vous n'avez donc pas besoin d'installer d'outils.

La distribution géographique active/passive de Redis Enterprise utilise la commande ReplicaOf pour procéder au scaling d'un déploiement Redis dans plusieurs emplacements géographiques. Si la base de données cible est associée à un abonnement Flexible (ou annuel), la commande peut également être utilisée pour migrer les données d'une base de données Redis vers des abonnements Redis Enterprise Cloud. Toutefois, la commande ne fonctionne pas si la cible est un abonnement Fixe et ne fonctionne pas entre les abonnements Flexible de différents comptes Redis Cloud.

Considérations de conception

Les consignes suivantes peuvent vous aider à développer une architecture répondant aux exigences de votre organisation en termes de fiabilité, de coût et de performances.

Fiabilité

Dans cette architecture, la migration est une migration à sens unique d'une instance Redis OSS source vers une instance Redis Enterprise cible. Une fois la bascule de Redis OSS source vers le cluster Redis Enterprise cible terminée, la source n'est pas mise à jour avec les modifications apportées au cluster cible. Par conséquent, si vous implémentez cette architecture dans un environnement de production, vous ne pouvez pas basculer vos applications vers des bases de données sources à jour dans le cadre d'un remplacement.

Optimisation des coûts

Lorsque vous migrez des instances Redis OSS vers Redis Enterprise, nous vous recommandons de regrouper vos bases de données Redis Enterprise cibles en abonnements afin de réduire le coût total de possession à l'aide d'une architecture mutualisée. Par exemple, si vous disposez d'un groupe de bases de données conçues pour le développement et les tests, vous pouvez les regrouper dans un seul abonnement, car elles partagent des caractéristiques et des exigences de réseau communes. De même, un groupe de bases de données pour la production peut être hébergé sur un abonnement différent.

Performances

La migration à chaud RIOT présente un temps d'arrêt quasiment nul. Pendant la migration à partir de l'instance Redis OSS source, vos applications peuvent toujours accéder à l'instance Redis OSS source sans aucun impact. Au cours du processus de migration, après le chargement initial des données depuis Redis OSS, la migration à chaud RIOT continue de migrer les modifications depuis Redis OSS au fur et à mesure qu'elles se produisent.

Une fois les données de paires clé/valeur initiales migrées, vous effectuez la bascule de l'instance Redis OSS source vers l'instance Redis Enterprise cible. Dans le cadre du processus de basculement, vous suspendez les écritures client sur l'instance Redis OSS source. Vous attendez ensuite que RIOT traite les modifications restantes de l'instance Redis OSS source vers l'instance Redis Enterprise cible.

Déploiement

Pour déployer cette architecture, consultez la page Déployer une migration à chaud RIOT pour migrer de Redis Open Source vers Redis Enterprise Cloud.

Étape suivante

Contributeurs

Auteurs :

Autres contributeurs :