Ce document décrit comment effectuer manuellement un basculement d'une instance principale ou secondaire.
Haute disponibilité sur les instances principales et secondaires
AlloyDB pour PostgreSQL est compatible avec la haute disponibilité sur les instances principales et secondaires.
Haute disponibilité sur les instances principales
Pour garantir une haute disponibilité, chaque instance principale AlloyDB comporte un nœud actif et un nœud de secours, situés dans des zones différentes. Si le nœud actif devient indisponible, AlloyDB bascule automatiquement l'instance principale vers son nœud de secours, qui devient le nouveau nœud actif.
Vous pouvez à tout moment basculer manuellement votre instance principale vers son nœud de secours, même si le nœud actif fonctionne comme prévu. Lorsque vous lancez un basculement manuel, AlloyDB effectue les opérations suivantes :
Met le nœud principal hors connexion.
Transforme le nœud de secours en nouveau nœud actif.
Réactive le nœud actif précédent en tant que nouveau nœud de secours.
Le basculement manuel échange les rôles actif et de secours des nœuds de votre instance principale. Vous pouvez déclencher un basculement manuel à tout moment.
Par exemple, imaginez que vous disposez d'une instance principale dont les nœuds actif et de secours résident respectivement dans les zones us-central1-a et us-central1-b. Une panne dans us-central1-a déclenche un basculement automatique, ce qui fait que la zone us-central1-b héberge le nœud actif. Si vous préférez conserver le nœud actif dans la zone us-central1-a, vous pouvez lancer un basculement manuel pour qu'AlloyDB échange les nœuds de l'instance principale et les replace à leur emplacement avant la panne.
Lors des opérations de maintenance, une instance principale à haute disponibilité et une instance de base connaissent généralement un temps d'arrêt minimal de moins d'une seconde. Étant donné que le basculement manuel est une procédure intentionnelle et contrôlée, il n'est pas destiné à simuler des pannes matérielles ou réseau inattendues. Vous pouvez plutôt tester la haute disponibilité de votre instance principale à l'aide de l'injection de pannes.
Haute disponibilité sur les instances secondaires
AlloyDB offre une haute disponibilité sur les instances secondaires pour prendre en charge la reprise après sinistre et réduire les temps d'arrêt lorsqu'une instance secondaire devient indisponible.
Par défaut, la haute disponibilité est configurée sur une instance secondaire.
Une instance secondaire AlloyDB comprend les nœuds suivants :
- Un nœud secondaire actif, qui répond aux requêtes
- Un nœud secondaire de secours
Les nœuds actif et de secours sont situés dans deux zones différentes d'une région. Si AlloyDB détecte l'indisponibilité du nœud actif, celui-ci bascule vers le nœud de secours pour agir en tant que nouveau nœud actif. Vos données sont ensuite redirigées vers le nouveau nœud actif. Ce processus est appelé basculement.
Avant de commencer
- Le Google Cloud projet que vous utilisez doit avoir été activé pour accéder à AlloyDB.
- Vous devez disposer de l'un des rôles IAM suivants dans le Google Cloud projet que vous utilisez :
roles/alloydb.admin(rôle IAM prédéfini d'administrateur AlloyDB)roles/owner(rôle IAM de base de propriétaire)roles/editor(rôle IAM de base d'éditeur)
Si vous ne disposez d'aucun de ces rôles, contactez l'administrateur de votre organisation pour demander l'accès.
Effectuer un basculement manuel sur une instance principale
Console
- Accédez à la page Clusters.
Dans la colonne Nom de la ressource, cliquez sur le nom d'un cluster.
Dans la section Instances dans votre cluster, ouvrez le menu Actions de l'instance de votre instance principale.
Cliquez sur Basculement.
Dans la boîte de dialogue qui s'affiche, saisissez l'ID de l'instance.
Cliquez sur Déclencher le basculement.
gcloud
Exécutez la commande gcloud alloydb instances
failover :
gcloud alloydb instances failover INSTANCE_ID \
--region=REGION_ID \
--cluster=CLUSTER_ID \
--project=PROJECT_ID
Remplacez les éléments suivants :
INSTANCE_ID: ID de l'instanceREGION_ID: région dans laquelle l'instance est placéeCLUSTER_ID: ID du cluster dans lequel l'instance est placéePROJECT_ID: ID du projet dans lequel le cluster est placé
Pour vérifier que le basculement a fonctionné, procédez comme suit :
Avant d'effectuer le basculement, notez les zones des nœuds de l'instance principale.
Après avoir exécuté le basculement, notez les nouvelles zones des deux nœuds.
Vérifiez que les zones des nœuds actif et de secours ont été inversées.
Effectuer un basculement manuel sur une instance secondaire
Le basculement manuel d'une instance secondaire est semblable à celui d'une instance principale .
Pour basculer manuellement un cluster secondaire, procédez comme suit :
Console
Dans la console Google Cloud , accédez à la page Clusters.
Cliquez sur le nom d'un cluster secondaire dans la colonne Nom de la ressource.
Sur la page Présentation, accédez à la section Instances dans votre cluster , sélectionnez l'instance secondaire, puis cliquez sur Basculement.
Dans la boîte de dialogue qui s'affiche, saisissez l'ID de l'instance, puis cliquez sur Déclencher le basculement.
gcloud
Pour utiliser la gcloud CLI, vous pouvez installer et initialiser la Google Cloud CLI, ou vous pouvez utiliser Cloud Shell.
Utilisez la gcloud alloydb instances failover command pour forcer une instance secondaire à basculer vers son secours.
gcloud alloydb instances failover SECONDARY_INSTANCE_ID \
--cluster=SECONDARY_CLUSTER_ID \
--region=REGION_ID \
--project=PROJECT_IDRemplacez les éléments suivants :
SECONDARY_INSTANCE_ID: ID de l'instance secondaire que vous souhaitez basculerSECONDARY_CLUSTER_ID: ID du cluster secondaire auquel l'instance secondaire est associéeREGION_ID: ID de la région de l'instance secondaire, par exempleus-central1PROJECT_ID: ID du projet du cluster secondaire