我正在尝试在由 VritualBox 创建的两个运行 openSUSE 12 的虚拟机上的 mysql Master-Master 复制上使用 pacemaker 启用故障转移策略。
我成功完成了 mysql 双主复制,似乎可以正常工作。服务器 A 的192.168.X.a
IP 为,而服务器 B 的 IP 为192.168.X.b
。我按照说明进行操作这里,所以基本上我的 corosync.conf 看起来像指南中介绍的那样,除了界面部分内容如下:
interface {
ringnumber: 0
bindnetaddr: 192.168.X.c
mcastaddr: 226.94.1.1
mcastport: 5405
ttl: 1
}
我的第一个问题是:到底是什么bindnetaddr:
?这是我集群的虚拟 IP 吗?如果不是,应该是其他节点的 IP 还是它自己的 IP?(我的意思是服务器的 IP 有此配置或其他服务器)
我的第二个问题是:它们是什么mcastaddr
以及mcastport
应该将它们设置为何值?
然后我尝试添加 MySQL 作为资源,因此我按照说明进行操作这里。但当我输入时,crm configure primitive ip_mysql ocf:heartbeat:IPaddr2 params ip="192.168.X.c"
我得到
crm configure primitive ip_my ocf:heartbeat:IPaddr2 params ip='192.168.114.8'
crm_verify[23888]: 2012/12/29_12:25:51 WARN: cluster_option: Using deprecated name
'stonith_enabled' for cluster option 'stonith-enabled'
Warnings found during check: config may not be valid
我的第三个问题是:params ip
向提供时configure primitive
,应该是虚拟 IP 吗?(文件中设置的那个corosync.conf
)
我的第四个问题是:我应该忽略警告吗?说实话,当我面对警告时,我没有继续前进,而且由于我有很多不确定性,我认为最好先确保我走在正确的道路上。
另一方面,如果有人能给我一个关于使用 Pacemaker/Corosync 和 mySQL 复制的简单/好的教程链接,我将不胜感激,而不是 DRDB 或使用 XtraDB 和...简单的双主复制...网络上的大多数教程都是针对 DRDB 和 XtraDB 或其他工具的。我知道程序应该是相同的(向 pacemaker 添加资源),但我无法从这些教程中提取出相似之处...
答案1
问题一的答案
bindnetaddr
是我们希望 pacemaker/corosync(?) 绑定到的网络地址。因此,如果您的服务器有A.B.C.x
和A.B.C.y
作为 IP 地址,那么在 corosync 配置文件中,您必须分配bindnetaddr
给A.B.C.0
。
问题二的答案
mcastaddr
是用于多播的 IP 地址,mcastport
是用于集群通信的端口。为了相互通信,属于同一集群的所有节点都需要使用相同的bindnetaddr
、mcastaddr
和mcastport
。
问题三的答案
params ip
是虚拟 IP。如果您已将您的设置bindnetaddr
为,A.B.C.0
那么您的虚拟 IP 应该是A.B.C.z
。
问题四的答案 这些警告不会影响我的集群。所以我忽略了它们。
除了@slm(见下面的资源)在我的问题评论中提供的链接外,本教程在 HeartBeat MySQL 资源代理上此高可用性指南帮助我设置和配置我的集群。
资源