在尝试实现一个双节点故障转移群集时,我遇到了以下问题,使用Hetzner作为主机提供商。
我的corosync.conf如下:
# Please read the corosync.conf.5 manual page
compatibility: whitetank
totem {
version: 2
secauth: off
interface {
member {
memberaddr: 144.76.91.XXX
}
member {
memberaddr: 5.9.121.XXX
}
ringnumber: 0
bindnetaddr: 5.9.121.0
mcastport: 5405
ttl: 1
}
transport: udpu
}
logging {
fileline: off
to_logfile: yes
to_syslog: yes
debug: on
logfile: /var/log/cluster/corosync.log
debug: off
timestamp: on
logger_subsys {
subsys: AMF
debug: off
}
}‘问题是5.9.121.XXX绑定正确(并在crm_mon下显示为集群的一部分)
udp 0 0 5.9.121.XXX:5405 0.0.0.0:* 8281/cor产c
但是144.76.91.XXX失败并绑定到本地主机。
udp 0 0 127.0.0.1:5405 0.0.0.0:* 7889/cor产c
对tcpdump日志的分析表明,144.76.91.XXX答复了5.9.121.XXX,ICMP类型为3(目标不可达),代码3(端口不可达)。
-f输出将反复打印:
6月24日12:53:28由于操作系统或网络故障,图腾图腾无法形成集群。此消息最常见的原因是本地防火墙配置不当。
UDP通信在2台主机之间启用,目前没有防火墙,我使用的是Debian (因此没有SELinux)。
关于这个问题之间的工作有什么想法吗?是否有可能在不同的子网上创建一个带有2台机器的集群,还是需要在同一子网中订购服务器?谢谢您的回复。
发布于 2013-06-26 07:31:43
在邮件列表(解决了我的问题)中,丹·弗里斯库表示:
“您不应该在两个地方使用相同的bindnetaddr,它只在节点级别与UDPU相关(您的用例)。在您拥有144.*地址的节点上,使用它作为bindnetaddr。”
希望这对某人有用。
https://serverfault.com/questions/518069
复制相似问题