我想在云环境中构建Postgresql集群(是的,我知道这是一个坏主意......但这不是问题)。 为了您的信息,我使用Dockerized Postgresql(请参阅:https://github.com/paunin/postgres-docker-cluster)但这不是问题而不是问题。
所以我已经安装了2个带流式复制的Postgresql 9.5。 在每台主机上,我安装并正确配置了repmgr 3.2.1。
以下案例存在一些问题:
repmgr cluster show
显示的群集中有2个主人,我找不到任何解决办法迫使旧主人成为奴隶。我找到的唯一丑陋的解决方案是删除旧主服务器的所有数据并重新启动它。这样做,它就像预期的那样成了奴隶(但需要一个完整的resynchro ......)。
请注意,似乎无法强迫旧主人成为奴隶。 repmgr standby register
无法正常工作:
[2016-12-06 15:04:04] [INFO] connecting to standby database
[2016-12-06 15:04:04] [ERROR] this node should be a standby (user=replication_user password=replication_pass host=psg-host21 dbname=replication_db port=5432 connect_timeout=2)
[2016-12-06 15:04:04] [INFO] connecting to database
Role | Name | Upstream | Connection String
----------+------------|------------|------------------------------------------------------------------------------------------------------------------
* master | psg-host21 | | user=replication_user password=replication_pass host=psg-host21 dbname=replication_db port=5432 connect_timeout=2
* master | psg-host22 | psg-host21 | user=replication_user password=replication_pass host=psg-host22 dbname=replication_db port=5432 connect_timeout=2
非常感谢任何帮助。