我有一个实验室环境,我有一个 Synology NAS,它提供 iSCSI 目标,供在虚拟机上运行的 Windows 2012 R2 VM 使用。
我想设置一个 Windows 故障转移集群,为此,VM 需要共享一个磁盘。
我添加了一个带有新 LUN 的新目标。我通过虚拟机上的 iSCSI 启动器添加了这个,格式化了磁盘,然后通过故障转移集群管理器添加到我的集群的存储磁盘中。我可以使角色联机并正确启动磁盘。
默认情况下,Synology 不允许多个连接到同一个 iSCSI 目标。
不启用多个会话会导致仅连接一个节点,从而使相应的磁盘联机。执行故障转移不会自动在另一个节点上建立 iSCSI 连接。
看来我有以下选择:
启用 *允许来自一个或多个 iSCSI 启动器的多个会话。这有很大的警告:
为避免严重数据损坏的风险,请确保您在集群感知文件系统中运行。
向 LUN 添加其他目标。让两个目标共享同一个 LUN,因此每个集群节点都有一个目标。
这两个选项都会导致两个节点上的 iSCSI 启动器都能够连接到 iSCSI 目标。
问题:
- 我应该使用哪一个?
- 两者似乎都有效,这有什么不同吗?我知道目标有自己的缓冲区。
- Windows 故障转移群集是否支持此功能?
- 其中哪些会导致数据丢失?
- 我还看到我可以创建一个共享集群卷,应该使用它吗?也许我做错了。
我阅读的内容和理解的内容向我表明,在任何一种情况下,您都可能最终导致损坏,除非您使用的是集群感知文件系统,例如 CSVFS。我不是 Synology 用户,但我确实使用 iSCSI 和故障转移群集。
我想说,在您的情况下,允许多个会话将是最合适的选择。如果您想利用 MPIO,添加一个新目标可能会有所帮助,您有两个单独的网段用于同时访问存储,从而创建冗余路径。
听起来这将是一个受支持的解决方案,是的,您应该将磁盘添加到集群共享卷中,但是只有在所有节点都能够“看到”LUN 时才这样做。
完成此操作后,您可以通过在节点之间移动 CSV 并查看其保持在线状态并关闭集群节点以观察其故障转移来进行试验。
另一件事......集群中的所有节点都需要能够相互通信,以便它们能够协调活动并密切关注节点离线(心跳)。