Gérer un basculement de base de données PostgreSQL

Edge for Private Cloud v. 4.16.09

Lors d'un basculement de la base de données PostgreSQL, procédez comme suit:

  1. Arrêtez apigee-postgresql sur le maître actuel si celui-ci est toujours en cours d'exécution:
    > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  2. Accédez au nœud de secours et appelez la commande suivante pour en faire le maître:
    > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql promote-standby-to-master IPorDNSofOldMaster

Si l'ancien maître est restauré à un moment donné, définissez-le en tant que nœud de secours:

  1. Sur le maître actuel, modifiez le fichier de configuration pour définir:
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofOldMaster
  2. Activez la réplication sur le nouveau maître:
    > /insins_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle
  3. Sur l'ancien maître, modifiez le fichier de configuration pour définir:
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofOldMaster
  4. Arrêtez apigee-postgresql sur l'ancien maître:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
  5. Sur l'ancien maître, nettoyez les anciennes données Postgres:
    > rm -rf /<inst_root>/apigee/data/apigee-postgresql/

    Remarque: Si nécessaire, vous pouvez sauvegarder ces données avant de les supprimer.
  6. Configurez l'ancien maître en tant qu'instance de secours:
    > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
  7. Une fois la réplication terminée, validez l'état de la réplication en exécutant les scripts suivants sur les deux serveurs. Le système doit afficher des résultats identiques sur les deux serveurs pour garantir une réplication réussie :
    1. Sur le nœud maître, exécutez:
      > /insins_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

      Confirmez qu'il s'agit du maître.
    2. Sur le nœud de secours:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

      Confirmez qu'il s'agit de l'instance de secours.