À propos de la réplication interrégionale

Cette page présente la réplication interrégionale sur Memorystore pour Valkey.

Pour savoir comment gérer la réplication interrégionale, consultez Créer et gérer la réplication interrégionale.

La réplication interrégionale vous permet de créer des instances secondaires à partir d'une instance principale pour rendre votre instance disponible pour les lectures dans différentes régions. Les instances secondaires fournissent également une redondance pour les scénarios de reprise après sinistre en cas de pannes régionales.

Voici les principaux concepts de cette page:

  • Instance principale: instance en lecture/écriture dans une même région.
  • Instance secondaire: instance en lecture seule qui se réplique de manière asynchrone à partir de l'instance principale. Pour en savoir plus sur la promotion et la dissociation des instances secondaires, consultez les tâches detach (dissocier) et switchover (passer à) qui apparaissent dans la section Gérer la réplication interrégionale.
  • Nœud réplicateur: nœud du segment de l'instance principale qui se réplique sur un nœud suiveur de l'instance secondaire. N'importe quel nœud principal ou répliqué du shard peut jouer le rôle de réplicateur.
  • Nœuds suiveurs: nœuds de l'instance secondaire qui se répliquent à partir d'un nœud réplicateur de l'instance principale. Seuls les nœuds principaux de l'instance secondaire peuvent avoir le rôle de suiveur.
  • Nombre de partitions et attribution d'emplacements: les instances principales et secondaires ont le même nombre de partitions et d'emplacements attribués.

Avantages

Voici quelques-uns des avantages de la réplication interrégionale sur Memorystore pour Valkey:

  • Reprise après sinistre: si la région de l'instance principale devient indisponible, vous pouvez dissocier ou basculer vers une instance secondaire dans une autre région pour répondre aux requêtes de lecture et d'écriture. Les instances secondaires gèrent les requêtes de lecture sans émettre de commande de basculement ou de détachement.
  • Données distribuées géographiquement: la distribution géographique des données les rapproche de vous et réduit la latence de lecture.
  • Équilibrage de charge géographique pour le trafic de lecture: si des connexions lentes ou surchargées se produisent dans une région, vous pouvez acheminer le trafic vers une autre région.

Comportement de la fonctionnalité

Cette section explique le comportement important de la fonctionnalité de réplication interrégionale.

  • Évoluer la capacité de l'instance: lorsque vous évoluez la capacité de l'instance de l'instance principale, Memorystore for Valkey adapte automatiquement les instances secondaires à l'instance principale.
  • Évoluer le nombre de réplicas: vous pouvez faire évoluer le nombre de réplicas pour les instances principales et secondaires indépendamment en fonction des besoins de votre charge de travail. Les mises à jour du nombre de réplicas sont locales uniquement et ne se propagent pas aux autres instances de la collection d'instances de réplication interrégionale.
  • Basculement en cas de panne potentielle: vous pouvez effectuer un basculement pour promouvoir une instance secondaire, même si l'instance principale n'est pas disponible en raison d'une panne. Une fois la panne résolue, l'instance principale indisponible devient une instance secondaire.
  • Créer des instances secondaires en ligne: lorsque vous ajoutez une instance secondaire à une instance principale, l'instance principale reste en ligne. Alors que Memorystore pour Valkey crée l'instance secondaire, l'instance principale gère les requêtes et réplique les données.
  • Créer des instances secondaires: vous pouvez avoir jusqu'à deux instances secondaires. Ils peuvent se trouver dans la même région ou dans des régions différentes. Vous ne pouvez pas transformer une instance existante en instance secondaire. Vous ne pouvez ajouter que de nouvelles instances en tant qu'instances secondaires.
  • Synchroniser les paramètres: Memorystore pour Valkey synchronise automatiquement la plupart des paramètres d'instance entre les instances principales et secondaires. Pour en savoir plus sur ces paramètres, consultez la section Paramètres d'instance.
  • Tarification: Memorystore pour Valkey facture aux clients qui utilisent la réplication interrégionale toutes les instances secondaires que Memorystore pour Valkey provisionne pour la réplication interrégionale. Pour chaque nœud et réplica que Memorystore pour Firebase déploie sur l'instance secondaire, vous êtes facturé comme pour toute autre instance principale. De plus, des frais de réseau sont facturés pour le transfert de données entre des instances situées dans différentes régions.
  • Effectuer des mises à jour de maintenance: pour assurer la compatibilité avec la réplication interrégionale, votre instance principale peut subir une mise à jour de maintenance lors de la création de votre instance secondaire. Si l'instance principale n'exécute pas la version logicielle requise, cette mise à jour est effectuée. Le processus de mise à jour peut entraîner une latence supplémentaire lors de la création de votre instance secondaire. Pour en savoir plus, consultez la section À propos de la maintenance.

Gérer la réplication interrégionale

