本地NAS构建

由于阿里云线上有NAS存储,又不能公网访问,所以本地通过软件构建一个NAS以供测试。

NFS的挂载原理

NFS分为客户端与服务器端,一般设置为一个Server端,多个客户端,也可设置为多对多,当服务器端设置好共享目录/data后,客户端通过相应的访问权限,将共享目录挂载到本地系统的某个目录下,就可以透明的看到共享目录里的文件了,依据服务器制定的相应权限做操作

NFS服务器与客户端的通信原理

客户端NFS和服务端NFS通讯过程

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

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

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

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

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

NFS系统守护进程

nfsd:它是基本的NFS守护进程,主要功能是管理客户端是否能够登录服务器;

mountd:它是RPC安装守护进程,主要功能是管理NFS的文件系统。

当客户端顺利通过nfsd登录NFS服务器后,在使用NFS服务所提供的文件前,还必须通过文件使用权限的验证。它会读取NFS的配置文件/etc/exports来对比客户端权限。

portmap:主要功能是进行端口映射工作。当客户端尝试连接并使用RPC服务器提供的服务(如NFS服务)时,portmap会将所管理的与服务对应的端口提供给客户端,从而使客户可以通过该端口向服务器请求服务。

环境:

系统

IP

应用

硬盘

备注

Centos7

ip

nas

10G系统盘+20G数据盘

20G为NAS数据盘,挂载/var/nfs

新建一个虚拟机,系统安装使用最小化安装,可参照我前面的文章,有详细介绍。一般情况是系统盘是和数据盘分开。系统盘在线上我一般情况是分配20G,如果是容器等应用系盘我会分配50G,当然如果是有很多镜像的容器环境,那么我会系统将/var/lib/docker等用单独的数据盘来挂载。

fdisk /dev/sdb //进行分区
mkfs.ext4 /dev/sdb1
mount /dev/sdb1 /var/nfs/
本地NAS构建

安装配置NAS文件共享存储

1、服务端安装

yum -y install nfs-utils rpcbind

2、关闭防火墙

systemctl stop firewalld.service   //关闭防火墙,也可以写对应的条目放开特地的一些端口
systemctl disable firewalld.service //禁止防火墙开机启动

3、配置nas

配置文件:/etc/exports

共享目录创建:

mkdir /var/nfs
chmod 777 /var/nfs

4. 本地NAS存储目录 192.168.230.0/24(授权访问客户端的地址段)

/var/nfs 192.168.230.0/24(rw,sync,no_root_squash,no_all_squash)
/var/nfs 172.16.0.0/24(rw,sync,no_root_squash,no_all_squash)

5. 重新加载NFS配置

exportfs -r

参数说明:

rw:可读写的权限

ro:只读的权限 anonuid:可以自行设定这个UID的值,这个UID必需要存在于你的/etc/passwd当中anongid:同anonuid,但是变成groupID就是了 sync:资料同步写入到内存与硬盘当中 async:资料会先暂存于内存当中,而非直接写入硬盘 insecure:允许从这台机器过来的非授权访问

no_root_squash:登入NFS主机,使用该共享目录时相当于该目录的拥有者,如果是root的话,那么对于这个共享的目录来说,他就具有root的权限,这个参数『极不安全』,不建议使用

root_squash:登入NFS主机,使用该共享目录时相当于该目录的拥有者。但是如果是以root身份使用这个共享目录的时候,那么这个使用者(root)的权限将被压缩成为匿名使用者,即通常他的UID与GID都会变成nobody那个身份

all_squash:不论登入NFS的使用者身份为何,他的身份都会被压缩成为匿名使用者,通常也就是nobody

6. 启动服务

systemctl start rpcbind
systemctl start nfs

7. 设置开机启动

systemctl enable rpcbind
systemctl enable nfs

8. 查看端口占用,以便开着防火墙的时候设置,如果闲麻烦,可以通过限制访问IP

rpcinfo -p
本地NAS构建

Linux nfs客户端安装

vi /ettc/hosts

在末尾加入

nas服务端ip    nas
yum -y install nfs-utils //安装软件
mkdir /usr/local/src/images //创建挂载点
mount -t nfs nas:/var/nfs /usr/local/src/images //挂载,nas有做host到nas服务端IP
df -h   //查看挂载

开机自动挂载

vi /etc/fstab

##尾行下面新增加一行写入

nas:/var/nfs /usr/local/src/images nfs defaults,_netdev 0 0

注:_netdev表示设备需要网络

本地NAS构建

展开阅读全文

页面更新:2024-03-03

标签:端口   服务端   使用者   防火墙   客户端   权限   身份   服务器   目录   数据

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top