Vous n'êtes pas identifié(e).
Pages : 1
Bonjour,
je dois construire une base de donnée postgresql version 9.5 pour une site de presse en ligne qui est censé recevoir en moyenne 15000 visiteurs par heure.
Nous pensons qu'il peut y avoir 1000 utilisateurs connectés en même temps sue le site et donc entrain d'utiliser la base de donnée.
Je cherche à faire une solution genre cluster postgres (tout ça pour ne pas aller vers du nosql, elasticsearch ou cassandra), je ne dispose pas de beaucoup de temps pour faire des poc.
Je vais donc essayer pgpool2, mais en cherchant je me suis rendu compte qu'il n'est pas conseillé.
Je fais donc appelle à vous pour me donner des indications sur la meilleure solution pour ce genre de problèmatiques.
Merci d'avance
Hors ligne
Avec aussi peu d'informations, impossible de vous aider. Si vous cherchez un pooler de connexions, je vous conseille pgBouncer.
Julien.
https://rjuju.github.io/
Hors ligne
Merci rjuju,
en réalité je cherche à pouvoir satisfaire en lecture et en écriture plus de 1000 utilisateurs en même temps.
L'application doit être disponible à n'importe quelle moment.
Je cherche également une solution qui va me permettre de rajouter des serveurs quand j'atteins le pic pour ce site ( 90000 users connectés par donner leur avis sur un sujet d'actualité)
J'ai pensé à pgpool2, mais je ne sais pas si je dois le mettre sur chaque serveur postgres ou le mettre sur des serveurs à part.
Est-ce-que je dois utiliser une virtual ip pour les machines pgpool.
Est-ce-que pgpool gère bien la réplication?
Hors ligne
1000 utilisateurs applicatifs, ce n'est pas la même chose que 1000 utilisateurs au niveau de la base de données.
De toute façon, oubliez pgpool. Si vous avez besoin d'un pooler, pgBouncer est une bonne solution.
Guillaume.
Hors ligne
Merci gleu,
pour la réplication j'utilise la SR de postgres et le failover je vais utiliser repmgr ( à moins que je puisse l'utiliser pour faire la réplication)?
Il me reste de savoir comment faire si je veux rajouter une machine à on cluster, comment l'automatiser ( postgres n'a pas de cluster manager)
pgbouncer peu-il être mis devant un master et un slave ou il est juste un polar de connexions?
Dernière modification par Postgres.0 (17/08/2016 15:25:49)
Hors ligne
pgbouncer est juste un pooler de connexions et repmgr ne fait pas de réplication.
Guillaume.
Hors ligne
Bonjour,
Je vais donc utiliser pgbouncer devant deux machines (un master et un slave) , comment devrais-je procéder:
1 installer le pgbouncer sur une machine à part
2 installer pgbouncer sur le maitre et sur le slave ( dans ce cas la base du pgbouncer sera répliquée )
Hors ligne
Généralement, pgbouncer est installé sur une machine à part.
Guillaume.
Hors ligne
Merci,
est-ce-que je dois backuper cette machine et comment?
Le bouncer, installé sur une machine à part, doit il permettre la connexion sur le master et sur le slave ou bien uniquement sur le master.
Hors ligne
est-ce-que je dois backuper cette machine et comment?
Sauvegarder quoi ?
Le bouncer, installé sur une machine à part, doit il permettre la connexion sur le master et sur le slave ou bien uniquement sur le master.
Ça dépend de vous.
Guillaume.
Hors ligne
ce que je voulais dire par sauvegarder, c'est d'avoir un deuxième bouncer sur un autre serveur au cas où le premier bouncer tombe.
D'ailleurs, est ce que le serveur sur lequel il y a pgbouncer doit forcement avoir un postgres installé dessus.
Dernière modification par Postgres.0 (24/08/2016 15:30:22)
Hors ligne
ce que je voulais dire par sauvegarder, c'est d'avoir un deuxième bouncer sur un autre serveur au cas où le premier bouncer tombe.
Ça peut être utile de redonder le serveur pgbouncer.
D'ailleurs, est ce que le serveur sur lequel il y a pgbouncer doit forcement avoir un postgres installé dessus.
Non.
Guillaume.
Hors ligne
Merci Guillaume,
j'ai fait une streaming réplication + un log shopping (archivage et envoie des wal sur le serveurs slave).
Ensuite j'ai voulu utilisé repmgr, et là je me suis rendu compte que je vais cloner mon master pour l'envoyer vers le slave.
Donc j'ai perdu mon recovery.conf qui permettait au slave d'avaler les wal archivés du master.
le recovery.conf:
standby_mode = 'on'
restore_command = 'gunzip /opt/postgresql/9.5/wal_archive/%f.gz; cp /opt/postgresql/9.5/wal_archive/%f %p;'
archive_cleanup_command = '/usr/lib/postgresql/9.5/bin/pg_archivecleanup -d /opt/postgesql/9.5/wal_archive/ %r'
primary_conninfo = 'host=DEPRD-INFRA-PG01 port=5432 user=replicator password=replicator'
trigger_file = '/opt/postgres/9.5/data/failover'
Ma question est comment utiliser le repmgr tout en gardant l'envoie des fichiers wal du master vers le slave?
et si possible garder le fonctionnement de archive_cleanup_command.
Merci d'avance
Hors ligne
Je rebondis sur mon message precedent pour demander si la replication par archivage des wal est deprecated?
Hors ligne
Non, elle ne l'est pas. Ceci étant dit, elle a peu d'intérêt par rapport au Streaming.
Guillaume.
Hors ligne
Pages : 1