SMB 客户端错误

SMB 客户端错误

将 HyperV Server 2016 与 Scale Out File Server 一起使用(将 VHDX 文件存储在文件服务器上)会导致虚拟机管理程序的事件日志(SMB 客户端 - 连接)中出现以下错误:

Failed to establish a network connection.

Error: {Device Timeout}
The specified I/O operation on %hs was not completed before the time-out period expired.

Server name: storage.DOMAIN
Server address: IP_OF_STORAGE2:445
Connection type: Wsk

Guidance:
This indicates a problem with the underlying network or transport, such as with TCP/IP, and not with SMB. A firewall that blocks TCP port 445, or TCP port 5445 when using an iWARP RDMA adapter, can also cause this issue.

环境感觉不稳定,虚拟机不断出现 I/O 错误,因此存储确实出现故障。

环境如下:

  • 具有 NIC 组合(双 10G 以太网接口)和 VLAN 标记的 HyperV 2016 服务器
  • 启用 HyperV 2016 服务器和文件服务的双存储头服务器,组合成具有 Scale Out 文件服务器角色的故障转移群集(存储 1 和存储 2)。作为存储后端,我们有一个通过 iSCSI 连接到头节点的 EMC 存储单元。

在节点之间我们有一个 Cisco Nexus 网络,在组合接口上运行主动以太通道/LACP。

如果需要的话我非常乐意提供任何信息。

我在谷歌搜索时找到的唯一相关结果是这个 technet 线程,没有任何解决方案 https://social.technet.microsoft.com/Forums/en-US/ef3e9243-5a22-4020-97a0-219595666cd7/smbclient-errors?forum=winserver8gen

答案1

混合使用 iSCSI 和 LACP 不是一个好主意。尝试解散您的连接并在您进行中继的地方使用 MPIO。

答案2

我同意前一位发言者的观点,如果您首先考虑的是性能,那么 MPIO 是您的最佳选择。至于一般配置,我认为您可以使其更简单、更可靠,最重要的是,使用节点的本地存储而不是物理 SAN 盒可以提高性能。星风免费并让它在节点之间同步数据,这将为您带来不错的性能提升,因为您的客户端将拥有最短的存储方式(数据局部性 - 低延迟)。

答案3

我们决定采纳这里得到的建议并根据这些建议修改我们的网络:

  • 我们为 LBFO 团队添加了第二个 VLAN 标记接口,用于启用 SMB 多通道
  • 修改了团队的负载平衡算法,以Address hash取代默认的Dynamic

我们在一周前做了这些修改,从那时起我们就没有看到这个错误消息,并且通常SMB Client事件日志中的消息较少。

谢谢你!

相关内容