Контейнерный PostgreSQL с данными в распределенной файловой системе


8

Мне любопытно, если кто-то на самом деле запускает PostgreSQL в контейнере, работающем в какой-либо форме распределенной файловой системы - предпочтительно GlusterFS или что-нибудь еще.

В настоящее время я бегу Mesos / Marathon. В случае сбоя узла PostgreSQL Marathon просто запускает другой экземпляр PostgreSQL на других узлах и, если все сделано правильно (обнаружение службы и восстановление приложения после потери соединения с базой данных), будет достигнута максимальная отказоустойчивость.

Я знаю, что у PostgreSQL есть свои собственные решения высокой доступности, такие как доставка журналов и горячее резервное резервное копирование, но тогда нужно решить вопрос о том, когда переключаться с главного на подчиненное, как это делать правильно и так далее.

Итак, как вы запускаете PostgreSQL в рабочей среде на GlusterFS или подобном? Если это так, стабильно ли это? Как насчет производительности?


2
Мы наконец-то закончили использовать CEPH. Единственное, что я нашел на данный момент по этой теме, это youtube.com/watch?v=OqlC7S3cUKs
pigster

3
Возможно, стоит использовать repmgr ( repmgr.org ) для управления аварийными переключениями HA postgres вместо того, чтобы слишком усложнять вещи с контейнерами и кластерами.
JamesHannah

1
Я также могу упомянуть PAF: clusterlabs.github.io/PAF в качестве менеджера кластеров для PostgreSQL.
Пьер-Ален TORET

Ответы:


0

но тогда нужно решить вопрос о том, когда переключаться с главного на подчиненный, как это сделать правильно и так далее.

Каждый кластер обычно имеет понятие кворума: наблюдатели (мониторы, что угодно) должны решить, какой узел является главным. Затем вы можете использовать их информацию для правильной маршрутизации запросов. Весьма типично запускать haproxy не только с базовыми проверками работоспособности TCP / IP но и с некоторой высокоуровневой логикой, реализованной с помощью специфичных для службы запросов.

Проверьте миротворец , например.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.