Dans cet article nous allons mettre en place un serveur secondaire esclave d’un autre serveur secondaire, c’est la réplication en cascade.

  • Créer un nouveau secondaire (pg-slave2)
  • Configurer le premier secondaire (pg-slave) pour accepter une nouvelle connexion de réplication
  • Faire un backup du premier secondaire vers pg-slave2.
  • Configurer pg-slave2 pour qu’il effectue sa réplication depuis le pg-slave.

Pour créer le nouveau serveur secondaire j’ai dupliqué ma machine virtuelle en prenant soin de lui affecter une nouvelle IP.

Ensuite nous allons configurer pg-slave pour qu’il accepte les connexions du pg-slave2 :

Dans postgres.conf :

Dans pg_hba.conf je rajoute la ligne suivante :

host    replication     replicator        192.168.1.128/32            md5

Relancer le pg-slave.

Avant de faire le backup on supprime l’ancienne instance :

Ensuite nos allons utiliser l’outil pg_base_backup :

Créer le fichier recovery.conf :

Lancer l’instance sur le secondaire, on peut même se connecter dessus et effectuer des requêtes en lecture seule ou des backup.

Quelques vues :

Sur les deux esclaves :

Sur le premier slave :

 

 

Petite astuce, si vous avez mal effectué la configuration et qu’au lancement de postgres vous avez :

Mais que vous n’ayez aucun message de log, vous pouvez passer en postgres et lancer manuellement avec option de debug (-d 3) :

Ca facilite le troubleshooting! Ici on voit qu’il y avait un problème de droits.

Share

Ecrire un commentaire

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url=""> 

requis