您的位置:首页 > 其它

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

2015-06-09 00:10 786 查看
目录:1什么是RPC(管理端口的服务)2 NFS软件3 NFS配置文件

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

因为NFS支持的功能相当多,而不同的功能都会使用不同的程序来启动,每启动一个功能就会启用一些端口来传输数据,因此,NFS的功能所对应的端口才无法固定,而是随机取用一些违背使用的端口来作为传输只用,其中centos5.x随机端口为小于1024的,而centos6.x随机端口都是较大的
RPC远程过程调用就是为了解决这个问题出现的,
NFS的RPC服务最主要的方能就是记录每个NFS功能所对应的端口号,并且在NFS客户端请求时将该端口和功能对应的信息传递给请求数据的NFS客户端,从而可以确保客户端可以连接到正确的NFS端口上去,达到实现传输交互数据的目的,类似于房屋中介的地位

RPC服务大网站必用

2 NFS软件

中小企业会选择nfs,大门户或门户除了MFS,GFS,fastfs,tfs等分布式文件系统。对于不会的东西,如果公司需要,
我会努力搞定互联网中小型公司用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.33telnet 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 /
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息