RPC(管理端口的服务)NFS软件 NFS配置文件 简单介绍

 

目录:

1什么是RPC(管理端口的服务)

2 NFS软件

3 NFS配置文件

 

1什么是RPC(管理端口的服务)

         因为NFS支持的功能相当多,而不同的功能都会使用不同的程序来启动,每启动一个功能就会启用一些端口来传输数据,因此,NFS的功能所对应的端口才无法固定,而是随机取用一些违背使用的端口来作为传输只用,其中centos5.x随机端口为小于1024的,而centos6.x随机端口都是较大的


         RPC远程过程调用就是为了解决这个问题出现的,


NFSRPC服务最主要的方能就是记录每个NFS功能所对应的端口号,并且在NFS客户端请求时将该端口和功能对应的信息传递给请求数据的NFS客户端,从而可以确保客户端可以连接到正确的NFS端口上去,达到实现传输交互数据的目的,类似于房屋中介的地位




         RPC服务大网站必用


2 NFS软件

         中小企业会选择nfs,大门户或门户除了MFSGFSfastfstfs等分布式文件系统。对于不会的东西,如果公司需要,


我会努力搞定

互联网中小型公司用NFS,互联网大公司用分布式文件系统。


学会nfs和一种分布式。传统公司会购买硬件共享设备,emc


要部署NFS服务,需要安装下面的软件

yum install nfs-utils portmap rpcbind -y
yum groupinstall "NFS file server" -y
rpm -ivh nfs-utils-1.2.3-36.el6.x86_64.rpm
 
# /etc/init.d/rpcbind stop
停止 rpcbind:                                             [确定]
# rpcinfo -p localhost    
rpcinfo: can't contact portmapper: RPC: Remote system error - Connection refused

 

3 NFS配置文件

/etc/exports  默认为空,添加一个


####shared /data for bbs by lsp at 20140901

/data 192.168.2.0/24(rw,sync)


sync把数据从buffer写入到磁盘


async写到buffer


ro,只读


cat /etc/exports


/etc/init.d/nfs reload  注意要用reload


showmount -e localhost 在本机做检查


# cat /var/lib/nfs/etab

/data   10.0.0.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,no_subtree_check,secure_locks,acl,anonuid=827,anongid=827)


客户端showmount -e 192.168.2.33

telnet 192.168.2.33 111

 

系统权限是有两部分控制,一是共享权限,二是本地权限

 

默认nfs共享的目录,使用者是nfsnobody

 

nfs挂在要么在rc.local要么在fstab

 

NFS服务端


1)打印系统版本号


cat /etc/redhat-release


uname -r 内核


uname -m 多少位


2)检查并安装


rpm -qa nfs-utils rpcbind


yum install nfs-utils rpcbind -y


rpm -qa nfs-utils rpcbind


3)启动NFS服务


/etc/init.d/rpcbind start


/etc/init.d/rpcbind status


rpcinfo -p 127.0.0.1 <==检查有没有房源


#服务器端启动房东,向rpcbind输送房源


/etc/init.d/nfs start 功能太多,端口多,因此需要rpcbind


/etc/init.d/nfs status


rpcinfo -p 127.0.0.1 <==检查有没有房源


3)配置共享目录 <==让用户知道有房源


# cat /etc/exports


#shared to bbs by lsp at 2014


/data 10.0.0.0/24(rw,sync,anonuid=827,anongid=827)


mkdir /data


touch /data/oldboy.txt


/etc/init.d/nfs reload (等同exportfs -rv)  平滑重启


showmount -e 127.0.0.1 还可以自己mount自己的共享目录


chkconfig nfs on


chkconfig rpcbind on


5)配置NFS客户端

/etc/init.d/rpcbind start
chkconfig rpcbind on
showmount -e 10.0.0.77
mount 10.0.0.77:/data /mnt

 

默认的nfs共享目录匿名访问的用户和组是nfsnobody

 

测试服务端开启防火墙


测试服务端的rpcbind服务没启动

 

NFS启动的进程列表


# ps -ef |egrep "nfs|rpc"
rpc        913     1  0 15:50 ?        00:00:00 rpcbind
rpcuser    931     1  0 15:50 ?        00:00:00 rpc.statd
root       970     2  0 15:50 ?        00:00:00 [rpciod/0]
root       978     1  0 15:50 ?        00:00:00 rpc.rquotad
root       982     1  0 15:50 ?        00:00:00 rpc.mountd
root       988     2  0 15:50 ?        00:00:00 [nfsd4]
root       989     2  0 15:50 ?        00:00:00 [nfsd4_callbacks]
root       990     2  0 15:50 ?        00:00:00 [nfsd]
root       991     2  0 15:50 ?        00:00:00 [nfsd]
root       992     2  0 15:50 ?        00:00:00 [nfsd]
root       993     2  0 15:50 ?        00:00:00 [nfsd]
root       994     2  0 15:50 ?        00:00:00 [nfsd]
root       995     2  0 15:50 ?        00:00:00 [nfsd]
root       996     2  0 15:50 ?        00:00:00 [nfsd]
root       997     2  0 15:50 ?        00:00:00 [nfsd]
root      1018     1  0 15:50 ?        00:00:00 rpc.idmapd
root      2918  1449  0 19:12 pts/0    00:00:00 egrep nfs|rpc

 

man rpc.rquotad
# exportfs -o rw,sync  10.0.0.7:/tmp

 

man exportfs
# cat /proc/mounts
rootfs / rootfs rw 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
devtmpfs /dev devtmpfs rw,relatime,size=495972k,nr_inodes=123993,mode=755 0 0
devpts /dev/pts devpts rw,relatime,gid=5,mode=620,ptmxmode=000 0 0
tmpfs /dev/shm tmpfs rw,relatime 0 0
/dev/sda3 / ext4 rw,relatime,barrier=1,data=ordered 0 0
/proc/bus/usb /proc/bus/usb usbfs rw,relatime 0 0
/dev/sda1 /boot ext4 rw,relatime,barrier=1,data=ordered 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0
sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw,relatime 0 0
10.0.0.77:/data/ /mnt nfs4 rw,relatime,vers=4,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=sys,clientaddr=10.0.0.76,minorversion=0,local_lock=none,addr=10.0.0.77 0 0

 





exports配置文件格式 man exports


NFS共享目录  NFS客户端地址(参数1,参数2) NFS客户端地址(参数1,参数2)


生产场景:确保nfs权限对应的配置


注意加all_squash


在做nfs共享的时候要确保每台机器上都有uid相同的账号,给anonuid


使所有主机有修改文件的权限

 

生产集群共享存储配置:


# cat /etc/exports


######bbs resouce by oldboy at 201409


/data 10.0.0.0/24(rw,sync,all_squash)

 

要确保:默认的匿名用户配置anonuid=65534,anongid=65534,对应的UID,GID


在所有的服务器都是存在的。

 

配置:


/data 10.0.0.0/24(rw,sync,all_squash,anonuid=999,anongid=999)


所有机器:useradd -u 999 nfsshared


门户网站100%用到异步,类似于exports中的async


异步的软件实现,(消息中间件,消息队列)

 

4)文件挂在的东西


mount -o rw,remount /


你可能感兴趣的:(简单介绍,nfs配置文件)