# 搭建服务

yum -y install nfs-utils(主包提供文件系统) 
yum -y install rpcbind(提供rpc协议)
1
2

# 配置

/etc/exports

[root@k8s-master ~]# more /etc/exports
/data/ 10.10.31.0/24(rw,no_root_squash,no_all_squash,sync)
1
2

10.10.31.0/24:这个是运行访问NFS的IP范围,也就是10.10.31开头的IP,24是掩码长度。 根据自己的k8s主机网段设置。 (rw,no_root_squash,no_all_squash,sync)

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

  • rw:可读写的权限;
  • ro:只读的权限;
  • no_root_squash:登入到NFS主机的用户如果是root,该用户即拥有root权限;
  • root_squash:登入NFS主机的用户如果是root,该用户权限将被限定为匿名使用者nobody;
  • all_squash:不管登陆NFS主机的用户是何权限都会被重新设定为匿名使用者nobody。
  • anonuid:将登入NFS主机的用户都设定成指定的user id,此ID必须存在于/etc/passwd中。
  • anongid:同anonuid,但是变成group ID就是了!
  • sync:资料同步写入存储器中。
  • async:资料会先暂时存放在内存中,不会直接写入硬盘。
  • insecure:允许从这台机器过来的非授权访问。

# 启动服务

systemctl enable nfs
systemctl start nfs
systemctl start rpcbind
1
2
3

# 检验

[root@k8s-node1 ~]# showmount -e 172.16.109.178
Export list for 172.16.109.178:
/data *
1
2
3

NFS客户端的操作:

1、showmout命令对于NFS的操作和查错有很大的帮助,所以我们先来看一下showmount的用法 showmout

  • -a :这个参数是一般在NFS SERVER上使用,是用来显示已经mount上本机nfs目录的clinet机器。
  • -e :显示指定的NFS SERVER上export出来的目录。

2、mount nfs目录的方法: mount -t nfs hostname(orIP):/directory /mount/point

[root@k8s-master ~]# exportfs -v
/data           <world>(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,no_root_squash,no_all_squash)
1
2