Frage Containerized PostgreSQL mit Daten auf einem verteilten Dateisystem


Ich bin neugierig, ob jemand PostgreSQL tatsächlich in einem Container in der Produktion auf irgendeiner Form eines verteilten Dateisystems ausführt - GlusterFS vorzugsweise oder so.

Ich leite derzeit Mesos / Marathon. Falls der PostgreSQL-Knoten fehlschlägt, startet Marathon einfach eine weitere PostgreSQL-Instanz auf anderen Knoten. Wenn dies ordnungsgemäß durchgeführt wird (Service Discovery und Anwendung werden nach Datenbankverbindungsverlust wiederhergestellt), wird die ultimative Fehlertoleranz erreicht.

Ich weiß, dass PostgreSQL eigene HA-Lösungen hat, wie Protokollversand und Hot-Standby-Backup, aber dann muss man noch das Problem lösen, wann man vom Master zum Slave wechselt, wie man es richtig macht und so weiter.

Also, wie läuft PostgreSQL in der Produktion auf GlusterFS oder ähnlichem? Wenn ja, ist es stabil? Wie wäre es mit Leistung?


8
2018-03-26 17:57


Ursprung


Letztendlich haben wir CEPH benutzt. Einzig was ich bisher zu diesem Thema gefunden habe ist youtube.com/watch?v=OqlC7S3cUKs - pigster
Es kann sich lohnen, repmgr (repmgr.de) um Ihre HA Postgres Failovers zu verwalten, statt Dinge mit Containern und gluster zu überkomplizieren. - JamesHannah
Ich kann auch PAF erwähnen: clusterlabs.github.io/PAF als Cluster-Manager für PostgreSQL. - Pierre-Alain TORET


Antworten:


aber dann muss man noch das Problem lösen, wann man vom Master zum Slave wechselt, wie man es richtig macht und so weiter.

Jeder Cluster hat normalerweise die Idee des Quorums: Beobachter (Monitore, was auch immer) müssen entscheiden, welcher Knoten der Master ist. Dann können Sie ihre Informationen verwenden, um Anforderungen ordnungsgemäß zu routen. Es ist ziemlich typisch, Haproxy nicht nur mit TCP / IP zu betreiben Gesundheitschecks aber einige High-Level-Logik mit Service-spezifischen Abfragen implementiert.

Auschecken Friedensstifter, für e. G..


0
2018-06-10 14:38





Sie müssen postgresql im Stateful-Service-Modus ausführen. Die Skalierung erfolgt über Mesos, aber die Datenreplikation wird vom PostgreSQL selbst durchgeführt. Sehen Sie sich diese Seite an Stateful Service  und persistente Volumes.


0
2017-09-11 00:18