Windows NFS3.0 的主要问题、解决方法和最佳实践
适用场景
- Windows NFS3.0
- 运行集群模式 Data ONTAP 的 NetApp FAS 控制器
- Data ONTAP 7-模式
- Data ONTAP 8.2
- Data ONTAP 8.2.3
- Data ONTAP 8.3
- Data ONTAP 8.3.1
问题解答
本文列出了与运行集群模式 Data ONTAP 的 NetApp FAS 控制器一起使用时 Windows NFS 客户端的主要已知问题、限制、变通办法和最佳实践。
ONTAP 支持限制:
当前支持的所有 Data ONTAP 7- 模式系统均支持 Microsoft Windows 本机 NFS 客户端实施。 此外,还支持从 8.2.3 开始的集群模式 Data ONTAP 8.2 版本。 此外,还支持从 8.3.1 开始的集群模式 Data ONTAP 8.3 发行版。
问题
问题 1 :
如果不提供“网络状态监视器( NSM )”协议支持,则会导致 Windows NFS 客户端中的 IO 中断。
说明:根据当前设计、 Windows NFSv3 客户端不支持 NSM 协议。因此、共享锁定、客户端的字节范围锁定在存储故障转移操作期间会丢失、该操作涉及到 LIF 故障转移(接管 - 恢复、紧急恢复、还原等)以及存储移动操作(卷移动 / 聚合重新定位)。这会导致客户端发生 IO 中断。可能会报告类似以下内容的错误消息:“Error no.59 (unexpected network error)
”。
解决方法:无
问题 2 :
在执行存储故障转移 / 移动操作的 I/O 期间、 Windows NFS 客户端报告以下错误信息:
' winerror=158-The segment is already unlocked'
说明: NFS 服务器为从客户端发送的非 Idem强力 操作维护重放缓存。此重放缓存保存对客户端原始非 Idem强力 操作的响应。这需要提供相同的响应以重新传输请求。再次处理重新传输的请求时,会产生不同和意外的结果。
例如,如果不使用重放缓存、取消链接操作可能会第一次获得成功结果、但ENOENT
在重新传输的请求上会出现错误。在 Data ONTAP 中、重放缓存不是持久的。因此,在存储故障转移( SFO ) / 聚合重新定位( ARL )等事件中、存储从一个节点移动到另一个节点时、该存储上 NFS 操作的重放缓存将丢失。在发生 SFO/ARL 事件之后、重新传输的 NFS 操作不会立即保护回放缓存。
解决方法:无
问题 3 :
"Network Error - 53"
尝试在 Windows 上挂载 NFS 共享时
说明:客户正在尝试在 Windows 上挂载 NFSv3 挂载、但正在接收通用"Network Error - 53"
挂载。
命令示例:
C:\Users\admin> mount 10.0.0.1:\share Z:
解决方法:
1.在
此处可以找到检查命令语法的正确语法。
2. 客户端和服务器
3 之间的 NFS 版本不匹配。可以在此处找到最后的解决方法。
最佳实践:
- Windows NFSv3 支持需要存储虚拟机( SVM )设置:
要在存储虚拟机( SVM )上启用 Windows NFSv3 客户端、请运行以下命令:vserver nfs modify -vserver svm_name -v3-ms-dos-client enabled
运行以下命令以禁用-enable-ejukebox and -v3-connection-drop
参数、 在支持 Windows NFSv3 客户端的所有 SVM 上。此外,这还可以使卷移动无中断。
vserver nfs modify -vserver vserver_name -enable-ejukebox false -v3-connection-drop disabled
- 默认情况下, Windows NFSv3 客户端使用软挂载。但是,在通过指定
-o mtype=hard
选项从 Windows NFSv3 客户端挂载存储系统上的导出时,请始终使用硬挂载。 - 在计划的存储故障转移之前,请确保所有 Windows NFS 客户端都已卸载。这样可以防止集群中留下任何未完成的 NLM 锁定。
- 计划外存储失败后、重新挂载 Windows NFS 客户端。此操作将强制客户程序正确清除客户程序创建的任何陈旧 NLM 锁。
- 从集群模式 Data ONTAP 8.3 开始、 Windows NFSv3 客户端必须包含
ROOT-path
IP 地址或主机名与接合路径之间的字符串才能正确安装导出:\IPaddress_or_hostnameROOT-pathjunction_path
。
示例:mount -o mtype=hard
\10.53.33.10 根路径 volvol1z :
Data ONTAP 8.3.1 不需要提及根路径。
示例:mount -o mtype=hard
\10.53.33.10 卷 volvol 1z : - 从集群模式 Data ONTAP 8.3 版开始,
showmount
该功能可在存储系统中使用。运行nfs server modify -vserver NFS83-showmount enable
以启用它。启用后、创建的任何新卷或 qtree 将反映在showmount -e <dataip>
客户端上命令的输出中。要查看以前创建的卷或 qtree 、请运行 cache clearexport-policy cache flush -vserver SVM -cache showmount
命令。
有关使用的详细信息showmount
,请参见 TR-4067 :《集群模式 Data ONTAP NFS 最佳实践和实施指南》的第 51 页。
追加信息
TR-4067—《集群模式 Data ONTAP NFS 最佳实践和实施指南》