LINUX.ORG.RU
ФорумAdmin

Postgres 9.4, replication slots, не работает master failover

 , ,


0

1

Вот по етой http://habrahabr.ru/post/245847/ статье была настроена репликация master -> slave. Стал прикручивать pgpool для балансировки и failover-а на случай падения одной из нод, и наткнулся на неприятный момент, что не понимаю, как работает восстановление master-а.

Если после проверки работоспособности слота репликации я отключаю standby, то после его включения данные с мастера подгружаются. Здесь проблем нет никаких.

После того, как я отключаю master, согласно мануалу http://www.postgresql.org/docs/9.0/static/warm-standby-failover.html я должен на standby создать триггер-файл, который даст знать ноде, что она из standby переквалифицировалась в master.

Соответственно, на етой единственной оставшейся ноде я провожу какие-либо действия CREATE, INSERT и пр., изменяющие базу, и жду восстановления бывшего master-а.

Я запустил master. На рабочей ноде автоматически удаляется триггер-файл, а recovery.conf переименовывается в recovery.done. OK. Что дальше?

Мастер пока не синхронизирован, содержит старые данные, репликация, понятное дело, не работает. В мануалах советуют восстановление всего в три шага:

- pg_start_backup на рабочей ноде, временно выполняющую функции мастера

- rsync папки данных с рабочей базы в устаревшую (кроме postgresql.conf, postmaster.pid, postmaster.opts, pg_log/, recovery.done, pg_xlog/)

- pg_stop_backup на той ноде, на которой мы первую команду делали. На данном етапе я получаю NOTICE: WAL archiving is not enabled; you must ensure that all required WAL segments are copied through other means to complete the backup

http://dba.stackexchange.com/questions/83655/postgresql-streaming-replication...

http://habrahabr.ru/post/213409/

Но после етого у меня мастер просто не запускается. Говорит FATAL: could not locate required checkpoint record

В чём ошибка? Я проделываю ети операции вручную, потому что хочу понять, как работает восстановление. pgpool мне уже вынес мозг своими возможностями и кучей скриптов и функций, половины которых я пока не совсем понимаю. Хочу пока изучить, как мастер восстанавливается вручную, а затем снова взятся за pgpool.

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.