文件系统是基于存储设备的,比如硬盘,并且包含文件物理位置的维护。文件系统也可以说是虚拟数据或网络数据存储的方法,比如NFS。我是这样理解的:首先,什么是文件系统,这里我们已经明确了,就是组织的一种形式,让我们读写快的方式方法。从这一点上出发的话,那么NFS是一种网络上的读写方法,因为它是通过应用进行读写,这个应用是NFS,所以就这种的读写也可以说是一种文件系统。
服务一般指的就是守护进程。NFS对于大并发还是有一定的问题,但是对于中小企业,NFS一直是通过网络提供文件系统服务的有竞争力的选择。
在企业集群架构的工作场景中,NFS网络文件系统一般被用来存储共享文件、图片、附件等静态资源文件。
挂载NFC:(rpcbind)
1)传统的挂载: mount 源 目标
2)NFC挂载:mount 192.168.113.12: /video /video
1.什么是RPC服务?(大型网站离不开的服务)
因为NFS支持的功能相当多,而不同的功能都会使用不同的程序来启动,每启动一个功能就会启用一些端口来传输数据,因此,NFS的功能所对应的端口才无法固定,而是随机取用一些未被使用的端口作为传输之用。
因为端口不固定,这样一来就会造成NFS客户端和NFS服务端的通讯障碍,因为客户端必须知道服务端的数据传输端口才能进行通信交互数据。
要解决上面的通讯问题困扰,就要远程过程调度RPC服务。所以在服务器启动的顺序一定是先启动RPC服务,在启动NFS服务。
这里要注意,这里的RPC服务是NFS的RPC服务,在大型企业中,可以没有NFS,但是肯定会用RPC,RPC是一种服务或者一种协议。
2. 安装:
首先在客户端和服务端安装RPC服务:yum install nfs-utils rpcblind -y
查看服务器端RPC有没有NFS的信息:rpcinfo -p localhost
rpcinfo: can't contact portmapper: RPC: Remote system error - Connection refused
由此,开启RPC服务端应用。/etc/init.d/rpcblind start
再次查看服务端RPC有没有NFS的信息:rpcinfo -p localhost。由此看到全是自己的东西,RPC开放的端口是111,并没有接受NFS的任何信息。
将RPC设置称为开机自启动程序:
[root@nfsserve ~]# chkconfig nfs on
[root@nfsserve ~]# chkconfig rpcbind on
[root@nfsserve ~]# chkconfig --list nfs
nfs 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
[root@nfsserve ~]# chkconfig --list rpcbind
rpcbind 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
开启nfs服务:
再次查看RPC服务有没有NFS的信息:rpcinfo -p localhost。可以发现多了好多端口,这些是因为NFS提供的功能很多,就有了很多端口。
客户端只要安装rpcbind就可以了,不需要安装nfs,前面已经讲过原理了,设置成开机自启动就可以了。
[root@nfsclient ~]# /etc/init.d/rpcbind start
Starting rpcbind: [ OK ]
[root@nfsclient ~]# chkconfig rpcbind on
[root@nfsclient ~]# chkconfig --list rpcbind
rpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off