使用电脑主机或者服务器搭建FTP/SAMBA/NFS服务
使用NAS网络存储服务器
使用启耘Box作为网络文件存储服务器
NAS是一种通过RJ45网络接口与网络交换机相连接的存储设备,主要用于局域网环境中多台计算机主机共享存储空间和,为局域网中的计算机提供文件共享服务,因此又称为文件服务器。
一台NAS存储设备至少包括硬件和针对文件共享应用优化过的操作系统两个基本组成部分。硬件包括CPU、内存、主板、包含RAID功能的多块硬盘。小型NAS的CPU、内存一般都嵌入在主板中,硬盘一般在2-5块,支持RAID冗余功能软件一般是由开源操作系统(FreeBSD、Linux)等针对文件共享应用优化裁剪而来,FreeNAS就是一款很流行的文件共享专用FreeBSD操作系统也有用windowsXP裁剪而成的,微软也有一款专用的NAS操作系统WSS。
由于阿里云线上有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会将所管理的与服务对应的端口提供给客户端,从而使客户可以通过该端口向服务器请求服务。
环境:
新建一个虚拟机,系统安装使用最小化安装,可参照我前面的文章,有详细介绍。一般情况是系统盘是和数据盘分开。系统盘在线上我一般情况是分配20G,如果是容器等应用系盘我会分配50G,当然如果是有很多镜像的容器环境,那么我会系统将/var/lib/docker等用单独的数据盘来挂载。
安装配置NAS文件共享存储
1、服务端安装
2、关闭防火墙
3、配置nas
配置文件:/etc/exports
共享目录创建:
4. 本地NAS存储目录 192.168.230.0/24(授权访问客户端的地址段)
5. 重新加载NFS配置
参数说明:
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. 启动服务
7. 设置开机启动
8. 查看端口占用,以便开着防火墙的时候设置,如果闲麻烦,可以通过限制访问IP
Linux nfs客户端安装
vi /ettc/hosts
在末尾加入
开机自动挂载
vi /etc/fstab
##尾行下面新增加一行写入
注:_netdev表示设备需要网络
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)