PostgreSQL La base de donnees la plus sophistiquee au monde.

Forums PostgreSQL.fr

Le forum officiel de la communauté francophone de PostgreSQL

Vous n'êtes pas identifié(e).

#1 30/10/2014 15:17:19

mamatov
Membre

Conseil changement de réplication

Bonjour,

J'ai actuellement une architecture de ce type :

- Base de donnée mutualisé postgreSQL 8.4 (sur un même serveur, je peux avoir X bases de données)
- Un serveur maître postgreSQL 8.4
- Un serveur esclave postgreSQL 8.4 (Warm standby)

Tout fonctionne bien, j'ai testé la bascule sous un environnement de production et je n'ai rien perdu.

Mon problème est le suivant, si je dois pour des raisons de maintenance arrêter mon serveur maître (augmentation de la ram, cpu, disque, maj système), je suis coincé.
Mes serveurs Web qui attaquent mon sgbd ne peuvent plus se connectés le temps de la maintenance.
Est-ce qu'il existe une autre type de réplication/configuration/architecture pour gérer ce type d'intervention ?

J'ai déjà lu qu'il n'était pas trop conseillé de faire du master/master synchrone car cela n'est pas géré en natif sur PostgreSQL.

La version 8.4 est utilisé pour des pré-requis des bases mais un changement vers la version 9 est envisageable.

Merci d'avance pour vos conseils.

Dernière modification par mamatov (30/10/2014 15:32:28)

Hors ligne

#2 30/10/2014 15:48:07

rjuju
Administrateur

Re : Conseil changement de réplication

Le plus simple est de faire un switch over avant la maintenance, puis de reconstruire le maître en esclave une fois la maintenance terminée.

Hors ligne

#3 30/10/2014 16:18:14

ruizsebastien
Membre

Re : Conseil changement de réplication

Bonjour,

Ou alors utiliser Pgpool II.

Hors ligne

#4 30/10/2014 16:29:15

mamatov
Membre

Re : Conseil changement de réplication

Merci pour vos conseils. La solution de basculé l'esclave en maître n'est pas idéale car cela va engendrer une coupure de service.
De plus, de lancer une procédure de faileover pour des besoins de maintenance est risqué dans un environnement de prod.

Je préfère encore couper tous mes clients pendant X minutes le temps de l'intervention.

Pour pgpool II le problème c'est qu'on utilise des fonctions comme now(). J'ai vu que dans ce cas, il n'était pas certain que les données soient identiques entre les nœuds.

Si je comprends bien, il n'y pas de solution l'heure actuelle pour répondre à mon besoin ?

Hors ligne

#5 30/10/2014 22:36:53

gleu
Administrateur

Re : Conseil changement de réplication

Tout dépend de votre besoin qui n'est pas très clair. Sans basculer l'esclave en maître, je ne vois pas bien comment vous voulez vous en sortir quand le maître n'est pas disponible. Apparemment, vous ne voulez pas de coupure de service, mais vous en aurez forcément une si le serveur sur lequel sont connectés vos utilisateurs est arrêté pour maintenance.

Hors ligne

#6 31/10/2014 11:00:44

ruizsebastien
Membre

Re : Conseil changement de réplication

pour pgpool II il suffit de se mettre en mode master/slave (c'est à dire que c'est postgresql qui gère la réplication) et vous n'aurez pas de problème avec vos fonctions.

Hors ligne

Pied de page des forums