NFS文件共享服务搭建

NFS文件共享服务搭建

1、管理节点安装nfs和设置

如果集群是内部使用,为了方便,可以采用关闭防火墙和selinux等,如果必须开防火墙,具体配置防火墙开放nfs端口,请百度之,这里不赘述。以下操作均为已关闭防火墙和selinux。
1.安装软件包

yum -y install nfs-utils  rpcbind

2. 配置共享目录
假设我们需要把/data/apps目录通过计算网络共享出去,管理节点计算网络IP为(10.1.1.1)如下操作:
编辑export文件:

 vi /etc/exports
// 添加如下内容:
/data/apps 10.1.1.1(rw,async,no_root_squash) 10.1.1.0/255.255.255.0(rw,async)

/data/apps 为共享的目录,使用绝对路径。10.1.1.0/255.255.255.0(rw,async)为计算节点的地址范围及权限,地址可以是一个网段(如:192.168.0.0/24),一个IP地址或者是一个域名,域名支持通配符,如:*.http://hpce.cn,地址与权限中间没有空格。
3. 使配置生效

exportfs  -r 

4. 权限说明:

  • rw:read-write,可读写;
  • ro:read-only,只读;
  • sync:文件同时写入硬盘和内存;由于我们的日志需要同步写,所有用sync选项。
  • async:文件暂存于内存,而不是直接写入内存;
  • no_root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,也拥有root权限。显然开启这项是不安全的。
  • root_squash:NFS客户端连接服务端时如果使用的是root的话,那么对服务端分享的目录来说,拥有匿名用户权限,通常他将使用nobody或nfsnobody身份;
  • all_squash:不论NFS客户端连接服务端时使用什么用户,对服务端分享的目录来说都是拥有匿名用户权限;
  • anonuid:匿名用户的UID值,通常是nobody或nfsnobody,可以在此处自行设定;
  • anongid:匿名用户的GID值。
    5. 启动服务rpcbind、nfs服务
systemctl start rpcbind
systemctl start nfs  

2、计算节点自动挂载共享目录

在计算节点以root账号登录,进行如下操作
1.创建挂载目录,假设我们要把登录共享的目录挂载到/data/apps目录下

mkdir -p /data/apps

2. 手动挂载

mount -t nfs 10.1.1.1:/data/apps /data/apps

3. 开机自动加载
编辑/etc/fstab文件,添加如下:

10.1.1.1:/data/apps    /data/apps    nfs    defaults        0 0

这样在重启系统后,管理节点共享的目录会自动加载到计算节点上。

nfs挂载报错误wrong fs type, bad option, bad superblock
mount: wrong fs type, bad option, bad superblock on 125.64.41.244:/data/img,
missing codepage or helper program, or other error
(for several filesystems (e.g. nfs, cifs) you might
need a /sbin/mount. helper program)
In some cases useful info is found in syslog - try
dmesg | tail or so
根据错误提示,查看/sbin/mount.文件,果然发现没有/sbin/mount.nfs的文件,安装nfs-utils即可。
解决方案:

yum install nfs-utils -y

你可能感兴趣的:(Linux,NFS)