NFS存储服务部署(上)


作者George

归档:学习笔记

2018/1/24


NFS存储服务部署(上)

1.1 NFS服务介绍

1.1.1 什么是NFS?

1. NFS——Network File Systemt网络文件系统,叫称为网络共享文件系统

2. 作用:通过网络(一般为局域网)让不同主机系统之间可以共享文件

3. NFS服务和winodws系统的网络共享很相似,但NFS无法部署在windows上

4. windows与linux网络共享使用FTP、samba,它们都支持windows与linux之间共享

5. 如大型网站,还可能用到分布式文件系统,如:moosefs( mfs )、gfs、fastdfs

1.1.2 什么是文件系统?

1. 在磁盘或分区中组织管理文件的一种方式

2. 企业中:磁盘先做raid——分区——格式化(创建文件系统)——挂载使用

1.1.3 NFS在企业中的应用场景

1. 为什么要用NFS软件?

可以实现web集群中服务器数据一致性。

1. 因负载均衡服务器会将访问流量分流处理,这样不会便于用户相互之间访问

2. 服务器之间的数据同步虽然实现用户互访,但实现过程相对复杂

3. NFS服务器可以统一管理存储用户访问数据,实现用户互访

1.1.4 共享存储服务分类:

硬件存储:IBM oracle(收购了sun) EMC  (去IOE,用BAT)

软件存储:NFS  mfs  FTP  samba

1.2 NFS系统原理

1.2.1 简单描述NFS工作原理:

1. 部署好NFS服务,在NFS服务端创建一个video共享目录

2. web服务器(NFS客户端),创建一个本地video目录,作为一个挂载点

3. web服务器通过mount命令实现网络挂载(mount -nfs 172.16.1.41:/video),将NFS服务器上的

video目录挂载到本地video挂载点上

4. web服务器(NFS客户端)上在video目录中,增删改查的操作,都等价于在NFS服务器端video 目录中的操作

1.2.2 NFS系统挂载结构

1.2.3 什么是RPC

remote procedure call 远程过程调用:端口号111

是一种通过网络向远程计算机上请求服务的一种协议。

1.2.4 NFS的工作流程

1. 启动RPC服务,建立中介服务

2. 启动NFS服务,开启房源信息,向RPC服务进行注册

3. RPC服务接收到NFS服务进程信息和对应端口号

4. NFS客户端向RPC服务111端口发出请求(访问共享目录)

5. RPC服务响应NFS客户端请求

6. NFS客户端与NFS服务端共享目录建立网络连接,实现数据网络存储

下图:用房东、中介、客户举例

下图:没有RPC的情况是这样的,因每个服务进程对应的端口号不同,并且是随机的,所有对于客户端开说不知道该访问哪个端口。

下图:RPC服务的作用,NFS服务端的每个服务进程都会向RPC服务进程注册,客户端也只需访问RPC服务的111端口即可,由RPC服务来告诉客户端对于的服务与端口号。

1.2.5 当用户通过挂载访问NFS共享目录时的工作流程

1.3 NFS网络共享文件系统服务部署流程

1.3.1 NFS服务端部署流程

1. 检查NFS服务相关软件是否安装

-qa |egrep 'rpcbind|nfs-utils'

如没有,则yum install rpcbind nfs-utils -y 安装一下。

2. 编写NFS服务配置文件

vim /etc/exports

1)定义共享目录,如下面的/data/目录就是要共享的目录

2)定义允许使用共享目录的主机或网络地址信息“24和(”之间没有空格,3)(定义共享目录权限信息)

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

保存退出

3)创建共享目录

mkdir /data

4)授权共享目录

系统默认有一个nfsnobody用户

chown -R nfsnobody.nfsnobody /data

5)启动rpcbind、nfs-utils服务

/etc/init.d/rpcbind start

/etc/init.d/rfs start

注:如果须重启服务,使用relod重新加载配置文件

6)本地检查测试

rpcinfo -p localhost 查看RPC服务中是否有注册的进程服务和对应端口号

showmount -e 172.16.1.31 检查是否有可以共享的目录

1.3.2 NFS客户端部署流程

1. 确认是否安装NFS服务相关软件

rpm -qa |egrep 'rpc|nfs'

