Divisão do cérebro no cluster DRBD e Pacemaker

1

Eu quero colocar em sua consideração a seguinte situação que está acontecendo atualmente em nosso cluster ativo-passivo (DRBD, Pacemaker, Corosync, PostgreSQL)

SO: servidor Ubuntu 14.04 x64 DRBD: 8,4 Marcapasso: 1.1.10 Corosync: 2.3.3 PostgreSQL: 9.3

Aqui está o problema: Quando a primária desce, o secundário é eleito como primário. O problema surge no momento da reintrodução do primário anterior, ele vai diretamente para uma situação de cérebro dividido quando deveria se tornar um secundário em seu lugar. Aqui está a sequência detalhada de eventos e respectivos registros:

A: Primária, B: Secundária

1 - A desce

2 - B torna-se PRIMÁRIO

3 - A começa novamente - > SPLIT BRAIN (Presumimos que neste caso o failover poderia ser feito automaticamente)

LOGS de A:

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!

status do 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 parece que o DRBD quebrou o estado deste nó.

Minhas perguntas são:

1- É minha suposição correta que no evento 3, o nó de retorno possa ser automaticamente conectado ao cluster?

2- Se isso puder ser feito, por favor diga como.

    
por Carlos Castellanos 28.01.2015 / 17:43

1 resposta

2

1- Is my assumption correct that on event 3, the returning node can be automatically joint to the cluster?

Sim, isso pode ser feito. O DRBD não deve ir à Primária por conta própria, a menos que seja informado na configuração de recursos; Verifique se a definição 'startup {become-primary-on}' não está definida nas configurações do recurso.

2- If it can be done, please tell how.

Verifique se as seguintes afirmações são verdadeiras:

a. 'drbd' não está configurado para iniciar na inicialização ('chkconfig drbd off' no RHEL, 'update-rc.d drbd disable' no Debian).

b. O DRBD não deve ser configurado para se tornar primário por conta própria (como mencionado acima).

O guia do usuário do DRBD tem uma seção sobre como configurar o DRBD para uso com o Pacemaker que pode ajudar se a minha resposta acima não der certo: link

    
por 29.01.2015 / 00:42