Perda de sincronização do cluster Corosync / Pacemaker

3

Estou enfrentando um problema com o software de cluster do corosync e do marcapasso. Eu tenho dois nós virtuais (Scientific Linux 6.4) e corosync / pacemaker instalados neles:

corosync-1.4.1-17.el6.x86_64 pacemaker-1.1.10-14

O arquivo de configuração do corosync é:

compatibility: whitetank

totem {
    token: 5000
    token_retransmits_before_loss_const: 4
    vsftype: none
    version: 2
    secauth: off
    threads: 0
    interface {
        ringnumber: 0
        bindnetaddr: 192.168.122.0
        mcastaddr: 226.94.1.1
        mcastport: 4000
        ttl: 1
    }
}

logging {
    fileline: off
    to_stderr: no
    to_logfile: yes
    to_syslog: yes
    logfile: /var/log/cluster/corosync.log
    debug: off
    timestamp: on
    logger_subsys {
        subsys: AMF
        debug: off
    }
}

amf {
    mode: disabled
}

service {
        # Load the Pacemaker Cluster Resource Manager
        name: pacemaker
        ver:  1
}

aisexec {
        user:   root
        group:  root
}

O marcapasso está configurado para ignorar o quorum ausente e com outras duas coisas:

crm configure property no-quorum-policy="ignore" pe-warn-series-max="1000" pe-input-series-max="1000" pe-error-series-max="1000" cluster-recheck-interval="1min"
crm configure rsc_defaults resource-stickiness=100
crm configure property stonith-enabled=false

Eu criei um recurso IPAddr2 na configuração do marcapasso:

$ ~>crm configure show p_api-ip
INFO: object cli-prefer-p_api-ip cannot be represented in the CLI notation
INFO: object cli-prefer-g_openstack cannot be represented in the CLI notation
primitive p_api-ip ocf:heartbeat:IPaddr2 \
    params ip="192.168.122.202" cidr_netmask="24" nic="eth0" \
    op monitor interval="15s"

Em seguida, criei outro recurso p_myres, que gerencia um daemon de servidor. Os recursos p_api-ip e p_myres estão agrupados:

[root@openstack1 ~]# crm configure show g_myres
INFO: object cli-prefer-p_api-ip cannot be represented in the CLI notation
INFO: object cli-prefer-g_myres cannot be represented in the CLI notation
group g_myres p_api-ip p_myres

Quando eu inicio o grupo de recursos g_myres, tudo funciona bem, mas o fato é que não consigo migrar o grupo g_myres para o outro nó; o comando "recurso do crm migrar g_myres node2" simplesmente não faz nada e não vejo nada relevante no syslog.

Mas esse não é o pior problema que eu tenho ...

Se eu apenas reiniciar ou desligar um dos dois nós, o cluster se comporta corretamente: o recurso é migrado para o outro nó, o crm_mon mostra que o nó reinicializado / desligado está OFFLINE.

Se eu interromper a comunicação entre eles por um tempo, por exemplo eu emito "service network stop" e após 3 minutos "service network start" no primeiro nó, o segundo nó migra o grupo de recursos g_myres (incluindo o Virtual IP ) para si depois de um tempo; e se eu tentar conectar-me ao IP virtual, aterre corretamente no segundo nó, como esperado. Quando o primeiro nó volta a ficar online, o segundo não percebe isso; O crm_mon continua mostrando o primeiro nó como OFFLINE, o grupo de recursos g_myres continua no segundo nó, mas também no primeiro! o IP Virtual também está nos dois nós!

Existe alguma coisa na configuração do corosync (e / ou marca-passo) que devo verificar?

    
por user1131951 11.12.2013 / 18:01

0 respostas