Cette page explique comment utiliser la réplication interrégionale en créant et en utilisant des clusters secondaires.
Pour obtenir une présentation du concept de réplication interrégionale, consultez la page À propos de la réplication interrégionale.
Avant de commencer
- Le projet Google Cloud que vous utilisez doit avoir été autorisé à accéder à AlloyDB.
- Vous devez disposer de l'un des rôles IAM suivants dans le projet Google Cloud que vous utilisez :
roles/alloydb.admin
(rôle IAM prédéfini "AlloyDB Admin")roles/owner
(rôle IAM de base Propriétaire)roles/editor
(rôle IAM de base Éditeur)
Si vous ne disposez d'aucun de ces rôles, contactez l'administrateur de votre organisation pour demander l'accès.
Créer un cluster secondaire
Lorsque vous créez un cluster secondaire, AlloyDB copie et applique une partie de la configuration du cluster principal, y compris la configuration de la récupération à un moment précis (PITR) et de la sauvegarde, sur le cluster secondaire. AlloyDB n'ajoute aucune instance de pool de lecture au cluster secondaire après l'avoir créé, quel que soit le nombre d'instances de pool de lecture sur le cluster principal.
Si vous modifiez la configuration du cluster principal après avoir créé le cluster secondaire, les modifications ne sont pas disponibles sur le cluster secondaire. Toutefois, vous pouvez mettre à jour manuellement le cluster secondaire pour qu'il dispose de la dernière configuration disponible dans le cluster principal.
Pour créer un cluster et une instance secondaire AlloyDB, procédez comme suit:
Console
Dans la console Google Cloud, accédez à la page Clusters.
Cliquez sur un cluster dans la colonne Nom de la ressource.
Sur la page Vue d'ensemble, cliquez sur Créer un cluster secondaire.
Configurez votre cluster secondaire:
- Dans le champ Cluster ID (ID de cluster), saisissez un ID de ressource pour votre cluster secondaire.
- Sélectionnez une région différente de celle du cluster principal pour votre cluster secondaire.
- Sélectionnez le chiffrement géré par Google par défaut ou une clé de chiffrement gérée par le client (CMEK) comme méthode de chiffrement pour chiffrer votre cluster secondaire.
Si vous souhaitez chiffrer ce cluster à l'aide d'une clé CMEK, procédez comme suit:
- Cliquez sur Options de chiffrement avancées.
- Sélectionnez Clé de chiffrement gérée par le client (CMEK).
Sélectionnez une clé gérée par le client dans le menu qui s'affiche.
La console Google Cloud limite cette liste aux clés du même projet et de la même région que le nouveau cluster.Google Cloud
Pour utiliser une clé qui ne figure pas dans cette liste, procédez comme suit:
- Cliquez sur Vous ne trouvez pas votre clé ? Saisissez le nom de la ressource de clé.
- Saisissez le nom de la ressource dans le champ Nom de la ressource de la clé.
- Cliquez sur Enregistrer.
- Cliquez sur Continuer.
L'utilisation d'une clé CMEK avec AlloyDB nécessite une configuration supplémentaire. Pour en savoir plus, consultez Utiliser des clés CMEK.
Si l'instance principale associée est chiffrée avec une clé CMEK, vous devez également chiffrer son cluster secondaire avec une clé CMEK.
Configurez votre instance secondaire:
- Dans le champ ID d'instance, saisissez un ID de ressource pour votre instance secondaire. L'ID de ressource doit être unique dans un cluster.
Cliquez sur Créer un cluster.
gcloud
Pour utiliser gcloud CLI, vous pouvez installer et initialiser Google Cloud CLI ou utiliser Cloud Shell.
Exécutez la commande gcloud alloydb clusters create-secondary
:
gcloud alloydb clusters create-secondary SECONDARY_CLUSTER_ID \ --region=REGION_ID \ --primary-cluster=projects/PROJECT_ID/locations/LOCATION_ID/clusters/ PRIMARY_CLUSTER_ID \
gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \ --cluster=SECONDARY_CLUSTER_ID \ --region=REGION_ID
Remplacez les éléments suivants :
SECONDARY_CLUSTER_ID
: ID du cluster secondaire que vous souhaitez créer.SECONDARY_INSTANCE_ID
: ID de l'instance secondaire que vous souhaitez créer.REGION_ID
: ID de la région du cluster secondaire (par exemple,us-central1
).PROJECT_ID
: ID du projet du cluster secondaire.LOCATION_ID
: emplacement de votre cluster principal (par exemple,us-central1
).PRIMARY_CLUSTER_ID
: ID du cluster principal auquel le cluster secondaire est associé.SECONDARY_CLUSTER_ID
: ID du cluster secondaire auquel l'instance secondaire est associée.ALLOWED_PROJECT
(facultatif): liste d'ID ou de numéros de projet séparés par une virgule pour lesquels vous souhaitez autoriser l'accès à l'instance (par exemple,my-project-1
,12345
,my-project-n
). Vous devez définir une liste de projets ou de numéros autorisés si votre cluster utilise Private Service Connect comme méthode de connexion à l'instance.--no-enable-automated-backup
(Facultatif): désactivez la création de sauvegardes automatiques sur le cluster secondaire.
Pour créer un cluster et une instance secondaires compatibles avec Private Service Connect, ajoutez l'option --enable-private-service-connect
lorsque vous créez un cluster et l'option --allowed-psc-projects
pour définir une liste d'ID de projet ou de numéros de projet séparés par une virgule auxquels vous souhaitez autoriser l'accès à l'instance (par exemple, my-project-1
, 12345
,my-project-n
).
gcloud alloydb clusters create-secondary SECONDARY_CLUSTER_ID \ --region=REGION_ID \ --primary-cluster=projects/PROJECT_ID/locations/LOCATION_ID/clusters/ PRIMARY_CLUSTER_ID \ --enable-private-service-connect
gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \ --cluster=SECONDARY_CLUSTER_ID \ --region=REGION_ID \ --allowed-psc-projects=ALLOWED_PROJECT_LIST
Remplacez les éléments suivants :
ALLOWED_PROJECT
(facultatif): liste des ID ou numéros de projet séparés par une virgule auxquels vous souhaitez autoriser l'accès à l'instance (par exemple,my-project-1
,12345
,my-project-n
). Vous devez définir une liste de projets ou de numéros autorisés si votre cluster utilise Private Service Connect comme méthode de connexion à l'instance.
Pour créer une instance secondaire pour un cluster avec adresse IP publique, ajoutez le paramètre --assign-inbound-public-ip=ASSIGN_IPV4
.
gcloud alloydb instances create-secondary SECONDARY_INSTANCE_ID \
--cluster=SECONDARY_CLUSTER_ID \
--region=REGION_ID \
--assign-inbound-public-ip=ASSIGN_IPV4
Vous pouvez éventuellement transmettre la liste des blocs CIDR séparés par une virgule, comme 64.233.160.0/16
, au paramètre --authorized-external-networks
pour définir les réseaux externes autorisés sur votre instance.
Afficher un cluster secondaire
Pour afficher des informations détaillées sur un cluster secondaire AlloyDB, procédez comme suit:
Dans la console Google Cloud, accédez à la page Clusters.
Cliquez sur un cluster secondaire dans la colonne Nom de la ressource.
Sur la page Vue d'ensemble, consultez tous les détails de votre cluster secondaire.
Mettre à jour une instance secondaire
Vous pouvez mettre à jour une instance secondaire pour ajouter, modifier ou supprimer des indicateurs de base de données. Vous pouvez également faire évoluer le type de machine de votre instance secondaire.
Configurer des options de base de données sur une instance secondaire
Pour ajouter, modifier ou supprimer des indicateurs de base de données, procédez comme suit:
Console
Dans la console Google Cloud, accédez à la page Clusters.
Dans la colonne Nom de la ressource, cliquez sur un cluster secondaire que vous souhaitez modifier.
Sur la page Vue d'ensemble, accédez à Instances de votre cluster, sélectionnez l'instance secondaire, puis cliquez sur Modifier la secondaire.
Ajoutez, modifiez ou supprimez un indicateur de base de données de votre instance:
Ajouter un indicateur
- Pour ajouter une option de base de données à votre instance, cliquez sur Ajouter une option.
- Sélectionnez un indicateur dans la liste Nouveau flag de base de données.
- Indiquez une valeur pour l'indicateur.
- Cliquez sur OK.
Modifier un flag
- Pour modifier une option de base de données présente dans votre instance, développez l'option de base de données, puis modifiez sa valeur dans la section Modifier l'option de base de données.
- Cliquez sur OK.
Supprimer un indicateur
- Pour supprimer un indicateur de base de données de votre instance, sélectionnez-le, puis cliquez sur l'icône de suppression.
- Cliquez sur OK.
Cliquez sur Mettre à jour la secondaire.
gcloud
Utilisez la commande gcloud alloydb instances update
pour modifier les options de base de données d'une instance secondaire.
gcloud alloydb instances update SECONDARY_INSTANCE_ID \
--database-flags FLAGS_LIST \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID
Remplacez les éléments suivants :
SECONDARY_INSTANCE_ID
: ID de l'instance secondaire.FLAGS_LIST
: liste d'un ou de plusieurs spécifications de drapeaux de base de données, séparés par une virgule. Chaque spécification se compose du nom de l'indicateur, d'un signe égal (=
) et de la valeur à attribuer aux indicateurs. Pour les indicateurs de base de données qui ne prennent pas de valeurs, indiquez le nom de l'indicateur suivi d'un signe égal (=
).REGION_ID
: région où se trouve l'instance secondaire (par exemple,us-central1
).CLUSTER_ID
: ID du cluster dans lequel l'instance secondaire est placée.PROJECT_ID
: ID du projet dans lequel le cluster secondaire est placé.
Évoluer le type de machine de votre instance secondaire
Pour faire évoluer le type de machine de votre instance secondaire, procédez comme suit:
Console
Dans la console Google Cloud, accédez à la page Clusters.
Dans la colonne Nom de la ressource, cliquez sur un cluster secondaire que vous souhaitez modifier.
Sur la page Présentation, accédez à la section Instances de votre cluster, puis cliquez sur Modifier secondaire.
Notez que cette action n'est pas disponible si la page indique que l'état du cluster est Maintenance. L'action redevient disponible une fois que l'état Status (État) passe à Ready (Prêt).
Sélectionnez un type de machine.
Cliquez sur Mettre à jour la secondaire.
gcloud
Utilisez la commande gcloud alloydb instances
update
pour modifier le type de machine de l'instance secondaire.
gcloud alloydb instances update SECONDARY_INSTANCE_ID \
--cpu-count=CPU_COUNT \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID
Remplacez les éléments suivants :
SECONDARY_INSTANCE_ID
: ID de l'instance secondaire que vous mettez à jour.CPU_COUNT
: nombre de processeurs virtuels souhaités pour l'instance. Les valeurs valides sont les suivantes :2
(2 vCPU, 16 Go de RAM)4
(4 vCPU, 32 Go de RAM)8
(8 vCPU, 64 Go de RAM)16
(16 vCPU, 128 Go de RAM)32
(32 vCPU, 256 Go de RAM)64
(64 processeurs virtuels, 512 Go de RAM)
REGION_ID: région où se trouve l'instance.
CLUSTER_ID: ID du cluster dans lequel se trouve l'instance.
PROJECT_ID: ID du projet dans lequel le cluster est placé.
Si la commande renvoie un message d'erreur incluant la phrase invalid cluster state MAINTENANCE
, cela signifie que le cluster est en cours de maintenance de routine. Cela interdit temporairement la reconfiguration de l'instance. Exécutez à nouveau la commande une fois que le cluster est de nouveau dans l'état READY
.
Pour vérifier l'état du cluster, consultez Afficher les détails du cluster.
Ajouter des instances de pool de lecture à un cluster secondaire
Pour ajouter une instance de pool de lecture à un cluster secondaire, procédez comme suit:
Dans la console Google Cloud, accédez à la page Clusters.
Dans la colonne Nom de la ressource, cliquez sur un cluster secondaire auquel vous souhaitez ajouter une instance de pool de lecture.
Sur la page Vue d'ensemble, accédez à la section Instances de votre cluster, puis cliquez sur Ajouter un pool de lecture.
Configurez votre instance de pool de lecture:
- Dans le champ ID de l'instance de pool de lecture, saisissez un ID pour l'instance de pool de lecture.
- Dans le champ Nombre de nœuds, saisissez un nombre de nœuds. Le nombre de nœuds dans une instance de pool de lecture détermine la capacité de calcul globale de l'instance. Vous pouvez avoir jusqu'à 20 nœuds pour toutes les instances de pool de lecture d'un cluster.
- Sélectionnez un type de machine.
Facultatif: définissez des indicateurs personnalisés sur votre instance. Pour chaque indicateur, procédez comme suit:
- Cliquez sur Ajouter une option.
- Sélectionnez un indicateur dans la liste Nouveau flag de base de données.
- Indiquez une valeur pour l'indicateur.
- Cliquez sur OK.
Cliquez sur Ajouter un pool de lecture.
Promouvoir un cluster secondaire
Avant de promouvoir un cluster secondaire, procédez comme suit pour vérifier qu'il a appliqué toutes les transactions reçues du cluster principal:
- Arrêtez toutes les opérations en écriture sur le cluster principal.
Vérifiez l'état de la réplication du cluster secondaire en procédant comme suit:
Dans la console Google Cloud, accédez à la page Clusters.
Dans la liste des clusters, cliquez sur le nom du cluster secondaire que vous souhaitez promouvoir.
Sur la page d'informations du cluster, cliquez sur Surveillance.
Dans la liste Monitoring (Surveillance), sélectionnez l'instance secondaire. Il s'affiche dans la liste sous la forme Secondaire: INSTANCE_NAME.
Dans la liste des métriques, recherchez le graphique Délai de réplication depuis l'instance principale.
Vérifiez que le graphique affiche un temps de latence minimal.
Une valeur de décalage de
0
est idéale. Si le décalage est supérieur à0
, vous pouvez toujours promouvoir le cluster secondaire, au risque de perdre certaines transactions récentes déjà validées au niveau du cluster principal.Dans la liste des métriques, recherchez le graphique État de la réplication.
Vérifiez que tous les nœuds représentés dans le graphique ont une valeur de
streaming
.
Pour promouvoir un cluster secondaire en cluster principal, procédez comme suit:
Console
Dans la console Google Cloud, accédez à la page Clusters.
Dans la colonne Nom de la ressource, cliquez sur un cluster secondaire que vous souhaitez promouvoir en tant que cluster principal.
Sur la page Vue d'ensemble, cliquez sur Mettre en avant le cluster.
Dans la boîte de dialogue qui s'affiche, saisissez l'ID de votre cluster secondaire pour confirmer que vous souhaitez promouvoir le cluster.
Cliquez sur Promouvoir.
Une fois le cluster promu, le champ Type: Cluster secondaire (disponibilité élevée) sur la page Vue d'ensemble est remplacé par Type: Disponibilité élevée avec pool(s) de lecture.
gcloud
Exécutez la commande gcloud alloydb clusters promote
:
gcloud alloydb clusters promote SECONDARY_CLUSTER_ID \
--region=REGION_ID \
--project=PROJECT_ID \
Remplacez les éléments suivants :
SECONDARY_CLUSTER_ID
: ID du cluster secondaire que vous souhaitez promouvoir.REGION_ID
: ID de la région du cluster secondaire (par exemple,us-central1
).PROJECT_ID
: ID du projet du cluster secondaire.
Effectuer une commutation
Avant de procéder à un basculement, vérifiez que les deux régions auxquelles appartiennent les instances principale et secondaire sont en ligne et que les instances sont en bon état. Pour en savoir plus, consultez la page Surveiller une instance à l'aide du tableau de bord des insights système d'AlloyDB.
Exécutez la commande gcloud alloydb clusters
switchover
:
gcloud alloydb clusters switchover SECONDARY_CLUSTER_ID \
--region=REGION_ID \
--project=PROJECT_ID \
Remplacez les éléments suivants :
SECONDARY_CLUSTER_ID
: ID du cluster secondaire que vous souhaitez promouvoir.REGION_ID
: ID de la région du cluster secondaire (par exemple,us-central1
).PROJECT_ID
: ID du projet du cluster secondaire.