在DRBD和Pacemaker集群上分割大脑

我想考虑一下目前我们的主动 – 被动群集(DRBD,Pacemaker,Corosync,PostgreSQL)发生的情况,

操作系统:Ubuntu服务器14.04 x64 DRBD:8.4起搏器:1.1.10 Corosync:2.3.3 PostgreSQL:9.3

这是一个问题:当小学生倒下时,中学被选为主要的。 问题出现在重新介绍以前的小学的时候,它直接进入了一个裂脑的情况,而应该成为一个二级代替。 以下是详细的事件顺序和相应的日志:

A:小学,B:中学

1 – A下降

2 – B成为主要

3- A重新开始 – > SPLIT BRAIN(我们推测在这种情况下,故障转移可以自动完成)

来自A的LOGS:

Jan 28 16:15:11 node1 kernel: [ 538.025422] block drbd0: helper command: /sbin/drbdadm initial-split-brain minor-0 Jan 28 16:15:11 node1 kernel: [ 538.026185] block drbd0: helper command: /sbin/drbdadm initial-split-brain minor-0 exit code 0 (0x0) Jan 28 16:15:11 node1 kernel: [ 538.026194] block drbd0: Split-Brain detected but unresolved, dropping connection! 

DRBD状态:

 service drbd status drbd driver loaded OK; device status: version: 8.4.3 (api:1/proto:86-101) srcversion: F97798065516C94BE0F27DC m:res cs ro ds p mounted fstype 0:pg StandAlone Secondary/Unknown Consistent/DUnknown r----- 

AFAIS似乎DRBD打破了这个节点的状态。

我的问题是:

1-我的假设是正确的,在事件3,返回节点可以自动联合到集群

2-如果可以做的话,请告诉我。

1-我的假设是正确的,在事件3,返回节点可以自动联合到集群?

是的,这可以做到。 除非在资源configuration中告知DRBD,否则DRBD不应自行进入主节点; 检查在资源configuration中没有设置'startup {become-primary-on}'定义。

2-如果可以做的话,请告诉我。

检查下列情况是否属实:

一个。 'drbd'未设置为在启动时启动(RHEL中的'chkconfig drbd off',Debian中的'update-rc.d drbd disable')。

湾 DRBD不应该被configuration成自己成为主要的(如上所述)。

DRBD用户指南有一个关于configurationDRBD与Pacemaker一起使用的部分,如果我上面的回答没有做到这一点,可能会有所帮助: https : //drbd.linbit.com/users-guide/ch-pacemaker.html