NFS及搭建过程中遇到的问题

NFS(Network File System,网络文件系统)

NFS重要指数4星

NFS概述

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

NFS的好处

  • 节省本地存储空间,将一些常用的数据存放在一台NFS服务器上且可以通过网络访问,从而减少本地终端对自身存储空间的使用;
  • 用户不需要在网络中的每个机器上都建有Home目录,Home目录可以放在NFS服务器上且可以在网络上被访问使用;
  • 一些存储设备如软驱、CDROM和Zip(一种高储存密度的磁盘驱动器与磁盘)等都可以在网络上被别的机器使用,这可以减少整个网络上可移动介质设备的数量。

NFS的组成

NFS体系至少需要两个主要部分:

  • NFS服务器
  • 若干台客户机

NFS的应用

  • 多个机器共享一台CDROM或者其他设备;
  • 在大型网络中,配置一台中心 NFS 服务器用来放置所有用户的home目录可能会带来便利;
  • 不同客户端可在NFS上观看影视文件,节省本地空间;
  • 在客户端完成的工作数据,可以备份保存到NFS服务器上用户自己的路径下。

NFS实例

项目名称:为群集中的Web Server配置后端存储


1.主要的设备:

nas 192.168.1.3

web1 192.168.1.10

web2 192.168.1.20

2.为了方便实验需要执行如下操作:

关闭SELinux

sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config #修改配置文件,重启后生效
setenforce 0   #临时生效

关闭防火墙

==centos6

iptables -F
service iptables save

==contos7

systemctl stop firewalld
systemctl disable firewalld
这部分是可选的,如果后面要用主机名挂载可将IP地址和主机名写入hosts文件
vim /etc/hosts[可选]
192.168.1.3		nas
192.168.1.10	web1
192.168.1.20	web2

在设置完上面配置后,下面开始正式搭建NFS网络共享存储

一、配置NFS存储端

安装nfs-utils、rpcbind软件包

yum -y install nfs-utils rpcbind

说明:nfs-utils软件包用于共享发布和访问,rpcbind软件包用于RPC支持。NFS服务的实现依赖与RPC(Remote Process Call,远端过程调用)机制,RPC充当NFS客户端和NFS服务器的中介,以完成远程到本地的映射过程。

设置共享目录

mkdir -p /opt/wwwroot
vim /etc/exports

/opt/wwwroot	192.168.1.0/24(rw,sync,no_root_squash) #//不压制root(当client使用root挂载时,也有root权限)

重启NFS服务程序

systemctl restart rpcbind
systemctl enable rpcbind
systemctl restart nfs
systemctl enable nfs

查看本机发布的NFS共享目录

showmount -e
Export list for bogon:
/opt/wwwroot 192.168.1.0/24
或者
exportfs -v
/opt/wwwroot  	192.168.1.0/24(sync,wdelay,hide,no_subtree_check,sec=sys,rw,secure,no_root_squash,no_all_squash)

说明:如果在查看本机发布的NFS共享目录时,出现clnt_create: RPC: Program not registered报错,可在文章最后看解决办法。

二、web1 web2 客户端

以web1为例:

安装nfs-utils、rpcbind、httpd软件包

yum -y install nfs-utils rpcbind  httpd

启动服务

systemctl start rpcbind
systemctl enable rpcbind
systemctl start httpd
systemctl enable httpd

查看存储端共享

showmount -e 192.168.1.3
Export list for 192.168.1.3:
/opt/wwwroot 192.168.1.0/24

挂载NFS共享目录

手动挂载

mount -t nfs 192.168.1.3:/opt/wwwroot /var/www/html

自动挂载

echo "192.168.1.3:/opt/wwwroot /var/www/html nfs defaults 0 0" >> /etc/fstab

web2的配置同上web1

三、验证NFS

在客户端创建测试文

mount /dev/cdrom /mnt  #挂载光盘
mkdir /var/www/html/centos7  #创建测试共享目录
cp -a /mnt/* /opt/www/html/centos7/ cp光盘中内容到测试目录下

在服务端查看

cd /opt/wwwroot
ls
centos7  index.html
cd centos7/
ls
CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7
EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL

在web2上查看(在web上无需在创建测试文件,直接查看即可)

cd /var/www/html
ls
centos7  index.html
cd centos7/
ls
CentOS_BuildTag  EULA  images    LiveOS    repodata              RPM-GPG-KEY-CentOS-Testing-7
EFI              GPL   isolinux  Packages  RPM-GPG-KEY-CentOS-7  TRANS.TBL

在浏览器中查看
web1
在这里插入图片描述
在这里插入图片描述
web2
在这里插入图片描述
在这里插入图片描述
至此NFS网络共享服务已经搭建完成了,如有疑问,欢迎留言。

在搭建NFS环境时遇到的问题

问题:在搭建完NFS环境后,使用showmount -e查看存储端共享时出现clnt_create: RPC: Program not registered报错,表示rpc程序未注册成功。

解决办法:

现将之前启动的nfs和rpcbind关闭

systemctl stop nfs
systemctl stop rpcbind

再次启动服务(注意,先启动人rpc)

systemctl restart rpcbind
systemctl restart nfs

然后再次使用showmount -e查看存储端共享

[root@localhost yum.repos.d]# showmount -e
Export list for localhost.localdomain:
/opt/wwwroot 172.16.56.0/24     #已经正常了

猜你喜欢

转载自blog.csdn.net/weixin_42342456/article/details/85246513
今日推荐