先说两句题外话,我最早做了一年的Java程序员,然后公司需要转了Oracle的DBA,然后一直用了好几年的Oracle,最近发掘了Postgres,发现它真的是一个很有前途的产品。所以现在决定要深入研究下去。Postgres国内的资料,相比Oracle确实是比较少。所以看着几个社区大神们这么坚持,其实非常感动。看了前辈们分享的一些视频和文档,现在算是小入门。
回到正题,最近在docker环境下用Postgres-XL做集群。现在的结构是,两个主节点M1,M2,分别在两台物理C1,C2机的docker容器中;两个从节点S1,S2同样在docker容器中,做交叉备份,就是S2在C1上,S1在C2上。
现在模拟故障,把M1宕掉。手动把S2提升到主节点。也就是说,现在只有C2上的M2,M1'(其实是由S1提升上来的)。
那么,我现在要把M1修复,回到原本的2主2从结构,要怎么操作?或者有什么文章可以推荐的?(Postgres-XL的文档提供了把S1提升为M1'的操作,没有提供恢复的操作。)
PS:在网上找了一遍,发现只有Digoal先生介绍过在docker使用postgres的文章,这也是我跑到这里来提问的主要原因。原先是打算在docker中用Pacemaker+Corosync方案的,结果失败了,原因是docker里面用不了虚拟IP,是不是真的用不了?能否帮我解答一下呢?
docker有IP管理接口的,具体忘记了,但是肯定有。 所谓的虚拟IP就是随用户指定的主机或容器漂移的。 技术上是可以实现的。 你找一下对应的接口吧,和你用到的HA管理套件结合使用。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。