nfs共享存储(代码片段)

gshelldon gshelldon     2022-12-06     596

关键词:


nfs共享文件存储


network filesystem;

为什么要使用 nfs?

技术图片

如果userA上传文件通过负载均衡器上传到了web01,这个时候userB去下载file1又被负载均衡器分配到了web02

上面就找不到userA上传的资源了。

技术图片

使用了共享存储nfs之后,userA上传的文件到nfs中,那么这个时候userB不管是从哪台web中都可以访问到userA上传的资源。


nfs原理


首先当NFS启动后,就会随机的使用一些端口,然后NFS就会向RPC去注册这些端口,RPC就会记录下这些端口,并且RPC会开启111端口,等待客户端RPC的请求,如果客户端有请求,那么服务器端的RPC就会将之前记录的NFS端口信息告知客户端。如此客户端就会获取NFS服务器端的端口信息,就会以实际端口进行数据的传输了。

1)首先服务器端启动RPC服务,并开启111端口

2)服务器端启动NFS服务,并向RPC注册端口信息

3)客户端启动RPC(portmap服务),向服务端的RPC(portmap)服务请求服务端的NFS端口

4)服务端的RPC(portmap)服务反馈NFS端口信息给客户端。

5)客户端通过获取的NFS端口来建立和服务端的NFS连接并进行数据的传输。

技术图片


nfs的安装

环境准备


主机名 wan lan 角色
web01 10.0.0.7 172.16.1.7 nfs客户端
web02 10.0.0.8 172.16.1.8 nfs客户端
nfs 10.0.0.31 172.16.1.31 nfs服务端

1、服务端安装配置


# centos7只安装nfs-utils
# centos6需要安装rpcbind

[root@nfs01 ~]# yum -y install nfs-utils

# 2、配置配置文件
[root@nfs01 ~]# vi /etc/exports
/data 172.16.1.0/24(rw,sync,all_squash,anonuid=666,anongid=666)
/data		允许访问的目录

# 创建用户
[root@nfs01 ~]# groupadd www -g666
[root@nfs01 ~]# useradd www -u666 -g666 -s /sbin/nologin -M

# 创建/data目录
[root@nfs01 ~]# mkdir /data
[root@nfs01 ~]# chown www.www /data

# 启动服务
先启动rpc服务,再启动apache服务
systemctl start rpcbind nfs-server

# 客户端查看nfs共享目录
[root@nfs01 ~]# showmount -e 10.0.0.31
[root@web01 ~]# showmount -e 10.0.0.31
[root@web02 ~]# showmount -e 10.0.0.31
Export list for 10.0.0.31:
/data 172.16.1.0/24

# 添加开机自启
[root@nfs01 ~]# systemctl enable rpcbind
[root@nfs01 ~]# systemctl enable nfs-server

