Comments 16
Да-да, команды для консоли скриншотами, криво обрезанные и разного масштаба! Классика. Предлагаю всю статью загнать в jpg!
Вроде и тема интересная, и материал авторский.. Но скриншоты - просто кровь из глаз.. Плюс красные предупреждения еще мешают.
archive_command = 'cp %p /oracle/pg_data/archive/%f'
Вот тут oracle как-то режет глаз. Понятно что просто имя папки, но для статьи про PostgreSQL лучше б заменить.
repmgr, patroni, и так далее, правда это варианты с тремя нодами (мастер и две реплики, или мастер,реплика, свидетель) ..для двух нод похоже только мультимастер от PGPro
Без третьей ноды/свидетеля не разрулить split brain.
вроде я об этом и написал))
Patroni? Правда автоматом, вроде, только в одну сторону.
когда работа бывшего мастера будет восстановлена, он увидит нового мастера и станет репликой, естественно тут возможны разные ситуации и их решения, но в целом может и splitbrain разрулить (после того как вы наигрались с какими-то "синтетическими" остановками кластера), отмотав "лишнее" назад)
Патрони работает в любом направлении в любое время, вы наверное с repmgr путаете
Журналы WAL нужны для того, чтобы в случае сбоя сервера можно было восстановить незафиксированные данные.
Вы уверены?
То есть в обоих случаях сначала дампим и копируем все данные с основного сервера на реплику, а затем слушаем изменения. Не совсем понятно можно ли это делать online, и что будет происходить в промежутке между копированием реплики и началом подписки, ведь данные на мастере постоянно изменяются. Или для поднятия реплики нужно мастер тоже останавливать?
P.S. вроде как были автоматические решения для HA типа PgPool.
В файл необходимо внести следующие правки:
wal_keep_segments
Начиная с PostgreSQL 13 - wal_keep_size
wal_log_hint
Зачем?
Репликации в PostgreSQL