|
Repmgr: This node is marked as inactive and cannot be used for failover
|
|||
---|---|---|---|
#18+
Привет всем! Спасибо, что создали такой замечательный ресурс, где можно задать вопрос по Postgres и получить ответ, а также есть кого спросить при чем на робном языке :). Соственно сабж: MASTER CONFIG: авторfailover=automatic follow_command='repmgr standby follow -f /etc/repmgr.conf --log-to-file' cluster=cluster1 node=1 node_name=master1 conninfo='host=master1 port=3432 user=repmgr dbname=repmgr' master_response_timeout=30 pg_bindir=/usr/local/bin/ service_start_command = systemctl start postgresql-9.6 service_stop_command = systemctl stop postgresql-9.6 service_restart_command = systemctl restart postgresql-9.6 STANDBY CONFIG: авторfailover=automatic follow_command='repmgr standby follow -f /etc/repmgr.conf --log-to-file' cluster=cluster1 node=2 node_name=slave1 conninfo='host=slave1 port=3432 user=repmgr dbname=repmgr' master_response_timeout=30 pg_bindir=/usr/local/bin/ service_start_command = systemctl start postgresql-9.6 service_stop_command = systemctl stop postgresql-9.6 service_restart_command = systemctl restart postgresql-9.6 REPMGR LOG: авторNOW THE ERROR ON STANDBY: [ERROR] This node is marked as inactive and cannot be used for failover Репликацией занимаюсь первый раз, да и с самим постгрес "общаюсь" на Вы и шепотом :), поэтому во многих вещах нуждаюсь в вашем опытном совете. Итак что я сделал: настроил мастер, натсроил слейв, грохнул базу слейва, скопировал на него базу мастера, запустил базу на слейве, зарегистрировал с горем пополам слейва(не сразу допер что в конфиге в качестве host нужно присваивать кастомное имя, которому нужно назначить ip в /etc/hosts, - для локалхоста - локалхост, для удаленного сервера его ip, типо вот так: etc/hosts мастера: автор127.0.0.1 master1 123.123.123.123 slave1 etc/hosts слейва: автор127.0.0.1 slave1 123.123.123.124 master1 Дальше нужно было разобраться с портами и тут я приуныл :) потому что у меня они во первых не стандартные, во вторых находятся за nat, и тут я вспомнил что существует такая замечательная штука как iptables и прописал в ней следующие параметры: Для мастера: авторiptables -t nat -A OUTPUT -d slave1 -p tcp -m tcp --dport 3432 -j DNAT --to-destination 123.123.123.123:13432 Для слейва: авторiptables -t nat -A OUTPUT -d master1 -p tcp -m tcp --dport 3432 -j DNAT --to-destination 123.123.123.124:13432 Наконец у меня получилось зарегистрировать слейва в кластере, но и тут поджидала беда и в логах repmgrd слейва я получил следующую ошибку: авторThis node is marked as inactive and cannot be used for failover Итак господа! Ваши предположения, что это может быть? Что я криво настроил, почему слейв видит мастера, а мастер не видит слейва? Сразу отвечу: что проброс портов настроен правильно, а также настроены ключи. PS: может быть мне стоит попробовать осуществить реплику через pgpool или другую утилиту? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.08.2017, 23:07 |
|
Repmgr: This node is marked as inactive and cannot be used for failover
|
|||
---|---|---|---|
#18+
gremlintv2, а у вас точно репликация то заработала? посмотрите что показывает запрос "select * from pg_stat_replication" на мастере ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2017, 13:20 |
|
|
start [/forum/topic.php?fid=53&fpage=68&tid=1996301]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
33ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
34ms |
get tp. blocked users: |
2ms |
others: | 15ms |
total: | 132ms |
0 / 0 |