儲存空間直通:SMB 錯誤
所以我們有了這個4 節點儲存空間直通 (S2D) 集群,工作了 1.5 年以上,沒有任何重大問題。作業系統是Windows Server 2016。
- 所有配置文件的防火牆關閉
- 未安裝防病毒軟體,Windows Defender 關閉
- Active Directory 委派未受影響
- 沒有報告網路基礎設施發生變化
- RDMA 在 1 年前被禁用,因為我們發現 NIC 並不完全支持它
兩天前,我們注意到集群事件日誌中有很多錯誤消息,並且集群上託管的所有 Hyper-V 虛擬機的備份作業都失敗了(通過 VEEAM 進行)。
調查很快顯示 SMB 連接存在許多問題。
4 台主機中的任何一台:
- 可以ping通網路中的其他資源
- 無法連接任何共享文件夾
- NTP 同步失敗(
net time \\server
失敗,也是如此w32tm /monitor
)顯然,文件共享見證也失敗了,並且需要報告域服務的一些問題……
我們嘗試單獨重新啟動節點,重新啟動後 SMB 連接就好了……幾分鐘/小時,然後問題再次出現。
對集群以及文件共享見證離線的影響是我們無法輕鬆地在節點之間執行虛擬機的實時遷移(隨機成功)。不過,快速遷移就像一種魅力一樣發生。由於無法連接 SMB,我們無法將 VM 移動到另一個集群或獨立主機。
我們擔心如果一個節點無法控制地失敗,集群會變得混亂。即使 VM 穩定,我們仍然無法執行備份(我們可以執行導出)。
你們中有人聽說過 S2D 或 Microsoft 故障轉移群集角色的問題嗎?它也可能與集群本身無關……
可以做些什麼來找到這個問題的根本原因?
以下是在集群角色和SMBCLient的事件日誌中找到的日誌範例:
從集群控制台:
群集網路名稱資源“群集名稱”在此節點上啟用網路名稱時遇到錯誤。失敗的原因是:“無法獲取登錄令牌”。
錯誤程式碼是“1311”。
您可以使網路名稱資源離線並再次聯機以重試。
ID 為 30803 的事件:
無法建立網路連接。
錯誤:{設備超時} %hs 上的指定 I/O 操作在超時期限到期之前未完成。
伺服器名稱:server.domain.com
伺服器地址:xxxx:445 連接類型:Wsk
指導:這表明底層網路或傳輸存在問題,例如 TCP/IP,而不是 SMB。使用 iWARP RDMA 適配器時阻止 TCP 埠 445 或 TCP 埠 5445 的防火牆也可能導致此問題。
另一個,ID 30804:
網路連接已斷開。
伺服器名稱:\server.domain.com 伺服器地址:xxxx:445 連接類型:Wsk
指導意見:這說明客戶端與伺服器的連接斷開了。
使用 RDMA over Converged Ethernet (RoCE) 適配器時頻繁的意外斷開連接可能表示網路配置錯誤。RoCE 要求為 RoCE 網路上的每個主機、交換機和路由器配置優先流控制 (PFC)。未能正確配置 PFC 會導致丟包、頻繁斷開連接和性能不佳。
我找到了解決方案,這是一件愚蠢的事情。主機有幾個 NIC 用於對不同 VLAN 的網路訪問。一些 NIC 映射到虛擬交換機,其中一些與作業系統共享(’允許管理作業系統共享此網路適配器’)。
我注意到 SMB 數據包經常使用錯誤的介面(DMZ),當然請求被拒絕了。
我用來辨識 SMB 流量使用的錯誤路由的 Powershell 命令:
Find-NetRoute -RemoteIPAddress x.x.x.x
(其中 xxxx 是您網路上的遠端資源)
這顯示了 DMZ 介面,而不是 LAN 介面。刪除 DMZ vSwitch 上的“允許管理作業系統共享此網路適配器”為我解決了這個問題。
我仍然不明白這個集群如何在 1.5 年中執行得這麼好,使用這種配置。但是,現在解決了,FSW 和所有其他操作都執行良好。
希望這可以幫助;)