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

Edge pour Private Cloud v4.18.05

Procédez comme suit lors d'un basculement de base de données PostgreSQL:

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

Si l'ancien maître est restauré à l'avenir, faites-en un nœud de secours:

  1. Sur l'instance maître actuelle, modifiez le fichier de configuration à définir :
    PG_MASTER=IPorDNSofNewMaster
    PG_STANDBY=IPorDNSofOldMaster
  2. Activez la réplication sur le nouveau maître :
    /opt/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 les éléments suivants :
    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 toutes les anciennes données Postgres :
    rm -rf /opt/apigee/data/apigee-postgresql/
  6. Configurez l'ancien maître en tant que maître de secours :
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
  7. Une fois la réplication terminée, vérifiez son état 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 la commande suivante :
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master

      Vérifiez qu'il s'agit bien du maître.

    2. Sur le nœud de veille :
      /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby

      Vérifiez qu'il s'agit de l'instance de secours.