Windows-Server-2008

為什麼查看同一驅動器的兩台伺服器無法查看相同的文件?

  • October 30, 2009

我有兩台 Windows 2008R2 伺服器。兩者都指向我們 SAN 上的同一個 iSCSI 驅動器,但兩台伺服器看不到相同的數據。

伺服器 1 可以將數據寫入 SAN,並且可以立即看到它寫入的內容。伺服器 2,在上次重新啟動伺服器 2 後看不到伺服器 1 寫的內容。

作業系統在這裡似乎不是問題。我有 Win2K3 伺服器、Win2008 伺服器和 2008R2 系統,都有相同的問題。

只有寫入的那個可以讀取該數據,直到另一個重新啟動。

我可以從哪裡開始嘗試解決這個問題?

我認為集群的全部意義(不是我在做什麼,但仍然是)是讓兩個系統指向同一個 SAN 驅動器,並共享公共數據。這使我相信我應該能夠在共享同一驅動器的兩個系統之間進行讀寫。

我在這裡想念什麼?

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 共享更好。

引用自:https://serverfault.com/questions/79859