LINUX运维学习之综合架构篇——NFS存储服务器概念介绍及搭建

LINUX运维学习之综合架构篇——NFS存储服务器概念介绍及搭建

罗小黑
2021-01-18 / 0 评论 / 17 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2021年05月27日,已超过70天没有更新,若内容或图片失效,请留言反馈。

1、什么是存储服务

NFS是网络文件共享系统
它主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录
NFS客户端(一般是应用服务器,例如web)可以通过挂载(mount)的方式将NFS服务器端共享的数据目录挂载到NFS客户端本地系统中(就是某一个挂载点下)。从客户端本地看,NFS服务器端共享的目录就好像是客户端自己的磁盘分区或者目录一样,而实际上却是远端NFS服务器的目录。
NFS属于本地文件存储服务。
请输入图片描述

2、NFS存储服务的作用:

(1)实现数据的共享存储
(2)编写数据操作管理
(3)节省购买服务器磁盘的开销

3、NFS工作流程:

(1)在NFS服务端创建共享目录
(2)通过mount挂载,将NFS服务端共享目录挂载到NFS客户端本地目录上。
(3)NFS客户端挂载目录上创建、删除、查询数据操作, 相当于在服务端操作。
请输入图片描述

4、NFS两个重要的服务

由于NFS服务启动时产生的进程服务器端口号是随机的,因此NFS的各项功能都需要向RPC服务(rpcbind服务)注册,所以只有RPC服务才能获得NFS服务的各项功能对应的端口号、pid、NFS在主机所监听的IP等信息,而NFS客户端只能通过RPC服务询问才能找到正确的端口。
请输入图片描述

5、nfs服务部署流程

rpc:远程过程调用服务程序
服务端部署
(1)下载软件


rpm -qa|grep -E "nfs|rpc"  #检查软件是否安装,默认是不安装的
yum install -y nfs-uttls rpcbind

(2)编写nfs服务配置文件


vim /etc/exports
/test  172.16.1.0/24(rw,sync)

请输入图片描述
a b(c)
a、设置数据的存储目录 (/test)
b、设置网络白名单(允许哪些主机可以连接到存储服务器进行数据存储)
c、配置存储目录的权限信息,存储目录一些功能
(3)创建一个存储目录


mkdir /test
chown nfsnobody.nfsnobody /test
ls -ld /test

(4)启动服务程序
先启动rpc服务


systemctl start rpcbind.service
systemctl enable rpcbind.service
systemctl status rpcbind.service

在启动NFS服务


systemctl start nfs
systemctl enable nfs
systemctl status nfs

客户端
(1)安装软件


yum install -y nfs-utils

(2)远程挂载目录


mount -t nfs 172.16.1.31:/test  /mnt

请输入图片描述
实现多个网段主机进行挂载

(1)/test 172.16.1.0/24(rw,sync) 10.0.0.0/24(rw,sync)
(2)/test 172.16.1.0/24(rw,sync) 

/test 10.0.0.0/24(rw,sync)

6、影响NFS服务存储权限的因素

(1)服务端本身目录权限exports文件里ro/rw参数
(2)服务端本身目录权限
(3)服务端共享目录权限存在继承关系。例如:/test, /test/a
(4)客户端挂载参数是否为ro

7、NFS服务配置参数


NFS配置参数权限
rw   -- 存储目录是否有读写权限
ro   -- 存储目录是否时只读权限
sync   -- 同步方式存储数据 直接将数据保存到磁盘(数据存储安全)
async  -- 异步方式存储数据 直接将数据保存到内存(提高数据存储效率)
no_root_squash  -- 不要将root用户身份进行转换   
root_squash     -- 将root用户身份进行转换
all_squash      -- 将所有用户身份都进行转换 
no_all_squash   -- 不要将普通用户身份进行转换

PS:检查NFS服务进程与端口注册信息

rpcinfo -p 172.16.1.31
0

评论 (0)

取消