为什么查看同一个驱动器的两台服务器无法查看相同的文件?

Rus*_*uss 4 windows-server-2008 iscsi storage-area-network

我有两个 Windows 2008R2 服务器。两者都指向我们 SAN 上的同一个 iSCSI 驱动器,但两台服务器看不到相同的数据。

服务器 1 可以向 SAN 写入数据,并且可以立即看到它写入的内容。服务器 2,无法看到服务器 2 上次重启后服务器 1 写了什么。

操作系统在这里似乎不是问题。我有Win2K3服务器、Win2008服务器和2008R2系统,都是同样的问题。

只有写入的一方才能读取该数据,直到另一方重新启动。

我可以从哪里开始尝试解决这个问题?

我认为集群的全部意义(不是我正在做的,但仍然是)是让两个系统指向同一个 SAN 驱动器,并共享公共数据。这让我相信我应该能够在共享同一驱动器的两个系统之间进行读写。

我在这里缺少什么?

Hel*_*ick 16

iSCSI 向服务器提供基于块的存储。在大多数情况下,服务器使用仅由一台服务器拥有和管理的文件系统(例如 NTFS)安装此存储。NTFS(您可能在这里使用的)通常不是群集感知文件系统,因此如果辅助主机可以看到相同的卷,它们将被锁定(希望如此)或会损坏该卷。

要让两台独立的机器同时共享一个 iSCSI 卷,您需要有一个支持此功能的集群感知文件系统。VMware 的 VMFS与W2K8 R2 Hyper-V 中可用的集群共享卷 (CSV)集群文件系统一样执行此操作。

对您来说最简单的解决方案是将存储呈现给一台服务器并共享该卷,以便第二台服务器可以使用 SMB 映射到它。

编辑添加:
如果您选择通过 Windows 共享卷,则没有真正解决双网络跃点的方法,但对于大多数服务器应用程序,您应该能够指定 UNC 路径(\\Server\sharename)而不是映射的驱动器号. 如果服务在具有共享权限的帐户下运行,这将起作用。

您没有说明您拥有哪种类型的 iSCSI 目标 - 可以将其配置为直接充当(例如)SMB 或 NFS 共享。Windows Server 2008 R2 支持包含 NFS 客户端的 Unix 互操作性组件。这可能会为您提供一种避免双网络跃点的机制,但我无法评论性能,它可能不会比 SMB 共享更好。

  • +1 不要那样做。第二台机器看不到第一台机器写入的原因是因为第二台机器正在维护自己的缓存。共享 iSCSI LUN RW 是破坏事物的好方法。iSCSI 不适用于文件共享。 (3认同)