2. 检查局域网中是否存在共享存储服务(目录)

rpcinfo -p 172.16.1.31 查看RPC服务中是否有注册的进程服务和对应端口号

showmount -e 172.16.1.31 检查是否有可以共享的目录

3. 实现共享目录应用(局域网挂载)

mount -t nfs 172.16.1.31:/data/ /mnt

df -h

1.3.3 NFS服务常见进程

rpc.statd主要作用:检查数据存储的一致性

rpc.rquotad主要作用:控制磁盘配额

rpc.mountd主要作用:核对/etc/exports配置文件中的权限,和NFS服务器端本地文件系统权限

rpc.idpamd主要作用:实现用户压缩/映射(经用户压缩后,身份转换为nfsnobody)

ps -ef |grep "nfs|rpc"   #查看与NFS相关的进程

1.3.4 NFS服务配置文件格式说明

1. man exports 查看格式

第一段:要共享的目录(每个目录独占一行)

第二段:用于哪个网段或某个主机访问(主机:10.0.0.30,网络:10.0.0.0/24),后面没有空格接着写(权限)

1.3.5 影响访问NFS服务器的权限

1. NFS配置文件权限,中小括号内的rw权限

2. 本地文件系统权限,为了安全一般更改其属主

1.3.6 企业生产环境常见NFS案例

1.3.7 NFS配置参数权限 

1. rw参数:可读写

2. ro参数:只读

/data 172.16.1.0(ro,sync,all_squash) :ro权限给开发人员用于读取配置文件,而不能修改

3. sync参数的作用:同步,保证数据的可靠性

同步异步对比:

异步:传输数据快、不可靠,容易丢(先存到内存中处理完后,最后在写到硬盘)

同步:安全可靠、传输数据慢(先经过内存,在写入到硬盘,在处理)

4. async参数:ups  AB双路电源

5. no_all_squash参数:所有用户都不映射(什么身份过来就是什么身份)

6. all_squash参数:所有用户都映射(成指定nfsnobody)

7. root_squash参数:root用户映射(成指定nfsnobody)

8. no _root_squash参数:不对root用户映射(进来NFS服务器后是root身份,权限 很大)

下图说明4567参数的作用:

下图根据不同的用户是否进行身份压缩的一个说明:

                     

1.3.8 企业实战需求:

问题: 1. /data/共享目录权限固定为www用户管理

2. 在NFS配置文件中,设置了all_squash参数(全部用户都压缩/映射)

3. 让NFS客户端可以向共享目录存储数据

实现过程:

1. 设置/data/目录权限信息

chown www.www /data/

先保证有 www 用户

2. 编写NFS配置文件

1)先查看www用户的uid,gid信息

id www

2)配置文件中小括号内加入www对应的uid,gid(anonuid=502,anongid=502)

/data 172.16.1.0/24(rw,sync,all_squash,anonuid=502,anongid=502)

注:anonuid和anongid参数作用:将所有访问的用户进来NFS服务器后映射为www用户

1. 客户端要有NFS配置文件anonuid和anongid指定用户(如没有对应的用户,只有对应的uid也可以 访问,但ls -l /mnt查看目录信息时属主会显示为uid)

2. 所以客户端和服务端创建的映射用户,uid和gid信息需要保持一致(否则会权限不足)

3)重新加载nfs

/etc/init.d/nfs reload

3. 客户端重新挂载共享目录

1)先卸载

umount /mnt

2)再挂载

mount -t nfs 172.16.1.31:/data /mnt

4.  进程数据输出测试

touch /mnt/kai.txt 创建测试文件查看属主信息是否为www

ls -l /mnt/kai.txt 查看用户属组信息

原文地址:http://blog.51cto.com/13055758/2065149

时间: 2024-10-14 07:00:23

NFS存储服务部署(上)的相关文章

NFS存储服务(上)

第1章 NFS介绍 1.1 什么是NFS NFS是Network File System的缩写,中文意思是网络文件系统 它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录 NFS==网络共享文件系统 互联网中小型网站集群架构后端常用NFS进行数据共享 如果大型网站,那么有可能还会用到更复杂的分布式文件系统,例如:Moosefs(mfs).GlusterFS.FastDFS 扩展:NFS网络文件系统很像Windows系统的网络共享,但是无法部署在windows系统上,NF

