Eu tenho uma configuração simples do marcapasso / corosync de 3 nós. Ubuntu 14.04.2. 3 nós, 2 recursos - IPs - configurados.
ii crmsh 1.2.5+hg1034-1ubuntu4 all CRM shell for the pacemaker cluster manager
ii pacemaker 1.1.10+git20130802-1ubuntu2.3 amd64 HA cluster resource manager
ii pacemaker-cli-utils 1.1.10+git20130802-1ubuntu2.3 amd64 Command line interface utilities for Pacemaker
ii corosync 2.3.3-1ubuntu1 amd64 Standards-based cluster framework (daemon and modules)
ii libcorosync-common4 2.3.3-1ubuntu1 amd64 Standards-based cluster framework, common library
Funciona sem falhas, exceto, quando deixado por uma semana sem qualquer failover / reinicialização, o cluster pára de reagir a nós que estão morrendo. Eu consegui reproduzir a situação algumas vezes.
Quando eu reinicializo um nó, o comando crm status em outros nós mostra-o como "UP" (o id espera ver o estado DOWN no meio).
Se eu reiniciar outro nó, preferencialmente o DC, então acabarei com "sem quorum" no último nó - 2 de 3 estão temporariamente inativos.
Finalmente, quando os dois primeiros são inicializados novamente, o cluster fica saudável novamente.
Se, agora, eu reiniciar qualquer um dos 3 nós - instantaneamente eu posso ver o status do crm sendo atualizado com "DOWN" no nó dado. E isso funcionará nos próximos dias, até que se torne "obsoleto" novamente.
Alguém pode sugerir o que pode ser a causa disso? Cluster recém-reiniciado funciona perfeitamente, por alguns dias. Então o DC se torna ... "obsoleto" ??
grepping para 'corosync \ | pacemakerd \ | crmd \ | attrd' em syslogs não mostrou o problema (ou eu senti falta)
Devo agendar um reinício diário do corosync / pacemaker para evitar este estado estranho?
Aqui está o meu arquivo básico do corosync.conf:
totem {
version: 2
token: 3000
token_retransmits_before_loss_const: 10
join: 60
consensus: 3600
vsftype: none
max_messages: 20
clear_node_high_bit: yes
secauth: off
threads: 0
rrp_mode: none
interface {
ringnumber: 0
bindnetaddr: 10.20.0.0
mcastaddr: 226.94.1.1
mcastport: 5405
}
}
amf {
mode: disabled
}
quorum {
# Quorum for the Pacemaker Cluster Resource Manager
provider: corosync_votequorum
expected_votes: 2
}
aisexec {
user: root
group: root
}
logging {
fileline: off
to_stderr: yes
to_logfile: no
to_syslog: yes
syslog_facility: daemon
debug: off
timestamp: on
logger_subsys {
subsys: AMF
debug: off
tags: enter|leave|trace1|trace2|trace3|trace4|trace6
}
}