![SMB 客户端错误](https://linux22.com/image/704137/SMB%20%E5%AE%A2%E6%88%B7%E7%AB%AF%E9%94%99%E8%AF%AF.png)
将 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
事件日志中的消息较少。
谢谢你!