我有一个 iSCSI 故障转移实施设置,所以如果我的一个存储单元发生故障,另一个会立即接管(它也运行 NFS 共享)。发生故障转移时,会导出卷,将 IP 切换到另一台计算机并重新配置目标。存储系统本身的故障转移工作得很好。我使用 NexentaStor 作为我的文件管理器。
当我对存储进行测试(手动)故障转移时,会发生以下情况:
注意:我在 NFS 上运行管理 VM,在 iSCSI 上运行基于客户的 VM
- 所有基于 NFS 的 VM 在故障转移期间和之后保持正常运行并正常工作
- 在 iSCSI 上运行的所有 VM 最终都会报告以下内容:
- 关于无法写入特定块的错误
- 关于日记不工作的错误
- 然后文件系统进入 RO
要让 VM 再次工作,我必须执行以下操作:
- 强制关闭“损坏的”虚拟机。
- 分离 iSCSI SR
- 重新连接 iSCSI SR
"Internal error: Failure("The VDI <uuid> is already attached in RW mode; it can't be attached in RO mode!")"
在另一台服务器上启动虚拟机(我的池中的 5 个)显然是巨大的痛苦。
当前未启用多路径(但可以启用并且仍然会发生相同的事情)。我已经编辑了大部分 /etc/iscsid.conf 文件以使用超时设置,但无济于事。
简而言之,我的存储正确地进行了故障转移,但 XenServer 没有保持连接处于活动状态。作为一个想法,上面#4中出现的错误可能是最终原因,修复它会解决所有问题吗?
任何帮助都会比你知道的更感激。
我在 iSCSI 故障转移方面遇到了非常相似的问题。它在这个问题中得到解决。您可以查看我自己发现的我接受的解决方案,以了解我如何解决它。
基本上它涉及设置
以便 iSCSI 会话在向内核报告错误之前有足够的时间进行恢复。
xe-toolstack-restart
为我修好了。