Ung*_*uer 7 rhel nfs mount onc-rpc
我正在为带有 RHEL6.5 和 RHEL7 主机的 RHEL6.5 客户端(所有 VM)开发 NFS 解决方案。目前,带有 RHEL6.5 客户端的 RHEL7 主机工作正常。问题出在 RHEL6.5 主机上。
这些问题可能归结为我无法控制的服务器方面,因为服务器最近出现了去年没有的问题。如果您认为这是问题所在,请建议我可以向我的上级证明这一点的方法,然后开始购买新机器的过程。
该解决方案最初是为使用 NFSv4 而精心设计的,而 NFSv4 正在不断发展壮大。然而,RHEL6.5 主机没有 RHEL7 主机那么热衷。挂载成功,但文件访问不起作用,例如cp
, less
. 在终端,他们挂了。tail
-ing 客户的/var/log/messages
节目state manager: lease expired failed on NFSv4 server nfs_master with error 10018
。根据标准,该错误代码用于NFS4ERR_RESOURCE
,记录在此处。我解决资源问题的尝试是通过nfsd
命令行增加进程数,并在/etc/sysconfig/nfs
. 它没有帮助。如果导出的目录安装在 NFS 服务器本身上,也会出现此问题。
主机和客户端的日志中未显示的是另一个错误10022
,或者至少我认为这是 NFSv4 错误代码。时,这是唯一可见的tcpdump
-ing的NFS通信将会在接口:IP test-host.nfs > test_client-1.3297002672: reply ok 52 getattr ERROR: unk 10022
如果该错误代码的确是一个NFSv4的,那么它是NFS4ERR_STALE_CLIENTID
记录在这里。
当mount
命令更改为 set 时nfsvers=3
,类似cp
的操作会成功,并且不会在客户端和主机上产生错误。第一次尝试会花费一些时间,可能是 5 秒,然后期货操作要快得多。
一次最多有四个客户端安装导出并从中读取,并且可能是同一个文件。
所以,我的问题是:
NFS4ERR_RESOURCE
描述中引用的服务器端资源是什么?NFS4ERR_RESOURCE
和NFS4ERR_STALE_CLIENTID
错误?nfs-utils
版本和发行版(适用于客户端和 RHEL6.5 主机):1.2.3.39.el6
mount
命令:
mount -n -t nfs -o ro,noexec,timeo=10,retrans=3,retry=0,soft,rsize=32768,intr,noatime
mount -n -t nfs -o nfsvers=3,ro,noexec,timeo=10,retrans=3,retry=0,soft,rsize=32768,intr,noatime
编辑:我们对这个问题的解决方案是退回到 NFSv3 协议。一切正常。我不会用“回到 NFSv3”来回答这个问题,但这个问题可能太小众了,永远看不到答案。
尝试-fstype=nfs4,rw,intr,hard,proto=tcp,port=2049,acl
进行测试并确保 2049/tcp 对服务器上的客户端开放。如果中间有防火墙,也需要通过 2049/tcp。