Hi all, <br><br>I&#39;m getting troubles with a Pacemaker+DRBD 2 nodes cluster. I am trying to solve it for about a week, I really need help!!! <br>If I disconnect power cord the failover works great, resources migrate to secondary node and back to primary when I turn it on.<br>
But when turn off primary node with a &quot;shutdown -r now&quot; command, I always finish with a split brian. <span id="result_box" class="short_text"><span style="background-color: rgb(255, 255, 255);" title="pero esto no es todo">That&#39;s not all</span></span>, If a put just a few resources (for example: virtual IP, DRBD, Apache and PostgreSQL) split brain does not take place, but at the moment I put 8 or 9 resources (specially when one of those resources is JBoss AS) I always get split brain...<br>
<span id="result_box" class="short_text"><span style="background-color: rgb(255, 255, 255);" title="alguien puede darme alguna pista?">Can someone give me some hints?</span></span><br><br>My systems are:<br><br>OS: Debian Lenny 2.6.26-2-686<br>
Corosync 1.1.2<br>DRBD 8.3.6<br><br>And my configuration files are:<br><br>/etc/corosync/corosync.conf<br><br># Please read the openais.conf.5 manual page<br>totem {<br>        version: 2<br>        # How long before declaring a token lost (ms)<br>
        token: 3000<br>        # How many token retransmits before forming a new configuration<br>        token_retransmits_before_loss_const: 10<br>        # How long to wait for join messages in the membership protocol (ms)<br>
        join: 60<br>        # How long to wait for consensus to be achieved before starting a new round of membership configuration (ms)<br>        consensus: 1500<br>        # Turn off the virtual synchrony filter<br>        vsftype: none<br>
        # Number of messages that may be sent by one processor on receipt of the token<br>        max_messages: 20<br>        # Limit generated nodeids to 31-bits (positive signed integers)<br>        clear_node_high_bit: yes<br>
        # Disable encryption<br>        secauth: on<br>        # How many threads to use for encryption/decryption<br>        threads: 0<br>        # Optionally assign a fixed node id (integer)<br>        # nodeid: 1234<br>
        # This specifies the mode of redundant ring, which may be none, active, or passive.<br>        rrp_mode: passive<br>        interface {<br>                # The following values need to be set based on your environment<br>
                ringnumber: 0<br>                bindnetaddr: 172.16.1.0<br>                mcastaddr: 226.94.1.1<br>                mcastport: 5405<br>        }<br>        interface {<br>                # The following values need to be set based on your environment<br>
                ringnumber: 1<br>                bindnetaddr: 10.186.68.0<br>                mcastaddr: 226.94.2.1<br>                mcastport: 5405<br>        }<br>}<br>amf {<br>        mode: disabled<br>}<br>service {<br>
        # Load the Pacemaker Cluster Resource Manager<br>        ver:       0<br>        name:      pacemaker<br>}<br>aisexec {<br>        user:   root<br>        group:  root<br>}<br>logging {<br>    to_stderr: yes<br>    debug: on<br>
    timestamp: on<br>    to_file: yes<br>    logfile: /var/log/corosync.log<br>    to_syslog: no<br>    syslog_facility: daemon<br>}<br>}<br><br><br>/etc/drbd.conf<br><br>global {<br>    usage-count yes;<br>}<br>common {<br>
    syncer { rate 33M; }<br>}<br>resource r0 {<br>    protocol C;<br>    handlers {<br>       pri-on-incon-degr &quot;/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b &gt; /proc/sysrq-trigger ; reboot -f&quot;;<br>
       pri-lost-after-sb &quot;/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b &gt; /proc/sysrq-trigger ; reboot -f&quot;;<br>       local-io-error &quot;/usr/lib/drbd/notify-io-error.sh; /usr/lib/drbd/notify-emergency-shutdown.sh; echo o &gt; /proc/sysrq-trigger ; halt -f&quot;;<br>
       fence-peer &quot;/usr/lib/drbd/crm-fence-peer.sh&quot;;<br>       after-resync-target &quot;/usr/lib/drbd/crm-unfence-peer.sh&quot;;<br>       outdate-peer &quot;/usr/lib/drbd/outdate-peer.sh&quot;;<br>       split-brain &quot;/usr/lib/drbd/notify-split-brain.sh root@localhost&quot;;<br>
    }<br>    startup {<br>        degr-wfc-timeout 30;<br>        wfc-timeout 30;<br>    }<br>    disk {<br>        fencing resource-only;<br>        on-io-error   detach;<br>    }<br>    net {<br>        after-sb-0pri disconnect;<br>
        after-sb-1pri disconnect;<br>        after-sb-2pri disconnect;<br>        rr-conflict disconnect;<br>    }<br><br>    on primary {<br>        device     /dev/drbd0;<br>        disk       /dev/vg00/drbd;<br>        address    <a href="http://172.16.1.1:7788">172.16.1.1:7788</a>;<br>
        meta-disk  internal;<br>    }<br>    on secondary {<br>        device     /dev/drbd0;<br>        disk       /dev/vg00/drbd;<br>        address    <a href="http://172.16.1.2:7788">172.16.1.2:7788</a>;<br>        meta-disk  internal;<br>
    }<br>}<br><br><br>and my crm config<br><br>&lt;configuration&gt;<br>    &lt;crm_config&gt;<br>      &lt;cluster_property_set id=&quot;cib-bootstrap-options&quot;&gt;<br>        &lt;nvpair id=&quot;cib-bootstrap-options-no-quorum-policy&quot; name=&quot;no-quorum-policy&quot; value=&quot;ignore&quot;/&gt;<br>
        &lt;nvpair id=&quot;cib-bootstrap-options-stonith-enabled&quot; name=&quot;stonith-enabled&quot; value=&quot;false&quot;/&gt;<br>        &lt;nvpair id=&quot;cib-bootstrap-options-expected-quorum-votes&quot; name=&quot;expected-quorum-votes&quot; value=&quot;2&quot;/&gt;<br>
        &lt;nvpair id=&quot;cib-bootstrap-options-last-lrm-refresh&quot; name=&quot;last-lrm-refresh&quot; value=&quot;1261424411&quot;/&gt;<br>        &lt;nvpair id=&quot;cib-bootstrap-options-dc-version&quot; name=&quot;dc-version&quot; value=&quot;1.0.6-cebe2b6ff49b36b29a3bd7ada1c4701c7470febe&quot;/&gt;<br>
        &lt;nvpair id=&quot;cib-bootstrap-options-cluster-infrastructure&quot; name=&quot;cluster-infrastructure&quot; value=&quot;openais&quot;/&gt;<br>      &lt;/cluster_property_set&gt;<br>    &lt;/crm_config&gt;<br>    &lt;nodes&gt;<br>
      &lt;node uname=&quot;primary&quot; type=&quot;normal&quot; id=&quot;primary&quot;&gt;<br>        &lt;instance_attributes id=&quot;nodes-primary&quot;&gt;<br>          &lt;nvpair name=&quot;standby&quot; id=&quot;nodes-primary-standby&quot; value=&quot;off&quot;/&gt;<br>
        &lt;/instance_attributes&gt;<br>      &lt;/node&gt;<br>      &lt;node uname=&quot;secondary&quot; type=&quot;normal&quot; id=&quot;secondary&quot;&gt;<br>        &lt;instance_attributes id=&quot;nodes-secondary&quot;&gt;<br>
          &lt;nvpair name=&quot;standby&quot; id=&quot;nodes-secondary-standby&quot; value=&quot;off&quot;/&gt;<br>        &lt;/instance_attributes&gt;<br>      &lt;/node&gt;<br>    &lt;/nodes&gt;<br>    &lt;resources&gt;<br>
      &lt;master id=&quot;ms-drbd&quot;&gt;<br>        &lt;meta_attributes id=&quot;ms-drbd-meta_attributes&quot;&gt;<br>          &lt;nvpair id=&quot;ms-drbd-meta_attributes-master-max&quot; name=&quot;master-max&quot; value=&quot;1&quot;/&gt;<br>
          &lt;nvpair id=&quot;ms-drbd-meta_attributes-master-node-max&quot; name=&quot;master-node-max&quot; value=&quot;1&quot;/&gt;<br>          &lt;nvpair id=&quot;ms-drbd-meta_attributes-clone-max&quot; name=&quot;clone-max&quot; value=&quot;2&quot;/&gt;<br>
          &lt;nvpair id=&quot;ms-drbd-meta_attributes-clone-node-max&quot; name=&quot;clone-node-max&quot; value=&quot;1&quot;/&gt;<br>          &lt;nvpair id=&quot;ms-drbd-meta_attributes-notify&quot; name=&quot;notify&quot; value=&quot;true&quot;/&gt;<br>
          &lt;nvpair id=&quot;ms-drbd-meta_attributes-globally-unique&quot; name=&quot;globally-unique&quot; value=&quot;false&quot;/&gt;<br>          &lt;nvpair name=&quot;target-role&quot; id=&quot;ms-drbd-meta_attributes-target-role&quot; value=&quot;Started&quot;/&gt;<br>
        &lt;/meta_attributes&gt;<br>        &lt;primitive class=&quot;ocf&quot; id=&quot;drbd&quot; provider=&quot;linbit&quot; type=&quot;drbd&quot;&gt;<br>          &lt;instance_attributes id=&quot;drbd-instance_attributes&quot;&gt;<br>
            &lt;nvpair id=&quot;drbd-instance_attributes-drbd_resource&quot; name=&quot;drbd_resource&quot; value=&quot;r0&quot;/&gt;<br>          &lt;/instance_attributes&gt;<br>          &lt;operations&gt;<br>            &lt;op id=&quot;drbd-monitor-59s&quot; interval=&quot;59s&quot; name=&quot;monitor&quot; role=&quot;Master&quot; timeout=&quot;30s&quot;/&gt;<br>
            &lt;op id=&quot;drbd-monitor-60s&quot; interval=&quot;60s&quot; name=&quot;monitor&quot; role=&quot;Slave&quot; timeout=&quot;30s&quot;/&gt;<br>            &lt;op id=&quot;drbd-start-0s&quot; interval=&quot;0s&quot; name=&quot;start&quot; start-delay=&quot;10s&quot;/&gt;<br>
            &lt;op id=&quot;drbd-promote-0s&quot; interval=&quot;0s&quot; name=&quot;promote&quot; start-delay=&quot;10s&quot;/&gt;<br>          &lt;/operations&gt;<br>        &lt;/primitive&gt;<br>      &lt;/master&gt;<br>
      &lt;group id=&quot;p-group&quot;&gt;<br>        &lt;primitive class=&quot;ocf&quot; id=&quot;fs&quot; provider=&quot;heartbeat&quot; type=&quot;Filesystem&quot;&gt;<br>          &lt;instance_attributes id=&quot;fs-instance_attributes&quot;&gt;<br>
            &lt;nvpair id=&quot;fs-instance_attributes-fstype&quot; name=&quot;fstype&quot; value=&quot;ext3&quot;/&gt;<br>            &lt;nvpair id=&quot;fs-instance_attributes-directory&quot; name=&quot;directory&quot; value=&quot;/drbd&quot;/&gt;<br>
            &lt;nvpair id=&quot;fs-instance_attributes-device&quot; name=&quot;device&quot; value=&quot;/dev/drbd0&quot;/&gt;<br>          &lt;/instance_attributes&gt;<br>          &lt;meta_attributes id=&quot;fs-meta_attributes&quot;&gt;<br>
            &lt;nvpair id=&quot;fs-meta_attributes-is-managed&quot; name=&quot;is-managed&quot; value=&quot;true&quot;/&gt;<br>          &lt;/meta_attributes&gt;<br>        &lt;/primitive&gt;<br>        &lt;primitive class=&quot;ocf&quot; id=&quot;ip&quot; provider=&quot;heartbeat&quot; type=&quot;IPaddr2&quot;&gt;<br>
          &lt;instance_attributes id=&quot;ip-instance_attributes&quot;&gt;<br>            &lt;nvpair id=&quot;ip-instance_attributes-ip&quot; name=&quot;ip&quot; value=&quot;10.186.68.1&quot;/&gt;<br>            &lt;nvpair id=&quot;ip-instance_attributes-broadcast&quot; name=&quot;broadcast&quot; value=&quot;10.186.68.127&quot;/&gt;<br>
            &lt;nvpair id=&quot;ip-instance_attributes-cidr_netmask&quot; name=&quot;cidr_netmask&quot; value=&quot;25&quot;/&gt;<br>          &lt;/instance_attributes&gt;<br>          &lt;operations&gt;<br>            &lt;op id=&quot;ip-monitor-10s&quot; interval=&quot;10s&quot; name=&quot;monitor&quot;/&gt;<br>
          &lt;/operations&gt;<br>        &lt;/primitive&gt;<br>        &lt;primitive class=&quot;heartbeat&quot; id=&quot;drbdlinks&quot; type=&quot;drbdlinks&quot;&gt;<br>          &lt;operations&gt;<br>            &lt;op id=&quot;drbdlinks-monitor-60s&quot; interval=&quot;60s&quot; name=&quot;monitor&quot;/&gt;<br>
          &lt;/operations&gt;<br>        &lt;/primitive&gt;<br>        &lt;primitive class=&quot;ocf&quot; id=&quot;postgresql&quot; provider=&quot;heartbeat&quot; type=&quot;pgsql&quot;&gt;<br>          &lt;instance_attributes id=&quot;postgresql-instance_attributes&quot;&gt;<br>
            &lt;nvpair id=&quot;postgresql-instance_attributes-pgctl&quot; name=&quot;pgctl&quot; value=&quot;/usr/lib/postgresql/8.3/bin/pg_ctl&quot;/&gt;<br>            &lt;nvpair id=&quot;postgresql-instance_attributes-psql&quot; name=&quot;psql&quot; value=&quot;/usr/bin/psql&quot;/&gt;<br>
            &lt;nvpair id=&quot;postgresql-instance_attributes-pgdata&quot; name=&quot;pgdata&quot; value=&quot;/var/lib/postgresql/8.3/main&quot;/&gt;<br>            &lt;nvpair id=&quot;postgresql-instance_attributes-pgdba&quot; name=&quot;pgdba&quot; value=&quot;postgres&quot;/&gt;<br>
            &lt;nvpair id=&quot;postgresql-instance_attributes-pgdb&quot; name=&quot;pgdb&quot; value=&quot;postgres&quot;/&gt;<br>            &lt;nvpair id=&quot;postgresql-instance_attributes-logfile&quot; name=&quot;logfile&quot; value=&quot;/var/log/postgresql/postgresql-8.3-main.log&quot;/&gt;<br>
          &lt;/instance_attributes&gt;<br>          &lt;operations&gt;<br>            &lt;op id=&quot;postgresql-monitor-60s&quot; interval=&quot;60s&quot; name=&quot;monitor&quot; timeout=&quot;30s&quot;/&gt;<br>          &lt;/operations&gt;<br>
        &lt;/primitive&gt;<br>        &lt;primitive class=&quot;ocf&quot; id=&quot;asterisk&quot; provider=&quot;custom&quot; type=&quot;Asterisk&quot;&gt;<br>          &lt;operations&gt;<br>            &lt;op id=&quot;asterisk-monitor-60s&quot; interval=&quot;60s&quot; name=&quot;monitor&quot; start-delay=&quot;30s&quot; timeout=&quot;30s&quot;/&gt;<br>
          &lt;/operations&gt;<br>        &lt;/primitive&gt;<br>        &lt;primitive class=&quot;lsb&quot; id=&quot;postfix&quot; type=&quot;postfix&quot;/&gt;<br>        &lt;primitive class=&quot;ocf&quot; id=&quot;apache2&quot; provider=&quot;heartbeat&quot; type=&quot;apache&quot;&gt;<br>
          &lt;instance_attributes id=&quot;apache2-instance_attributes&quot;&gt;<br>            &lt;nvpair id=&quot;apache2-instance_attributes-configfile&quot; name=&quot;configfile&quot; value=&quot;/etc/apache2/apache2.conf&quot;/&gt;<br>
          &lt;/instance_attributes&gt;<br>          &lt;operations&gt;<br>            &lt;op id=&quot;apache2-monitor-60s&quot; interval=&quot;60s&quot; name=&quot;monitor&quot;/&gt;<br>          &lt;/operations&gt;<br>        &lt;/primitive&gt;<br>
        &lt;primitive class=&quot;lsb&quot; id=&quot;dhcp&quot; type=&quot;dhcp3-server&quot;/&gt;<br>        &lt;primitive class=&quot;ocf&quot; id=&quot;jboss&quot; provider=&quot;custom&quot; type=&quot;JBoss&quot;&gt;<br>
          &lt;instance_attributes id=&quot;jboss-instance_attributes&quot;&gt;<br>            &lt;nvpair id=&quot;jboss-instance_attributes-java_home&quot; name=&quot;java_home&quot; value=&quot;/opt/java/&quot;/&gt;<br>            &lt;nvpair id=&quot;jboss-instance_attributes-jboss_home&quot; name=&quot;jboss_home&quot; value=&quot;/opt/jboss&quot;/&gt;<br>
          &lt;/instance_attributes&gt;<br>          &lt;operations&gt;<br>            &lt;op id=&quot;jboss-monitor-60s&quot; interval=&quot;60s&quot; name=&quot;monitor&quot; start-delay=&quot;100s&quot; timeout=&quot;30s&quot;/&gt;<br>
            &lt;op id=&quot;jboss-start-0s&quot; interval=&quot;0s&quot; name=&quot;start&quot; timeout=&quot;99s&quot;/&gt;<br>          &lt;/operations&gt;<br>        &lt;/primitive&gt;<br>      &lt;/group&gt;<br>    &lt;/resources&gt;<br>
    &lt;constraints&gt;<br>      &lt;rsc_colocation id=&quot;p-group-on-ms-drbd&quot; rsc=&quot;p-group&quot; score=&quot;INFINITY&quot; with-rsc=&quot;ms-drbd&quot; with-rsc-role=&quot;Master&quot;/&gt;<br>      &lt;rsc_location id=&quot;ms-drbd-master-on-primary&quot; rsc=&quot;ms-drbd&quot;&gt;<br>
        &lt;rule id=&quot;ms-drbd-master-on-primary-rule&quot; role=&quot;Master&quot; score=&quot;100&quot;&gt;<br>          &lt;expression attribute=&quot;#uname&quot; id=&quot;ms-drbd-master-on-primary-expression&quot; operation=&quot;eq&quot; value=&quot;primary&quot;/&gt;<br>
        &lt;/rule&gt;<br>      &lt;/rsc_location&gt;<br>      &lt;rsc_order first=&quot;ms-drbd&quot; first-action=&quot;promote&quot; id=&quot;ms-drbd-before-group&quot; score=&quot;INFINITY&quot; then=&quot;p-group&quot; then-action=&quot;start&quot;/&gt;<br>
    &lt;/constraints&gt;<br>    &lt;rsc_defaults/&gt;<br>    &lt;op_defaults/&gt;<br>  &lt;/configuration&gt;<br><br>Thanks in advance.<br>Andres.<br><br>