La réplication interrégionale vous permet de créer des instances secondaires à partir d'une instance principale afin de rendre l'instance disponible dans différentes régions. Si la région de l'instance principale devient indisponible, vous pouvez dissocier une instance secondaire dans une autre région ou basculer vers celle-ci pour traiter les requêtes de lecture et d'écriture. Les instances secondaires traitent les requêtes de lecture sans être dissociées de l'instance principale ni basculer vers celle-ci. La répartition géographique des données les rapproche de vous et réduit la latence en lecture. Si des connexions lentes ou surchargées se produisent dans une région, vous pouvez rediriger le trafic vers une autre région.
Les règles de liste de contrôle d'accès (LCA) ne sont pas répliquées entre les régions dans Memorystore for Valkey. Si vous attribuez une règle de LCA à une instance de réplication interrégionale, vous devez gérer la cohérence de la règle dans les différentes régions associées à l'instance.
Pour maintenir la cohérence, mettez à jour et supprimez séparément chaque règle attribuée aux instances principale et secondaire, et assurez-vous que les règles de chaque stratégie sont cohérentes. Les règles de LCA ne sont pas liées les unes aux autres. Vous pouvez donc les modifier et les supprimer dans n'importe quel ordre.
Créer une instance secondaire
Lorsque vous créez une instance secondaire, Memorystore for Valkey copie et applique certains paramètres de l'instance principale en tant que paramètres d'instance secondaire. Pour en savoir plus, consultez la section Paramètres d'instance.
Vous pouvez créer une instance secondaire dans Memorystore for Valkey à l'aide de la Google Cloud console ou de Google Cloud CLI.
Console
Dans la Google Cloud console, accédez à la page Memorystore for Valkey.
Cliquez sur une instance principale. L'instance principale est le parent de l'instance secondaire que vous créez.
Dans le panneau latéral, cliquez sur l'onglet Instances secondaires.
Cliquez sur Ajouter une instance secondaire.
Dans la fenêtre Ajouter des instances secondaires, apportez les modifications suivantes :
Dans le champ ID de l'instance, saisissez l'ID de l'instance secondaire que vous créez. L'ID doit comporter entre 1 et 63 caractères, et ne peut contenir que des lettres minuscules, des chiffres ou des traits d'union. Il doit commencer par une lettre minuscule, se terminer par une lettre minuscule ou un chiffre, et être unique dans sa région.
Dans le menu Région, sélectionnez la région dans laquelle vous souhaitez que l'instance secondaire soit située.
Dans la section Disponibilité par zone, sélectionnez l'une des options suivantes :
Si vous souhaitez que tous les segments et instances dupliquées de l'instance soient répartis sur trois zones de la région où Memorystore for Valkey crée l'instance, sélectionnez l'option Multizone.
Par exemple, si la région que vous sélectionnez est
us-central1, et que vous sélectionnez l'option Multizone, Memorystore for Valkey distribue les segments et les instances dupliquées de l'instance dans les zonesus-central1-a,us-central1-bet
us-central1-c. En cas de défaillance d'une zone, les nœuds de l'instance basculent vers les instances dupliquées.Si vous souhaitez que tous les segments et instances dupliquées de l'instance soient situés dans une seule zone de la région où Memorystore for Valkey crée l'instance, sélectionnez l'option Zone unique, puis sélectionnez la zone dans le menu Zone.
L'utilisation d'une seule zone permet de réduire les coûts de mise en réseau. Toutefois, en cas de défaillance d'une zone, aucun basculement ne se produit.
Dans le menu Instances dupliquées, sélectionnez le nombre d'instances dupliquées (par segment) pour l'instance. Vous pouvez avoir zéro, une ou deux instances dupliquées.
Dans le menu Réseau, sélectionnez un réseau pour l'instance. Pour en savoir plus sur la mise en réseau pour Memorystore for Valkey, consultez la section Mise en réseau.
Cliquez sur Ajouter une instance secondaire.
gcloud
Pour créer une instance secondaire, utilisez la gcloud memorystore instances create commande.
gcloud memorystore instances create INSTANCE_ID \ --project=PROJECT_ID \ --location=REGION_ID \ --cross-instance-replication-config-role=secondary \ --psc-auto-connections=network=NETWORK,projectId=PROJECT_ID \ --primary-instance=PRIMARY_INSTANCE_PATH
Effectuez les remplacements suivants :
- INSTANCE_ID : ID de l'instance secondaire que vous créez. L'ID doit comporter entre 1 et 63 caractères, et ne peut contenir que des lettres minuscules, des chiffres ou des traits d'union. Il doit commencer par une lettre minuscule, se terminer par une lettre minuscule ou un chiffre, et être unique dans sa région.
- PROJECT_ID : ID du projet dans lequel vous souhaitez créer l' instance secondaire. Il s'agit du même projet que celui dans lequel se trouve votre instance principale.
- REGION_ID : ID de la région dans laquelle vous souhaitez que l'instance secondaire soit située.
- NETWORK : réseau utilisé pour créer l'instance. Il doit utiliser le format suivant :
projects/NETWORK_PROJECT_ID/global/networks/NETWORK_ID. L'ID de réseau doit correspondre à celui utilisé par la règle de connexion de service. Sinon, vous ne pouvez pas créer l'instance secondaire. - PRIMARY_INSTANCE_PATH : chemin d'accès à l'instance principale. Par exemple,
projects/my-project/locations/us-central1/instances/my-primary-instance. Vous pouvez choisir n'importe quelle instance de votre projet comme instance principale, à condition qu'il ne s'agisse pas d'une instance secondaire.
Exemple :
gcloud memorystore instances create my-secondary-instance \ --project=my-project \ --location=us-central1 \ --cross-instance-replication-config-role=secondary \ --psc-auto-connections=network=projects/my-project/global/networks/default,projectId=my-project \ --primary-instance=projects/my-project/locations/us-central1/instances/my-primary-instance
Afficher une instance secondaire
Vous pouvez afficher des informations récapitulatives sur une instance secondaire à l'aide de la Google Cloud console ou de Google Cloud CLI.
Console
Dans la Google Cloud console, accédez à la page Memorystore for Valkey.
Cliquez sur la flèche de développement à côté d'une instance principale. Cette instance est le parent de l'instance secondaire pour laquelle vous souhaitez afficher des informations.
Cliquez sur l'instance secondaire. Des informations récapitulatives sur l'instance s'affichent.
gcloud
Pour afficher des informations sur une instance secondaire, y compris un champ d'appartenance
qui répertorie les instances principales et secondaires du groupe de réplication, utilisez
la gcloud memorystore instances describe commande.
gcloud memorystore instances describe INSTANCE_ID \ --project=PROJECT_ID \ --location=REGION_ID
Effectuez les remplacements suivants :
- INSTANCE_ID : ID de l'instance secondaire
- PROJECT_ID : ID du projet contenant l'instance secondaire
- REGION_ID : ID de la région dans laquelle se trouve l'instance secondaire
Effectuer une commutation
Une commutation vous permet d'inverser les rôles des instances principale et secondaire en promouvant une instance secondaire en instance principale à des fins de reprise après sinistre. Pour en savoir plus, consultez À propos de la réplication interrégionale.
Vous pouvez effectuer une commutation à l'aide de la Google Cloud console ou de Google Cloud CLI.
Console
Dans la Google Cloud console, accédez à la page Memorystore for Valkey.
Cliquez sur la flèche de développement à côté d'une instance principale. Cette instance est le parent de l'instance secondaire que vous souhaitez commuter.
Cliquez sur l'instance secondaire.
Cliquez sur Promouvoir en tant qu'instance principale.
Dans la boîte de dialogue Promouvoir l'instance secondaire en tant qu'instance principale ?, saisissez l'ID de l'instance secondaire, puis cliquez sur Promouvoir.
Une fois la commutation terminée, vous devez reconnecter vos applications à la nouvelle instance principale.
gcloud
Pour effectuer une commutation, utilisez la gcloud memorystore instances update commande.
gcloud memorystore instances update INSTANCE_ID \ --project=PROJECT_ID \ --location=REGION_ID \ --clear-primary-instance \ --cross-instance-replication-config-role=primary \ --cross-instance-replication-config-secondary-instances=[instance=SECONDARY_INSTANCE_PATH]
Effectuez les remplacements suivants :
- INSTANCE_ID : ID de l'instance secondaire que vous souhaitez promouvoir en instance principale en effectuant la commutation.
- PROJECT_ID : ID du projet contenant l'instance secondaire.
- REGION_ID : ID de la région dans laquelle se trouve l'instance secondaire.
SECONDARY_INSTANCE_PATH : chemin d'accès à l'instance secondaire. Par exemple,
projects/my-project/locations/us-central1/instances/my-secondary-instance.Si vous disposez de plusieurs instances secondaires, séparez-les par des virgules. Par exemple,
[instance=projects/my-project/locations/us-central1/instances/my-first-secondary-instance,instance=projects/my-project/locations/europe-west1/instances/my-second-secondary-instance].
Supposons que vous disposiez des instances suivantes dans le projet my-project :
instance-1: cette instance principale est située dans la régionus-east1.instance-2: cette instance secondaire se trouve dans la régionasia-east1.instance-3: cette instance secondaire se trouve dans la régionsouthamerica-east1.
Vous souhaitez inverser les rôles de instance-1 et instance-2 afin que instance-2 devienne la nouvelle instance principale et que instance-1 devienne une instance secondaire.
Pour ce faire, utilisez le code suivant :
gcloud memorystore instances update instance-2 \ --project=my-project \ --location=asia-east1 \ --clear-primary-instance \ --cross-instance-replication-config-role=primary \ --cross-instance-replication-config-secondary-instances=[instance=projects/my-project/locations/us-east1/instances/instance-1,instance=projects/my-project/locations/southamerica-east1/instances/instance-3]
Une fois la commutation terminée, vous devez reconnecter vos applications à la nouvelle instance principale.
Dissocier des instances secondaires
Si vous dissociez une ou plusieurs instances secondaires de leur instance principale, vous en faites des instances indépendantes entièrement fonctionnelles, qui permettent les lectures et les écritures. Pour en savoir plus, consultez Gérer la réplication interrégionale.
Vous pouvez dissocier des instances secondaires à l'aide de la Google Cloud console ou de la Google Cloud CLI.
Dissocier une instance secondaire
Cette section explique comment dissocier une instance secondaire de son instance principale.
Console
Dans la Google Cloud console, accédez à la page Memorystore for Valkey.
Cliquez sur une instance principale. Il s'agit du parent de l'instance secondaire que vous dissociez de l'instance principale.
Dans le panneau latéral, cliquez sur l'onglet Instances secondaires.
Cochez la case située à côté de l'ID de l'instance secondaire que vous dissociez de l'instance principale.
Cliquez sur Dissocier de l'instance principale.
Dans la boîte de dialogue Dissocier l'instance secondaire ?, saisissez l'ID de l'instance secondaire, puis cliquez sur Dissocier.
gcloud
Pour dissocier une instance secondaire, utilisez la gcloud memorystore instances update commande.
gcloud memorystore instances update INSTANCE_ID \ --project=PROJECT_ID \ --location=REGION_ID \ --cross-instance-replication-config-role=none \ --clear-primary-instance
Remplacez les éléments suivants :
- INSTANCE_ID : ID de l'instance secondaire que vous souhaitez dissocier
- PROJECT_ID : ID du projet contenant l'instance secondaire
- REGION_ID : région dans laquelle se trouve l'instance secondaire
Dissocier plusieurs instances secondaires
Cette section explique comment dissocier plusieurs instances secondaires de leur instance principale. Vous pouvez également utiliser la procédure décrite dans cette section pour dissocier une instance secondaire indisponible de son instance principale.
Console
Dans la Google Cloud console, accédez à la page Memorystore for Valkey.
Cliquez sur une instance principale. Il s'agit du parent des instances secondaires que vous dissociez de l'instance principale.
Dans le panneau latéral, cliquez sur l'onglet Instances secondaires.
Cochez les cases situées à côté des ID des instances secondaires que vous dissociez de l'instance principale.
Cliquez sur Dissocier de l'instance principale.
Dans la boîte de dialogue Dissocier les instances secondaires ?, procédez comme suit :
Saisissez les ID des instances secondaires. Séparez-les par des virgules.
Cliquez sur Dissocier.
gcloud
Pour dissocier plusieurs instances secondaires, utilisez la gcloud memorystore instances update commande.
gcloud memorystore instances update PRIMARY_INSTANCE_ID \ --project=PROJECT_ID \ --location=PRIMARY_INSTANCE_REGION_ID \ --remove-cross-instance-replication-config-secondary-instances=[instance=SECONDARY_INSTANCES] \ --cross-instance-replication-config-role=none
Effectuez les remplacements suivants :
- PRIMARY_INSTANCE_ID : ID de l'instance principale.
- PROJECT_ID : ID du projet contenant les instances secondaires.
- PRIMARY_INSTANCE_REGION_ID : ID de la région dans laquelle se trouve l'instance principale.
- SECONDARY_INSTANCES : instances secondaires que vous souhaitez
dissocier. Séparez les ID des instances par des virgules. Chaque instance secondaire doit avoir le format suivant :
projects/PROJECT_ID/locations/SECONDARY_INSTANCE_REGION_ID/instances/INSTANCE_ID.
Exemple :
gcloud memorystore instances update my-primary-instance \ --project=my-project \ --location=us-central1 \ --remove-cross-instance-replication-config-secondary-instances=[instance=projects/my-project/locations/us-west4/instances/my-secondary-instance-1,instance=projects/my-project/locations/asia-southeast2/instances/my-secondary-instance-2] \ --cross-instance-replication-config-role=none
Vous pouvez également dissocier des instances secondaires de l'instance principale en spécifiant une liste d'instances que vous ne souhaitez pas dissocier. Memorystore for Valkey dissocie toutes les instances que vous n'incluez pas dans cette liste.
Supposons que vous disposiez des instances secondaires suivantes :
instance-1: cette instance est située dans la régionus-east1.instance-2: cette instance se trouve dans la régionasia-east1.
Vous souhaitez dissocier les deux instances secondaires de my-primary-instance. Cette instance principale est située dans la région us-central1 et se trouve dans le projet my-project.
Pour dissocier les instances secondaires, utilisez le code suivant :
gcloud memorystore instances update my-primary-instance \ --project=my-project \ --location=us-central1 \ --cross-instance-replication-config-secondary-instances=[] --cross-instance-replication-config-role=none
Dans cet exemple, étant donné que la valeur nulle [] est attribuée au paramètre --cross-instance-replication-config-secondary-instances, Memorystore for Valkey dissocie toutes les instances secondaires de l'instance principale.
Modifier les paramètres d'instance
Cette section fournit des liens pour modifier les paramètres d'instance. Le processus de modification des paramètres d'instance est différent selon que vous modifiez les paramètres de l'instance principale ou de l'instance secondaire. Pour en savoir plus sur la modification des paramètres, consultez la section Paramètres d'instance.
Modifier les paramètres de l'instance principale
Vous devez modifier les paramètres suivants sur l'instance principale. Une fois cette opération effectuée, Memorystore for Valkey synchronise les modifications avec l'instance secondaire.
- Effectuer un scaling de la capacité de l'instance
- Configurer l'instance
- Empêcher la suppression de l'instance
- Gérer la persistance de l'instance
Modifier les paramètres de l'instance secondaire
Vous devez modifier les paramètres suivants sur l'instance secondaire :
- Configurer si l'instance est à zone unique ou multizone
- Effectuer un scaling du nombre d'instances dupliquées de l'instance
- Définir des intervalles de maintenance pour l'instance
Supprimer des instances qui utilisent la réplication interrégionale
Cette section explique comment supprimer les instances principales et secondaires qui utilisent la réplication interrégionale.
Supprimer une instance principale
Pour supprimer une instance principale :
- Dissociez ou supprimez toutes les instances secondaires.
- Pour supprimer l'instance principale, suivez les instructions de la section Supprimer des instances.
Pour éviter toute suppression accidentelle, vous ne pouvez pas supprimer simultanément les instances principales et secondaires.
Supprimer une instance secondaire
Pour supprimer une instance secondaire, suivez les instructions de la section Supprimer des instances. Pour l'ID d'instance, utilisez l'ID de l'instance secondaire.