NFS存储服务及部署

1 NFS简介 1.1 什么是NFS NFS=Network File System=网络文件系统.主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录.NFS客户端(一般为应用服务器,例如web)可以通过挂载(mount)的方式将NFS服务器端共享的数据目录挂载到NFS客户端本地系统中(就是某一个挂载点下).从客户端本地看,NFS服务器端共享的目录就好像是客户端自己的磁盘分区或者目录一样,而实际上却是远端的NFS服务器的目录.分布式文件系统:Moosefs(mfs).Glu

部署NFS存储服务(下)

作者:Georgekai 归档:学习笔记 2018/1/25 部署NFS存储服务(下) 2.1 服务端有关的配置 2.1.1 练习题:共享不同的俩个目录,分别赋予读和写权限 服务端部署过程: 第一个里程:编写nfs配置文件 vim /etc/exports /data/w  172.16.1.0/24(rw,sync,all_squash) /data/r  172.16.1.0/24(ro,sync,all_squash) 注:服务端配置文件中,尽量避免继承权限的发生(因权限大的会生效) 第二

NFS存储服务(下)

第1章 回顾及练习 1.1  回顾总结 1.1.1 NFS存储服务是什么? 网络文件系统,实现数据共享统一一致 1.1.2 NFS工作原理 1. 什么是rpc服务 rpc服务类似于中介,nfs服务将启动的进程和端口信息,向rpc服务进行注册 nfs客户端向rpc服务发出请求,进行共享目录挂载,从而实现通过网络存储数据信息 2. 服务端做了三件事: ①. 首先启动rpc服务 ②. 其次启动nfs服务 ③. nfs服务向rpc服务进行注册,只注册一次(如果nfs服务进行了重启,会再次注册) 3. 客

NFS存储服务深度实践

第1章 NFS介绍 1.1 什么是NFS? NFS 是Network File System的缩写,中文意思是网络文件系统.它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录.NFS客户端(一般为应用服务器,例如web)可以通过挂载(mount)的方式将NFS服务器端共享的数据目录挂载到NFS客户端本地系统中(就是某一个挂载点下).从客户端本地看,NFS服务器端共享的目录就好像是客户端自己的磁盘分区或者目录一样,而实际上却是远端的NFS服务器的目录. NFS网络文件系统

Linux(10):期中架构(2)--- NFS存储服务

1. 共享存储服务概念: # NFS是Network File System的缩写,中文意思是网络文件系统, # 它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录. 2. NFS共享存储服务的应用: # 将数据存储到一台服务器上,实现数据统一一致,共享访问 # NFS存储服务器中主要存储哪些信息:用户上传的图片 音频 视频 附件等信息 # NFS服务是分为服务端和客户端 # 存储服务器:NFS服务端 网站web服务器:NFS客户端 # 实现共享存储好处: 01. 实现

腾讯云cos对象存储服务文件上传api就是一个大坑

一.介绍 对象存储服务(Cloud Object Service)是基于腾讯多年海量服务经验,对外提供的可靠.安全.易用的海量存储服务.提供多样化接入方式,以及全国部署的上传加速集群,可以无缝衔接CDN进行加速下载. 二.cos 文件上传api源码 /** * 单个文件上传,适用于小文件 * * @param bucketName * bucket名称 * @param remotePath * 远程文件路径 * @param localPath * 本地文件路径 * @return 服务器端返

LAMP集群项目五 部署NFS存储服务并设置WEB服务挂载

yum install nfs-utils portmap -y 在centos6.5中portmap已经改为rpcbind 先启动rpcbind /etc/init.d/rpcbind start /etc/init.d/nfs start mkdir /backup   创建一个共享目录\ 确保nfsnobody都是同一个uid : 65534 ,否则不是一个权限 grep  nfsnobody  /etc/passwd vim  /etc/exports /backup 192.168.1

NFS共享存储服务部署

服务端部署 1.检查服务器上是否已安装nfs及rpc,没有则需要安装检查rpm -qa rpcbind nfs-utils安装(已安装略过)yum install -y rpcbind nfs-utils################################################################2.编写nfs的配置文件cat > /etc/exports <<-EOF/data 172.16.1.0/24(rw,sync)EOF############