我已经在 Ubuntu Hirsute 中安装了 nfs 服务器,使用两个 NIC,如下所示:
/nfs 172.16.0.0/24(fsid=0,rw,insecure,sync,wdelay,no_subtree_check,no_root_squash)
/nfs 172.18.0.0/24(fsid=0,rw,insecure,sync,wdelay,no_subtree_check,no_root_squash)
/nfs/share1 172.16.0.0/24(rw,insecure,sync,wdelay,no_subtree_check,no_root_squash)
/nfs/share1 172.18.0.0/24(rw,insecure,sync,wdelay,no_subtree_check,no_root_squash)
在客户端,我已经像这样安装了共享:
mount -t nfs4 172.16.0.100:/nfs /mnt/ -o async,auto,exec,_netdev,nodev,rw,retry=5,rsize=32768,wsize=32768,proto=tcp,hard,intr
mount -t nfs4 172.18.0.100:/nfs /mnt/ -o async,auto,exec,_netdev,nodev,rw,retry=5,rsize=32768,wsize=32768,proto=tcp,hard,intr
如你所见,我在同一个目录中挂载了两次。即/nfs
当我关闭保存有 172.16.0.100 地址的 NIC 时,在客户端我仍然可以进入 /nfs 目录。因此我检查了第二个接口是否在线,第一个接口是否离线。然后我再次将第一个接口上线。但是,当我关闭保存有 172.18.0.100 地址的 NIC 时,在客户端,已安装的 nfs 共享挂起,我再也无法访问 /nfs 目录。
我在这里做错了什么??
谢谢您的任何提示。
答案1
按照您的示例进行安装
mount -t nfs4 172.16.0.100:/nfs /mnt/ ...
mount -t nfs4 172.18.0.100:/nfs /mnt/ ...
您将服务器安装172.18.0.100
在其上172.16.0.100
。笔记:这不是使用两个 NIC,而是将两个不同的服务器安装到单个目录中。最后安装的服务器获胜,例如可见。因此,关闭后172.16.0.100
不会发生任何事情,因为它无论如何都不会被使用。
由于 Linux mount 命令(和 NFS 客户端)不支持多服务器,因此您应该使用网卡绑定如果您想要聚合带宽冗余。