NFS共享存储服务的原理
1.nfs服务端创建共享存储目录;
2.nfs客户端创建远程挂载点目录
3.nfs客户端进行远程挂载;
4.实现客户端数据信息统一一致.
属于C/S 架构.
服务端部署流程:
1.检查服务器是否安装了nfs-utils 和rpcbind服务
rpm -qa |egrep "nfs-utils|rpcbind" (检查命令)
2.如果未安装需要先安装服务,
yum -y intall nfs-utils rpcbind (提前配置好yum源为aliyun或者自行搭建局域网yum源)
3.安装好服务后需要先配置nfs的配置文件
vim /etc/exports 默认的nfs配置文件路径
[root@nfs01 ~]# cat /etc/exports
/data 172.16.1.0/24(rw,sync) (设置挂载的磁盘路径和 允许挂载的网段信息, 还有权限设置,是否实时同步等)
4. 设置好配置文件之后,进行检查,是否设置好挂载点正确:
[root@nfs01 ~]# showmount -e
Export list for nfs01:
/data 172.16.1.0/24
5.先启动rpcbind服务 ,再启动nfs 服务,再检查服务是否启动正常.
/etc/init.d/rpcbind start
/etc/init.d/nfs start
rpcinfo -p 172.16.1.31( 检查)
检查 portmapper(111) mountd(随机端口) nfs(2049) nlockmgr(随机端口) 服务是否正常启动;
showmount -e ip地址, 显示设置的挂载点和 nfs的ip是否配置正确.
#####注意网络的防火墙配置需要允许111, 2049 ,4046等服务端口accept(或者临时关闭防火墙,也可永久关闭 iptables)
vim /etc/sysconfig/iptables
#-A INPUT -p tcp -m state --state NEW -m tcp --dport 2049 -j ACCEPT
#-A INPUT -p udp -m state --state NEW -m tcp --dport 4046 -j ACCEPT
#-A INPUT -p udp -m state --state NEW -m tcp --dport 111 -j ACCEPT
#-A INPUT -p tcp -m state --state NEW -m tcp --dport 111 -j ACCEPT
保存并退出防火墙配置文件 : /etc/init.d/iptables restart
@1.启动rpcbind服务,创建中介
@2.启动nfs服务,创建房源信息
@3.将房源信息向中介进行注册,在nfs服务稳定运行过程中,将房源信息只注册一次.
综上 : NFS服务端配置完成 .
客户端 配置部署流程:
1.客户端 需要先开启rpcbind(中介服务);
如果未开启rpcbind服务或者未在客户端上安装nfs-utils 那么就会在挂载的时候有异常出现.
需要先安装 nfs-utils 服务. yum -y install nfs-utils
异常截图如下:
再安装nfs-utils后再进行挂载即可.
2.确保客户端和服务端网络连接建立成功;
3.然后再进行挂载服务端的磁盘即可.
mount -t nfs 172.16.1.31:/data /mnt (远程磁盘地址 挂载到本地的目录(挂载点)).
df -h 查看挂载情况.
172.16.1.31:/data 8.6G 1.7G 6.6G 20% /mnt
NFS服务进程详述:
ps -ef |grep -E "nfs|rpc"
portmapper
rquotad
nfsd
rpc statd <----- 检查数据存储一致性
rpc.rquotad <------ 磁盘配额进程 (remote quote server)
nfsd <----------- nfs主进程, 管理登入,
rpc.idmapd <---------- name mapping daemon (用户压缩/用户映射)(记录)
rpc.mountd <---------- 权限管理验证等(NFS mount daemon)