Задержка главного подчиненного (активировать синхронную фиксацию) и pg_xlog на отдельном диске

Мы готовимся добавить repmgr в существующий кластер потоковой репликации Postgresql 9.3 с двумя узлами.

Ранее у нас была серьезная проблема, которая затрагивала наш основной бизнес, проблема заключалась в задержке между ведущим и ведомым устройствами, которую мы решили, изменив конфигурацию следующим образом:

основной конфиг postgresql:

archive_timeout = 60
synchronous_commit = on
synchronous_standby_names = 'slave1'
archive_command = 'test ! -f /walshare/%f && cp %p /walshare/%f'

ведомое recovery.conf:

standby_mode = 'on'
primary_conninfo = 'host=master port=5432 user=repuser password=xxx application_name=slave1'
restore_command = 'cp /walshare/%f "%p"' 

slave1 mount / walshare через NFS от мастера:

postgres@slave1:~$ mount -t nfs
master:/walshare on /walshare type nfs (rw,noatime,nolock,bg,nfsvers=4,intr,tcp,actimeo=1800,addr=xx.xx.xx.xx,clientaddr=xx.xx.xx.xx)

Через активацию синхронного коммита мы наконец решили проблему задержки между ведущим и ведомым.

Нет, мы хотим перенастроить текущий кластер для управления с помощью repmgr для упрощения задач администрирования и отработки отказа.

Я создал новую виртуальную машину (с PG-9.4) и планирую перенести базу данных из старого кластера в новый.

Чтобы избежать проблемы с дисковым пространством pg_xlog, я решил поместить каталог pg_xlog в отдельный логический том на той же группе томов, что и логический том PGDATA.

/dev/mapper/datavg-pgsqllv mounted on /var/lib/pgsql
/dev/mapper/datavg-pgxloglv mounted on /var/lib/pgsql/9.4/data/pg_xlog

Мои вопросы:

  1. Это repmgr изначально активировать синхронную фиксацию, или я должен добавить его вручную в мастер postgresql.conf?
  2. Если синхронная фиксация включена, Master не работает, если подчиненный не отвечает, как repmgr управляет ситуацией?
  3. Когда repmgr создает нового ведомого (мастер-клон), удаляет ли он /var/lib/pgsql/9.4/data/pg_xlog и воссоздает нового?
  4. Наличие pgsqllv и pgxloglv в одной группе томов не влияет на производительность ввода-вывода? я должен использовать посвященный диск для pg_xlog?
  5. Следуя официальной документации repmgr, wal_keep_segments = 5000, для которой требуется pg_xlog, требуется 80 ГБ, 80 ГБ - это исправление, или минимальное пространство, если я должен создать свой логический том, достаточно большой, на 100 ГБ, например, для увеличения пространства на диске управления pg_xlog?

благодарю за помощь,

1 ответ

Ответ уже дан в дискуссионной группе repmgr:

https://groups.google.com/forum/

Другие вопросы по тегам