当前位置:   article > 正文

基于 FastCFS 的 NFS 搭建及常见问题排查_mount.nfs: access denied by server while mounting

mount.nfs: access denied by server while mounting


本篇文章转载于 FastCFS 作者 余庆 大佬的 个人空间

引言

通过 POSIX 兼容性测试v3.7 发布后,FastCFS 完全可以作为 NFS 的后端存储,推荐使用 FastCFS v3.7.1 及后续版本。FastCFS 的搭建参见 gitee 上的 FastCFS 项目官网 ,本文着重介绍 FastCFS 作为后端存储的 NFS 搭建及常见问题排查。

一、服务端

NFS 服务端运行在 FastCFSfuse client 节点上, 需要事先部署好 FastCFS 集群和 fuse client

1.1 安装

CentOSRHEL

yum install -y nfs-utils rpcbind
  • 1

UbuntuDebian

apt install nfs-kernel-server -y
  • 1

1.2 配置

NFS 服务配置文件 /etc/exports 示例:

/opt/fastcfs/fuse 192.168.25.57(rw,sync,all_squash,anonuid=501,anongid=504)
  • 1

参数注解:

  • /opt/fastcfs/fuse :要共享的目录
  • 192.168.25.57 :表示只允许该客户端挂载共享目录,可以是 CIDR 网段 192.168.25.0/24,也可以用 * 代表允许所有的网段访问
  • rw :可读写权限
  • sync :数据同步写入内存和硬盘
  • all_squash :表示不管使用 NFS 目录的用户是谁,其身份被限定为一个指定的普通用户身份设置 giduid 权限;
  • anonuid/anongid : 要和 root_squash 以及 all_squash 一同使用,用于指定使用 NFS 的用户限定到的 uidgid注意: 服务端和客户端 uid 和 gid 的用户和组必须存在,否则以 root 用户身份使用

注意:rwsync 等之间是不能有空格或参数不完整,否则报 exportfs: /etc/exports:1: syntax error: bad option list

1.3 服务启动

systemctl restart rpcbind && systemctl restart nfs-server
  • 1

1.4 重新加载配置文件

exportfs -arv
  • 1

二、客户端

2.1 安装

CentOSRHEL

yum install nfs-utils -y
  • 1

UbuntuDebian

apt install nfs-common -y
  • 1

2.2 挂载

客户端测试是否能连接服务端:

showmount 192.168.25.118 -e
  • 1

mount 命令示例:

mount -t nfs -onolock,nfsvers=3 192.168.25.118:/opt/fastcfs/fuse /mnt/nfs
  • 1

或者:

mount -t nfs -onolock,nfsvers=4 192.168.25.118:/ /mnt/nfs
  • 1

三、NFS 部署 FAQ

3.1 如何查看 nfs 版本

服务端查看:

rpcinfo -p | grep -iE "service|NFS"
  • 1

客户端查看:

nfsstat
  • 1

3.2 NFS 服务端如何设置开机启动

1)查看 rpcbind 和 nfs-server 是否开机启动
systemctl list-unit-files --type=service | grep enable | grep rpcbind
systemctl list-unit-files --type=service | grep enable | grep nfs-server
  • 1
  • 2

注: 输出为空则开机启动没有生效

2)设置开机启动
systemctl enable rpcbind && systemctl enable nfs-server
  • 1

3.3 两台虚拟机都是 Centos6 客户端口登录总是提示:mount.nfs: access denied server while mounting

服务端关闭防火墙,以及设置目录权限,都解决不了,在 /etc/exports 文件中引入如下配置,问题解决。

NFS 默认支持的端口小于 1024,加入 insecure 参数开启大于 1024 端口的支持,/etc/exports 配置示例:

/opt/fastcfs/fuse 192.168.25.118 (insecure,rw,sync,no_root_squash)
  • 1

3.4 客户端 NFS 操作提示没有权限(Permission denied)

故障原因: 服务端 NFS 共享目录的权限设置问题
解决方法: 在服务端设置 NFS 共享目录权限为 777,客户端就可以写入文件

3.5 目录操作错误提示:mount: mount to NFS server ‘192.168.25.118’ failed: System Error: No route to host. mount clntudp_create: rpc: port mapper failure - rpc: unable to receive

问题原因: 开启了防火墙
解决方法: 关闭防火墙

3.6 FastCFS 作为 NFS 后端存储时 NFS client mount 失败

出错信息: reason given by server: No such file or directory

解决方法:

NFS v3 直接使用服务端配置的目录,如:/opt/fastcfs/fuse,而 v4 将服务端配置的路径作为基路径,mount 要使用 /
NFS 挂载默认会使用最新的 NFS 协议,挂载命令示例(支持 v4 前提下使用):

mount -t nfs -onolock 172.16.168.131:/ /mnt/nfs
  • 1

NFS v3 挂载命令示例:

mount -t nfs -onolock 172.16.168.131:/opt/fastcfs/fuse /mnt/nfs
  • 1

指定 NFS v4 挂载命令示例:

mount -t nfs -onolock,nfsvers=4 172.16.168.131:/ /mnt/nfs
  • 1

友情提示:
CentOS 6 需要使用 NFS v3 挂载
/etc/exports 中需要设置 fsid=0,例如:/opt/fastcfs/fuse 172.16.168.130 (fsid=0,rw,sync,no_root_squash,no_all_squash)

附一、NFS server 配置文件 /etc/exports 参数注解

配置示例:

/opt/fastcfs/fuse 10.10.31.0/24: (rw,no_root_squash,no_all_squash,sync)
  • 1
  • 10.10.31.0/24:这是允许访问 NFS serverIP 范围,也就是 10.10.31 开头的 IP24 是掩码长度。

可以设定的参数主要有以下这些:

  • rw 或 rorw 表示可读写权限,ro 表示只读权限
  • no_root_squash:登入到 NFS 主机的用户如果是 root,该用户即拥有 root 权限
  • no_all_squash:透传普通用户 ID 及其用户组
  • root_squash:登入 NFS 主机的用户如果是 root,该用户权限将被限定为匿名使用者 anonuid
  • all_squash:不管登陆 NFS 主机的用户是何权限都会被重新设定为匿名使用者 anongid
  • anonuid:将登入 NFS 主机的用户都设定成指定的 user id,此 ID 必须存在于 /etc/passwd 中,默认为 nobodynfsnobody
  • anongid:将登入 NFS 主机的用户组都设定成指定的 group id,此 ID 必须存在于 /etc/group 中,默认为 nobodynfsnobody
  • sync:数据同步写入硬盘
  • async:数据会先存放在内存中,然后再异步写入硬盘
  • insecure:允许对本共享目录的非授权访问

附二、NFS client 在高并发下挂载磁盘参数优化

  • async:异步同步,此参数会提高 I/O 性能,但会降低数据安全(除非对性能要求很高,对数据可靠性不要求的场合),不推荐使用;
  • noatime:取消更新文件系统上的 inode 访问时间,提升 I/O 性能,优化 I/O 目的,推荐使用;
  • nodiratime:取消更新文件系统上的 directory inode 访问时间,高并发环境可以提高系统性能,推荐使用。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/花生_TL007/article/detail/486613
推荐阅读
相关标签
  

闽ICP备14008679号