我有两个Windows 2008R2服务器。 两者都指向我们SAN上的同一个iSCSI驱动器,但是两台服务器看不到相同的数据。
服务器1可以将数据写入SAN,并且可以立即看到写入的内容。 服务器2,无法看到服务器1在上次服务器2重新启动后写入的内容。
操作系统似乎不是一个问题在这里。 我有Win2K3服务器,Win2008服务器和2008R2系统,都有相同的问题。
只有写入的数据才能读取该数据,直到另一个数据被重新引导。
我在哪里可以开始尝试解决这个问题?
我认为整个集群(而不是我正在做的,但仍然是)两个系统指向相同的SAN驱动器,并共享共同的数据。 这使我相信,我应该能够在共享相同驱动器的两个系统之间读写。
我在这里错过了什么?
iSCSI向服务器提供基于块的存储。 在大多数情况下,服务器使用仅由一台服务器拥有和pipe理的文件系统(如NTFS)来安装此存储。 NTFS(这是你可能在这里使用)通常不是一个群集感知文件系统,所以如果辅助主机有相同的卷的可见性,他们将被locking(希望)或将破坏音量。
要使两台独立的计算机同时共享一个iSCSI卷,您需要具有一个支持此function的支持群集的文件系统。 VMware的VMFS与W2K8 R2 Hyper-V中提供的群集共享卷(CSV)群集文件系统一样。
最简单的解决scheme是将存储介绍给一台服务器,并共享该卷,以便第二台服务器可以使用SMB映射到该服务器。
编辑添加:
如果您select通过Windows共享卷,但是对于大多数服务器应用程序,您应该能够指定UNCpath( \\ Server \ sharename )而不是映射的驱动器号,则双networking跳没有真正的解决方法。 如果服务在拥有共享权限的帐户下运行,这将起作用。
你不会说你有什么样的iSCSI目标 – 有可能将它configuration为直接作为(比如说)SMB或NFS共享。 Windows Server 2008 R2支持包含NFS客户端的Unix互操作组件 。 这可能会为您提供一种避免双networking跳跃的机制,但我无法对其性能发表评论,它可能不会比SMB的份额更好。