NFS服务


一、简介

1、什么是NFS?

全称 network file system 网络文件系统
通过网络存储和组织文件的一种方法或机制。

2、为什么要用共享存储?

前端所有的应用服务器接收到用户上传的图片、文件、视频,都会统一的放到后端的存储上。

所有节点服务器都需要将内容存到存储上,取的统一来取。

3、共享存储的种类

单点存储系统就是NFS,中小型企业,阿里云服务的NAS服务,OSS对象存储。
NFS性能不太高。
大型企业会用分布式存储FastDFS、Ceph、GlsterFS、Mfs

大型存储厂商:EMC、Netapp 几十万。
艺龙旅行网 存储用的EMC 传统企业。

硬件存储:传统企业:稳定、2台 双主机头 几十块硬盘 RAID10。
BAT 曾经用硬件,超贵、

阿里云 去IOE Ibm Orace EMC5

4、NFS工作原理

NFS网络文件系统
启动NFS服务,而且还有启动很多端口。
NFS功能,需要很多服务。每个服务都有端口,而且经常变化。
如何让客户端找到这些端口呢?就需要一个经纪人(rpc服务)

NFS服务:
1、NFS服务(有很多进程和端口),把自己的端口告诉RPC。
2、RPC服务(对外固定端口111)

客户端请求NFS服务,先找RPC 111,查到NFS的端口,发给客户。

二、安装

服务端db01:
yum install nfs-utils rpcbind -y
rpm -qa nfs-utils rpcbind 
systemctl start rpcbind.service 
systemctl enable rpcbind.service 
systemctl start nfs
systemctl enable nfs
检查:netstat -lntup|egrep "rpc|nfs"

tail -1 /etc/exports
/data 172.16.1.0/24(rw,sync)
mkdir -p /data
chown -R nfsnobody.nfsnobody /data
systemctl reload nfs
showmount -e 172.16.1.31
mount -t nfs 172.16.1.31:/data /mnt

客户端:
yum install nfs-utils rpcbind -y
rpm -qa nfs-utils rpcbind 
systemctl start rpcbind
systemctl enable rpcbind
检查:netstat -lntup|egrep "rpc|nfs"

showmount -e 172.16.1.31
mount -t nfs 172.16.1.31:/data /mnt
df -h

三、web01与nfs01

db01:
useradd nginx -u 1111 -s /sbin/nologin -M
vim /etc/exports
/data 172.16.1.0/24(rw,sync,all_squash,anonuid=1111,anongid=1111)
mkdir /data/blog_nfs/
chown -R nginx.nginx /data
web01:
cd /application/nginx/html/blog/wp-content/uploads/
scp -rp 2021 172.16.1.31:/data/blog_nfs/
mv 2021 /opt
mount -t nfs 172.16.1.31:/data/blog_nfs /application/nginx/html/blog/wp-content/uploads/
df -h

配置完成之后,卸载和挂载,观察博客图片的变化。

相关