gremlintv2
@gremlintv2

Что использовать: pgpool II или pgbouncer + haproxy?

Нужно поднять postgres кластер с repmgr асинхронной репликацией и балансировкой нагрузки - подскажите пожалуйста какие инструменты для балансировки нагрузки использовать в настоящее время будет более целесообразно: pgpool II или pgbouncer + haproxy?
  • Вопрос задан
  • 8558 просмотров
Пригласить эксперта
Ответы на вопрос 2
DarkRaven
@DarkRaven
разработка программного обеспечения
А вы рассматривали вот это?

Первый как раз асинхронный.
Ну и Pgbouncer, если у вас много коннектов, чтобы не уронить.
Вот тут - https://www.slideshare.net/ZalandoTech/high-availa... и вот тут https://pgday.ru/files/papers/55/Patroni%20Отказоу... что-то писали даже про это дело.

stolon вроде как нацелен именно на целостность данных и там синхронная репликация. Точно не помню.
Ответ написан
Melkij
@Melkij
PostgreSQL DBA
pgpool - это в общем больно в поддержке. Лучше не надо.
Далее надо учитывать что автофейловер - это свой букет проблем и особенностей. И зачастую проблем от него больше, чем без него. Тест на понимание repmgr: "как именно выбирается новый мастер?". Обычно используется штатная потоковая репликация и мастер переключается вручную. Потому что основная сложность в определении, что надо переключаться, а не это кратковременный сбой, например, сети.
pgbouncer + haproxy вполне широко используются для балансировки по равнозначным репликам (и по нескольким pgbouncer если вы до гигабита трафика доросли). По равнозначным - то есть не надо на OLTP реплики пихать OLAP запросы аналитики - для этого нужны отдельные реплики специально для этого настроенные.

Упомянутый Александр Кузнецов patroni - во всяком случае я не смог спровоцировать его на split brain, поэтому в целом он мне нравится. Да и в паре мест в продакшене уже видел. Умеет и синхронные и асинхронные реплики, с haproxy дружит вполне штатно для опроса где нынче мастер и так авторами и используется.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы