添加

添加

我在 CentOS 7 上创建了两个节点:

  • 节点1:192.168.0.1
  • 节点2:192.168.0.2

安装这样的工具:

# yum install -y pacemaker corosync pcs crmsh

还使用 HAProxy 进行负载均衡。

一切准备就绪后,我重启了 node1 来测试高可用性。当 node1 启动时,从这种方式只能看到一个节点:

# pcs status corosync

这样可以看到两个节点:

# crm status

但另外一个是UNCLEAN

Stack: corosync
Current DC: node1 (version 1.1.15-11.el7_3.5-e174ec8) - partition WITHOUT quorum

2 nodes and 0 resources configured

Node node2: UNCLEAN (offline)
Online: [ node1 ]

No resources

从node2检查状态,另一个也是UNCLEAN

Stack: corosync
Current DC: node2 (version 1.1.15-11.el7_3.5-e174ec8) - partition WITHOUT quorum

2 nodes and 0 resources configured

Node node1: UNCLEAN (offline)
Online: [ node2 ]

No resources

如何处理?


添加

我这样做了:

# pcs property set stonith-enabled=false

corosync 配置:

totem {
    version: 2
    secauth: off
    cluster_name: lbcluster
    transport: udpu
}

nodelist {
    node {
        ring0_addr: node1
        nodeid: 1
    }

    node {
        ring0_addr: node2
        nodeid: 2
    }
}

quorum {
    provider: corosync_votequorum
    two_node: 1
}

logging {
    to_logfile: yes
    logfile: /var/log/cluster/corosync.log
    to_syslog: yes
}

答案1

让 UDP 5404 和 5405 通过防火墙;这些是 Corosync 默认要用于通信的端口。

相关内容