NFS共享存储

NFS共享存储NFS共享存储1.NFS概述NFS(NetworkFileSystem)主要功能是通过网络来做文件存储。使用NFS可以实现多台服务器之间数据共享,也可以实现多台服务器之间的数据一致2.NFS工作原理1.当用户发送请求通过用户进程访问NFS客户端,会根据不同的请求来使用不同的函数对数据进

大家好,欢迎来到IT知识分享网。

NFS共享存储

1.NFS概述

	NFS(Network File System)主要功能是通过网络来做文件存储。
	使用NFS可以实现多台服务器之间数据共享,也可以实现多台服务器之间的数据一致

2.NFS工作原理

1.当用户发送请求通过用户进程访问NFS客户端,会根据不同的请求来使用不同的函数对数据进行处理
2.NFS客户端通过TCP/IP协议的方式传递给NFS服务端
3.NFS服务端接收到请求,会先调用portmap进程进行端口映射
4.rpc.nfsd进程用于判断NFS客户端是否拥有权限链接NFS服务端
5.Rpc.mount进程判断客户端是否有对应的权限进行验证
6.idmap进程实现用户映射和压缩
7.最后NFS服务端会将对应请求的函数转换为本地能识别的命令,传递至内核,再由内核驱动硬件
# Rpc.nfsd:是NFS的守护进程,主要是管理客户端是否能够登陆NFS服务器
# Rpc.mount:主要是管理NFS的文件系统。当客户端顺利通过nfsd登陆到NFS服务器后,在使用NFS服务所提供的文件前,还必须顺利通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限
# Portmap:主要是进行端口映射工作
# rpc是一个远程过程调用,使用NFS必须要有rpc服务,它的服务名为:rpcbind

NFS共享存储

3.安装部署NFS

3.1.服务端

1.先安装nfs服务:
	centos5,centos6:yum install -y nfs rpcbind
	centos7:yum install -y nfs-utils
2.配置NFS服务:vim /etc/exports
	# 共享目录   允许访问NFS服务端的网段(权限)
	/data       172.16.1.0/24(rw,sync,all_squash
nfs共享参数 参数作用
rw* 读写权限
ro 只读权限
root_squash 当NFS客户端以root身份访问时,映射为NFS服务器的匿名用户
no_root_squash 当NFS客户端以root身份访问时,映射为NFS服务器的root管理员
all_squash 无论NFS客户端使用什么身份访问,都映射为NFS服务器的匿名用户
no_all_squash 无论NFS客户端使用什么身份访问,都不进行压缩
sync* 同时将数据写入到内存和硬盘中,不丢失数据
async 优先将数据保存到内存中,然后在写入到硬盘中,效率高,但有可能丢失数据
anonuid* 配置all_squash使用,指定NFS的用户uid,系统中必须存在
anongid* 指定NFS的用户gid,系统中必须存在
3.创建共享目录:mkdir /data
4.修改共享目录的属主和属组为nfs的匿名用户:
	chown nfsnobody:nfsnobody /data
5.关闭防火墙和selinux:
	systemctl stop firewalld
	setenforce 0
6.启动服务并加入开机自启
	systemctl start nfs
	systemctl enable nfs
7.检查进程:ps -ef|grep nfs
8.检查配置文件是否生效:cat /var/lib/nfs/etab

NFS共享存储

3.2.客户端操作

1.安装nfs:yum install -y nfs-utils
2.查看服务端里面可以挂载的目录:
	showmount -e 172.16.1.31

NFS共享存储

3.挂载共享目录:
	mount -t nfs 172.16.1.31:/data /opt

4.NFS共享存储实战

4.1 环境

主机名 WanIP LanIP 角色 部署应用
web01 10.0.0.7 172.16.1.7 网站服务(nfs客户端) httpd,php,nfs
web02 10.0.0.8 172.16.1.8 网站服务(nfs客户端) htppd,php,nfs
nfs 10.0.0.31 172.16.1.31 共享储存(nfs服务端) nfs

4.2.部署交作业网站

1.安装apache和php:
	yum install - y apache php
2.下载代码到站点目录中	
3.解压代码:
	unzip kaoshi_modify.zip
4.让apache和nfs统一使用用户www uid和gid为666:
	创建用户及用户组:groupadd www -g 666
				   useradd www -u 666 -g 666
5.修改apache的配置文件,将用户和用户组改成www:
	vim /etc/httpd/conf/httpd.conf

NFS共享存储

6.将站点目录的属主和属组改成www:
	chown www:www /var/www/html

NFS共享存储

7.启动apache服务:
	systemctl start httpd
8.检查进程:
	ps -ef|grep httpd
9.端口检查:
	ntestat -lntup|grep httpd

NFS共享存储

10.打开浏览器访问

NFS共享存储

11.上传文件

NFS共享存储

12.查看站点目录下是否有user_data目录,查看该目录下是否有上传的文件,并查看它们的属主与属组是否是www用户

NFS共享存储

4.3 给交作业网站部署共享储存

1.先安装nfs服务:
	centos5,centos6:yum install -y nfs rpcbind
	centos7:yum install -y nfs-utils
2.配置NFS服务:vim /etc/exports
	# 共享目录   允许访问NFS服务端的网段(权限)
	/data       172.16.1.0/24(rw,sync,anonuid=666,anuogid=666,all_squash

NFS共享存储

3.创建www用户:
	groupadd www -g 666 
	useradd www -u 666 -g 666

NFS共享存储

4.创建共享目录并修改共享目录的属主与属组为nfs指定的匿名用户:
	mkdir /data
	chown www:www /data

NFS共享存储

5.关闭防火墙和selinux:
	systemctl stop firewalld
	setenforce 0
6.启动服务并加入开机自启
	systemctl start nfs
	systemctl enable nfs
7.检查进程:ps -ef|grep nfs
8.检查配置文件是否生效:cat /var/lib/nfs/etab

NFS共享存储

9.在客户端挂载nfs服务端的目录:
	mount -t nfs 172.16.1.31:/data /var/www/html/user_data

NFS共享存储

10.上传文件查看服务端是否能够获取到文件

NFS共享存储
NFS共享存储

11.将第二台客户端挂载到服务端上,查看是否能够共享到文件

NFS共享存储

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/32166.html

(0)

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信