nfs存储服务部署(上)

author author     2022-10-12     489

关键词:


 

作者George

归档:学习笔记

2018/1/24




NFS存储服务部署(上)

1.1 NFS服务介绍

1.1.1 什么是NFS?

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

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

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

4. windowslinux网络共享使用FTPsamba,它们都支持windowslinux之间共享

5. 如大型网站,还可能用到分布式文件系统,如:moosefsmfs )、gfsfastdfs

1.1.2 什么是文件系统?

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

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

1.1.3 NFS在企业中的应用场景

1. 为什么要用NFS软件?

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

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

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

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

技术分享图片 

1.1.4 共享存储服务分类:

硬件存储IBM oracle(收购了sunEMC  (去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 查看用户属组信息


分布式存储---moosefs部署

第1章介绍写在前面,自己的理解。对比nfs文件共享系统,其目的都是一样的。nfs的运行过程是客户端先向服务端的rpc服务请求nfs的端口号,然后客户端再根据端口号找到对应的nfs服务,进行读写。而mfs将nfs服务端的结构再进行... 查看详情

部署nfs存储服务(下)

 作者:Georgekai归档:学习笔记2018/1/25 部署NFS存储服务(下)2.1 服务端有关的配置2.1.1 练习题:共享不同的俩个目录,分别赋予读和写权限服务端部署过程:第一个里程:编写nfs配置文件vim/etc/exports/data/w 172.16... 查看详情

openstack存储服务cinder存储节点部署nfs(十七)

Cinder存储节点部署1、安装软件包yuminstall-ynfs-utilsrpcbind提示:早期版本安装portmapnfs-utils:包括基本的NFS命令与监控程序 rpcbind或portmap:支持安全NFSRPC服务的连接2、配置NFS目录的访问权限、用户映射mkdir-p/data/nfsvim/etc/exports/data... 查看详情

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

第1章NFS介绍1.1NFS基本概述NFS(NetworkFileSystem)网络文件系统主要功能是通过局域网络让不同的主机系统之间可以共享文件或目录。NFS系统和Windows网络共享、网络驱动器类似,只不过windows用于局域网,NFS用于企业集群架构中,如果是... 查看详情

02—nfs服务器的原理和部署

...共享资源。在负载均衡的集群中,使用NFS协议来共享数据存储。NFS协议。2、限制在局域网使用:NFS没有用户认证机制,而且数据在网络上明文传输。(安全性差)3、NFS服务的实现依赖于RPC(远程过程调用)机制,以完成远程到本... 查看详情

02—nfs服务器的原理和部署

...共享资源。在负载均衡的集群中,使用NFS协议来共享数据存储。NFS协议。2、限制在局域网使用:NFS没有用户认证机制,而且数据在网络上明文传输。(安全性差)3、NFS服务的实现依赖于RPC(远程过程调用)机制,以完成远程到本... 查看详情

kubernetes集群部署nfs-subdir-external-provisioner存储插件(代码片段)

...NFS服务器3.1、配置环境3.2、安装nfs-utils和rpcbind3.3、创建存储的文件夹3.4、配置NFS3.5、设置开机启动并启动3.6、查看是否有可用的NFS地址4、客户端配置4.1、安装nfs-utils和rpcbind4.2、创建挂载的文件夹4.3、挂载nfs5、写入一个测试文... 查看详情

vsphere虚拟化之外部存储部署(上)

知识部分1、ESXi存储:分为外部共享存储和本地存储·外部共享存储:指ESXi主机通过网络连接的外部存储和磁盘阵列,其中包括SAN、iSCSI、NFS等存储协议。今天外部共享存储用openfiler来做。2、openfiler:是一个免费得NASiSCSI的SAN服... 查看详情

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

文章目录一、NFS存储服务概念介绍二、NFS服务软件的基本作用三、NFS服务存储数据原理四、服务端NFS服务部署流程🔅1.检查相应存储软件是否安装🔅2.编写配置文件🔅3.创建共享目录信息,目录授权🔅4.启动nfs相关... 查看详情

storageclass和本地持久化存储

...度上并不能满足我们的需求,比如我们有一个应用需要对存储的并发度要求比较高,而另外一个应用对读写速度又要求比较高,特别是对于StatefulSet类型的应用简单的来使用静态的PV就很不合适了,这种情况下我们就需要用到动... 查看详情

自动化部署安装nfs+rsync+sersync+nfs客户端+smtp

...户,密码为zsfweb服务器使用nfs服务器的/data目录来做后端存储rsync对nfs服务器的目录做实时备份,使用sersync+rsync,每天定时备份配置文件,本地保存7天,rsync服务器上保存180天。使用管理服务器管理所有的设备。分发hosts文件,... 查看详情

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

...负载均衡群集都使用NFS协议。NFS网络文件系统一般被用来存储共享视频、图片等静态资源文件。环境部署:redhat6.5系统服务器Ip:192.168.100.101客户端ip:192.168.100.102NFS服务器部署:1.需 查看详情

nfs部署和优化

...rkfilesystem,网络文件系统。允许通过网络共享文件系统将服务端文件系统共享给远程客户端,在客户端上访问共享目录与访问客户端本地文件系统一样。服务端IP:192.168.147.137,客户端IP:192.168.147.138服务端:在服务端上安装NFS... 查看详情

nfs存储服务(上)

第1章 NFS介绍1.1 什么是NFS  NFS是NetworkFileSystem的缩写,中文意思是网络文件系统  它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录  NFS==网络共享文件系统 &nbs... 查看详情

kubernetes集群部署nfs-subdir-external-provisioner存储插件(代码片段)

...NFS服务器3.1、配置环境3.2、安装nfs-utils和rpcbind3.3、创建存储的文件夹3.4、配置NFS3.5、设置开机启动并启动3.6、查看是否有可用的NFS地址4、客户端配置4.1、安装nfs-utils和rpcbind4.2、创建挂载的文件夹4.3、挂载nfs5、写入一个测试文... 查看详情

vmwarevsphere4.0平台虚机迁移至vmwarevsphere6.0平台方法

....5版本部署的NFSServer,部署的IP地址为192.168.15.252,NFS共享存储目录为/NFS,另一台为通过UNIX平台FreeNAS9.10部署一套NFS服务,部署的IP地址为192.168.15.253,共享存储目录为/mnt/data01/nfs,其中vSphere4.0和vSphere6.0平台统一访问NFS服务,最... 查看详情

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服务端,需要... 查看详情

k8s安装nfs设置pvpvc并部署mysql

...教学的简便做法,实际生产环境中还是需要nfs、对象存储等存储服务来支撑这个持久化。以下是详细的安装命令。 查看详情