NFS 相关

  • 687 字
  • 次阅读

只考虑 NFSv4,NFSv4 强制要求 TCP

参考资料

https://docs.aws.amazon.com/efs/latest/ug/mounting-fs-nfs-mount-settings.html

fsc

本地缓存,需要另一个软件支持

hard

行为:当 NFS 服务器不可达时,客户端会无限期不断重试 I/O 请求,直到服务器恢复正常为止。程序会“停住”不动,等待恢复后继续正常运行。

常与 intr 或其替代选项一起使用,使挂载操作可中断(尤其在老内核中),避免客户端彻底卡死。(但是 intr 在 内核 2.6.25 开始废弃,2008 年,RHEL6 开始)

通常 如果 nfs 挂载的是重要数据盘,一般是 hard。硬挂载将保持数据一致性

soft

客户端在发起 I/O 请求后,如果在一定重试次数或超时时间内未收到服务器响应,就会返回错误给应用程序,而不是一直等下去。

可设置 timeo(超时时间),retrans(最大重发次数),让挂载更具灵活性

一般建议是只读挂载才使用软挂载。

timeo & retrans

硬挂载一般使用默认值就可以,软挂载特别是 timeo 可能需要设短一点,否则会产生超长时间的卡顿后才报错。

而硬挂载,因为会不断重试,本身就会一直卡顿。

另外需要注意的是,早期 NFS 是使用 UDP 的,很多教程会与混淆,而在 NFSv4 中,只是用 TCP,需要考虑 TCP 自身的 timeout 情况。

NFS Server 命令

exportfs -ra nfs server 刷新配置而不用重启

打赏
打赏提示信息
分享
分享提示信息