在我工作的乌拉圭大学,我们有两台IBM BladeCenter S,每台服务器有四个刀片服务器。 每个刀片都安装有XenServer 6.2并正在运行。
我们的想法是让不同版本(连接)的每个BladeCenter具有故障转移function。
每个BladeCenter机箱都在机箱中embedded了光纤通道存储,而且,我不知道如何将此存储共享到其他BladeCenter机箱。
另外,我知道共享存储的方式并不是最好的,因为它实现了单点故障。
所以,我需要find一种方法来使用XenServer 6.2来实现高可用性,而不使用共享存储。 我发现http://www.halizard.com/ ,但我想知道其他替代scheme有没有共享存储的HA。
我能想到的另一件事是,如果我可以通过networking镜像存储(使用iSCSI),并将iSCSI目标多path为1,或者使iSCSI和光纤通道多path(但我不知道这是否存在)。 如果可以的话,XenServer HA实施将起作用。
希望我们能帮助我!
嗨,你可以尝试Xen DRBD实现高可用性,没有共享存储…
http://www.drbd.org/users-guide/ch-xen.html
https://github.com/locatrix/xs-pacemaker
-Asit
selectHA解决scheme时,您需要确定停机时间(如果有)是否可以接受。 这将影响您的设置的复杂性。
我认为你有两个select,而不购买额外的设备(进一步的排列):
对于没有共享存储的最高可用性设置,您必须在主 – 主angular色中使用DRBD。 这将需要一个STONITH设备来closures一个不响应的节点。 基于IP的电池备份设备通常可以有效地处理这个function。 Pacemaker和Corosync可以处理启动虚拟机和pipe理资源。
优点是你可以做实时迁移,并在理论上停止宕机。
这种设置的缺点是,如果发生了裂脑(它会),由于数据可能存在于两个节点上,所以可能难以修复。
另外,如果你停下来几分钟就可以了,这就是我们运行的:
基本上,我们在两个MDADM Raid 1arrays的顶部有两个存储LVM池。 他们被导出到DRBD做块级复制。 然后,在DRBD之上添加LVM,以启用虚拟机的快照并直接访问虚拟机。 为什么两个?
最初的想法是为每个虚拟机创build一个DRBD资源,以便机器可以在主机之间移动,具体取决于负载,而不是一个主机闲置。 pipe理这是一个痛苦,所以两个200GB的DRBD资源是一个很好的折中。 这样,r0可以在节点1上是主节点,而r1在节点2上可以是主节点。 如果node1失败,我们在node2上运行我们的“make master”脚本,它处理LVM映射,为这些资源设置DRBD主节点,并告诉virsh启动所有节点。 在一个固态硬盘arrays上,我可以打下十几台虚拟机,并在2-3分钟内把它们放在node2上。
如果连接足够的本地存储,则可以构build自己的iSCSI HA解决scheme。
Reiceipe: – drbd> 8.2.x – tgtd
设置两个在drbd双主模式下将两个LV复制到彼此的本地VM。 使用每个本地iscsi目标。 在XEN-server中,确保在主动/被动模式下使用eacch target(no rr!)。