La réplication interrégionale implique les tâches suivantes:

  • Créer une instance secondaire: créez une instance secondaire qui réplique en continu les données de votre instance principale.
  • Afficher l'instance secondaire: affichez des informations sur l'instance secondaire, y compris le nom de l'instance principale et de l'autre instance secondaire du groupe de réplication.
  • Dissocier l'instance secondaire: dissociez une instance secondaire de son instance principale, ce qui en fait une instance indépendante entièrement fonctionnelle qui permet à la fois les lectures et les écritures. Après une opération de détachement, l'instance détachée ne réplique plus les données de l'instance principale à laquelle elle était auparavant associée. L'instance principale d'origine et l'instance nouvellement dissociée (l'ancienne instance secondaire) fonctionnent comme des instances indépendantes sans aucune relation entre elles.

    Il existe deux scénarios principaux pour dissocier une instance secondaire:

    • Migration régionale: effectuez une migration planifiée des ressources Memorystore pour les clés d'accès de leur région principale vers une autre région.
    • Reprise après sinistre: activez rapidement les ressources Memorystore pour Valkey dans une région secondaire si les ressources de la région principale ne sont plus disponibles. Si l'instance secondaire n'est pas entièrement à jour avec l'instance principale, une perte de données peut se produire.
  • Basculer vos instances: effectuez un basculement pour inverser les rôles de vos instances principale et secondaire. Vous pouvez effectuer un transfert pour les raisons suivantes:

    • Tester la configuration de votre reprise après sinistre
    • Passer à un autre environnement en cas de sinistre
    • Migrer votre charge de travail

    Une fois la commutation terminée, Memorystore pour Valkey inverse la direction de la réplication. L'ancienne instance secondaire peut désormais accepter à la fois les lectures et les écritures, tandis que l'ancienne instance principale passe en lecture seule.

Exemple d'architecture pour la réplication interrégionale

Ce diagramme montre une instance principale dans la région us-east1 et des instances secondaires dans les régions us-west1 et asia-east1. La direction de la réplication est toujours de l'instance principale vers les instances secondaires (dans cet exemple, de la région us-east1 vers les autres régions).

Même si ce diagramme montre le même nombre de réplicas dans toutes les régions, la réplication interrégionale vous permet d'avoir un nombre variable de réplicas en fonction de vos besoins.

Paramètres des instances

Cette section explique les paramètres requis, copiés et ignorés pour les instances principales et secondaires qui utilisent la réplication interrégionale. Il explique également les paramètres que vous configurez sur l'instance principale et ceux que vous configurez localement.

Paramètres requis pour créer une instance secondaire

Pour créer une instance secondaire, vous devez définir des valeurs pour les paramètres suivants:

  • Projet Google Cloud: projet dans lequel se trouve votre instance principale et dans lequel vous créez l'instance secondaire.
  • Région: région dans laquelle vous souhaitez que l'instance secondaire se trouve.
  • Configuration Private Service Connect: configuration réseau de l'instance secondaire.
  • Instance principale: lorsque vous créez l'instance secondaire, vous devez indiquer une instance principale. Vous pouvez utiliser n'importe quelle instance autre qu'une instance secondaire comme instance principale. Si vous n'avez pas d'instance principale, créez-en une.

Paramètres qu'une instance secondaire copie à partir de l'instance principale

Lorsque vous créez une instance secondaire, celle-ci copie les paramètres suivants de l'instance principale:

Remplacer les paramètres par défaut

Lorsque vous créez une instance secondaire, vous pouvez utiliser les paramètres suivants pour remplacer les paramètres par défaut:

Mettre à jour les paramètres de l'instance

Lorsque vous mettez à jour les paramètres de votre instance Memorystore for Redis, vous ne pouvez modifier certains paramètres que sur l'instance principale. Memorystore pour Valkey synchronise automatiquement ces modifications avec les instances secondaires.

Vous pouvez modifier d'autres paramètres des instances principales et secondaires indépendamment. Memorystore for Firebase n'applique ces modifications qu'en local et ne les synchronise pas avec les autres instances.

Configurer les paramètres sur l'instance principale

Vous devez modifier les paramètres suivants sur l'instance principale. Memorystore pour Valkey synchronise automatiquement ces modifications avec les instances secondaires.

Configurer les paramètres locaux

Vous configurez ces paramètres localement:

Bonnes pratiques pour changer d'instance principale et secondaire

Lorsque vous inversez les rôles des instances primaire et secondaire (effectuez un basculement), nous vous recommandons de suivre les instructions de cette section. De cette façon, votre application peut suivre les écritures et les envoyer à l'instance principale appropriée.

  1. Empêchez votre application d'écrire sur l'instance principale.
  2. Si plusieurs instances secondaires doivent être promues, déterminez l'instance secondaire que vous souhaitez promouvoir en tant qu'instance principale. Les facteurs suivants peuvent vous aider à déterminer l'instance secondaire à promouvoir:

    • Proximité de votre application par rapport à l'instance. Cela peut avoir une incidence sur la latence d'écriture.
    • Instance secondaire la plus à jour en termes de données.
    • Instance secondaire la plus proche de l'instance principale en termes de paramètres.
  3. Effectuez une commutation sur l'instance secondaire.

  4. Attendez que l'opération de basculement se termine.

  5. Mettez à jour votre application pour qu'elle envoie toutes les écritures à l'instance nouvellement promue que vous avez sélectionnée à l'étape 2.