# 查看配置文件
[root@nfs01 ~]# cat /var/lib/nfs/etab 
/data	172.16.1.0/24(rw,sync,wdelay,hide,nocrossmnt,secure,root_squash,all_squash,no_subtree_check,secure_locks,acl,no_pnfs,anonuid=666,anongid=666,sec=sys,rw,secure,root_squash,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 配置all_squash使用,指定NFS的用户UID,必须存在系统

2、客户端配置


# 先查看可以挂载的资源
[root@nfs01 ~]# showmount -e 10.0.0.31
Export list for 10.0.0.31:
/data 172.16.1.0/24

# 挂载
mount -t nfs 172.16.1.31:/data /opt/nfs/
# 卸载
umount /opt/nfs/

# 开机自动挂载
写入/etc/fstab
mount -a





nfs共享存储(代码片段)

目录环境准备NFS服务端NFS客户端httpd服务环境准备主机名wanIPlanIP角色web0110.0.0.7172.16.1.7nfs的客户端web0210.0.0.8172.16.1.8nfs的客户端nfs10.0.0.31172.16.1.31nfs的服务端NFS服务端NFS(NetworkFileSystem)和RPC(RemoteProcedureCall)部署NFS服务端,需要... 查看详情

nfs共享存储服务的部署(代码片段)

NFS共享存储服务的部署NFS(NetworkFileSystem)即网络文件系统主要用于存储web服务器上用户上传的数据信息,图片?附件?头像?视频?音频NFS网络文件系统工作方式1、在nfs服务端创建共享目录2、通过mount?网路挂载,将NFS客户端本地目... 查看详情

详解nfs-----共享存储服务(代码片段)

...系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。NFS最早是由Sun公司发展出来的。简单的来说:它就是... 查看详情

nfs共享存储服务部署(代码片段)

...系统主要功能是通过局域网络让不同的主机系统之间可以共享文件或目录。NFS系统和Windows网络共享、网络驱动器类似,只不过windows用于局域网,NFS用于企业集群架构中,如果是大型网站,会用到更复杂的分布式文件系统FastDFS,glusterfs,... 查看详情

linux网络服务——nfs共享存储服务(包含操作详解)(代码片段)

NFS共享存储服务NFS共享存储服务概述NFS应用场景NFS服务器配置一、服务器的配置二、客户端的配置NFS常见故障解决思路NFS共享存储服务概述NFS是一种基于TCP/IP传输的网络文件系统协议。通过使用NFS协议,客户机可以像访问本... 查看详情

02-nfs存储服务(代码片段)

...。NFS主要功能是通过局域网络让不同的主机系统之间可以共享文件或目录,NFS客户端可以通过挂载的方式将NFS服务端共享数据的文件目录挂载到本地挂载点,这样对本地挂载点目录中的数据进行操作其实就是操作NFS服务端共享数... 查看详情

nfs共享存储(代码片段)

....0.0.172.16.1.客户端nfs10.0.0.172.16.1.服务端服务端安装配置nfs共享参数参数作用rw读写权限ro只读权限root_squash当NFS客户端以root管理员访问时,映射为NFS服务器的匿名用户(不常用),root用户映射后还是普通用户no_root_squa 查看详情

nfs共享存储服务(代码片段)

...中的一种,也被称为NFS.NFS允许一个系统在网络上与它人共享目录和文件。通过使用NFS,用户和程序可以像访问本地文件一样访问远端系统上的文件。(无身份验证机制)NFS的优点 1.本地工作站使用更少的磁盘空间,因为通常的... 查看详情

linux(10):期中架构---nfs存储服务(代码片段)

1.共享存储服务概念:#NFS是NetworkFileSystem的缩写,中文意思是网络文件系统,#它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录。2.NFS共享存储服务的应用:#将数据存储到一台服务器上,实现... 查看详情

redhat6.5中搭建nfs共享存储服务(代码片段)

...户机可以像访问本地目录一样访问远程NFS服务器中提供的共享资源,对于大多数负载均衡群集来说,使用NFS协议来共享数据库较为常见,但NFS服务没有用户认证机制,且数据在网络上为明文传输,安全性较差,所以,一般只适用... 查看详情

nfs--共享存储(代码片段)

...。NFS主要功能是通过局域网络让不同的主机系统之间可以共享文件或目录。NFS系统和Windows网络共享、网络驱动器类似,只不过windows用于局域网,NFS用于企业集群架构中,如果是大型网站,会用到更复杂的分布式文件系统FastDFS,glusterfs,... 查看详情

nfs共享存储服务(代码片段)

...三、NFS的特点四、实验步骤1、安装nfs和rpcbind软件2、设置共享目录3、启动NFS服务并验证结果4、客户机中访问NFS共享资源4.1手动挂载NFS共享目录4.2fstab自动挂载设置4.3强制卸载NFS五、总结引言本文详细讲解了NFS实验的几个步骤。... 查看详情

nfs文件系统及搭建nfs共享服务(代码片段)

一、什么是文件系统?  文件系统是对一个存储设备上的数据和元数据进行组织的一种机制。文件系统是在一个磁盘(包括光盘、软盘、闪盘及其它存储设备)或分区上组织文件方式方法,常见文件系统如ext2、ext3、ext4、NTFS... 查看详情

nfs(代码片段)

...就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件(NFS一般用来存储共享视频,图片等静态数据)。而在客户端看来,共享的目录就是其本身的目录。网络文件系统:通过网络存储和组织文件的一种方法或... 查看详情

配置nfs作为hdfs高可用的共享存储系统(代码片段)

所有命令或步骤:首先,在各个节点上安装nfs服务  yuminstall-ynfs  servicerpcbindstart  servicenfsstart编辑/etc/exports文件,添加下面一行  /mnt/sharehadoop1(rw,no_root_squash,async)hadoop2(rw,no_root_squash,async)hadoop6(rw,no_root_squ 查看详情

⚡超容易的nfs存储服务搭建流程⚡(代码片段)

...应存储软件是否安装🔅2.编写配置文件🔅3.创建共享目录信息,目录授权🔅4.启动nfs相关服务五、客户端NFS服务部署流程🔅1.检查安装软件服务🔅2.进行共享目录挂载使用 查看详情

nfs共享储存服务部署(代码片段)

...NFS客户机可以向访问本地目录一样访问远程NFS服务器中的共享资源。大多数负载均衡群集都使用NFS协议。NFS网络文件系统一般被用来存储共享视频、图片等静态资源文件。环境部署:redhat6.5系统服务器Ip:192.168.100.101客户端ip:19... 查看详情

在kvm环境下,实现基于共享存储(nfs)的虚拟机夸主机迁移(代码片段)

一台作为nfs共享存储服务器[root@cent7_6~]#yuminstall-ynfs-utilsrpcbind#配置共享#将本地的/data目录共享出去,并且只允许10.0.0.0/24访问,权限为rw,并sync同步写入#no_root_squash远程root映射成NFS服务器的root用户[root@cent7_6~]#mk... 查看详情