nginx搭建NFS网络文件系统


Posted in Servers onApril 14, 2022

简介

什么是nfs服务器?

NFS(Network File System)即网络文件系统,它最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件,使用者访问网络上别处的文件就像在使用自己的计算机一样。

为什么需要nfs服务器

到同一个地方拿数据,保障网站数据的一致性,不管负载均衡器将请求分配到哪台后端的服务器,客户机看到的内容是一致的。

nfs服务器是否是最佳的解决方法

不是的,nfs是比较廉价的解决方法1,一般公司不会使用,性能不是特别高,建议使用专用的存储服务器。

nfs的优点和缺点

优点:随便一台linux服务器都可以搭建,成本非常低,构建非常容易
缺点:读取速度有限,跟网络质量,磁盘IO,CPU,内存等因素有关,再传统的tcp/ip网络传输。

存储服务器

优点:读写性能好,有灾备
缺点:成本高

RPC

NFS 支持的功能相当的多,而不同的功能都会使用不同的程序来启动, 每启动一个功能就会启用一些端口来传输数据,因此, NFS 的功能所对应的端口才没有固定,这时候就需要RPC绑定

RPC 最主要的功能就是在指定每个 NFS 功能所对应的端口.

搭建NFS服务器

准备一台centos7.9服务器(192.168.2.58)
一台客户机(192.168.2.218)

安装nfs

服务机

yum install nfs-utils -y
service nfs-server start #启动nfs服务
ps aux |grep nfs #查看nfs进程
ss -anplut|grep rpc
vim /etc/exports
/web 192.168.2.0/24(rw,all_squash,sync)

rw: 读写
sync: 写到内存的时候同步刷新到磁盘
all_squash:共享文件的UID和GID映射匿名用户anonymous(普通用户)。
aysnc:不实时同步 ,相应速率高,但危险。

mkdir /web
vim /web/index.html
#添加一些内容,退出并保存
>wyt #我就添加了wyt,退出并保存
exportfs -rv #刷新输出(类似刷新服务)

注意关闭防火墙和selinux

客户机

yum install nfs-utils -y
showmount -e 192.168.2.58 #查询nfs服务器共享的文件夹
mkdir /web #客户机新建文件夹
mount 192.168.2.58:/web /web 将nfs服务器上的/web目录挂载到本地的/web目录
ls /web #可以查看到nfs服务器的index.html,挂载后没有写的权限所以需要客户机给文件的权限
df -Th

nginx搭建NFS网络文件系统

权限受到两种权限限制

  • 文件系统权限
  • 共享权限

共享权限已经打开,所以服务机需要授权文件权限

chmod a+w /web  #/web所有人写的权限

只要把服务器的index.html挂载到nginx下的html,就可以实现在web下写操作。

mount 192.168.2.58:/web /usr/local/scwangyutao99/html/

nginx搭建NFS网络文件系统

挂载

挂载(mount):其实就是相当于插了一个外接U盘或者移动硬盘。umount就相当于弹出U盘。

umount /usr/local/scwangyutao99/html/
#umount.nfs4: /web: device is busy 是因为当前在目录之下

umount之后显示之前网页

nginx搭建NFS网络文件系统

设置开机自动挂载

/etc/rc.local

sed -i '$a mount 192.168.2.58:/web  /usr/local/scwangyutao99/html/' /etc/rc.local 
chmod  +x /etc/rc.d/rc.local #赋予可执行权限

修改/etc/fstab 文件
/etc/fstab 是linux系统开机自动根据这个文件里的内容挂载磁盘分区

第一列Device
第二列Mount point,设备的挂载点。
第三列filesystem,磁盘文件系统的格式,包括ext2、ext3、reiserfs、nfs、vfat等
第四列:文件系统的参数,默认defaults
第五列:能否被dump备份命令作用。0代表不要做dump备份
1代表要每天进行dump的操作,2代表不定日期的进行dump操作
第六列:是否检验扇区,0不要检验,1最早检验(一般根目录会选择)
2,1级别检验完成之后进行检验

sed -i '$a 192.168.2.58:/web /usr/local/scwangyutao99/html/ nfs defaults 0 0' /etc/fstab

到此这篇关于nginx搭建NFS服务器的方法步骤的文章就介绍到这了!

Servers 相关文章推荐
Nginx解决403 forbidden的完整步骤
Apr 01 Servers
Nginx已编译的nginx-添加新模块
Apr 01 Servers
nginx部署多前端项目的几种方法
May 25 Servers
docker compose 部署 golang 的 Athens 私有代理问题
Apr 28 Servers
Windows Server 2012 R2 磁盘分区教程
Apr 29 Servers
tomcat默认最大连接数及相关调整方法
May 06 Servers
排查Tomcat进程假死的问题
May 06 Servers
在容器中使用nginx搭建上传下载服务器
May 11 Servers
阿里云服务器部署RabbitMQ集群的详细教程
Jun 01 Servers
基于docker安装zabbix的详细教程
Jun 05 Servers
windows server2008 开启端口的实现方法
Jun 25 Servers
搭建zabbix监控以及邮件报警的超级详细教学
Jul 15 Servers
Mac电脑OS系统下安装Nginx的详细教程
Docker 镜像介绍以及commit相关操作
Docker官方工具docker-registry案例演示
Apr 13 #Servers
Nginx反向代理、重定向
Docker下安装Oracle19c
nginx location 带斜杠【 / 】与不带的区别
Apr 13 #Servers
Linux下使用C语言代码搭建一个简单的HTTP服务器
You might like
给apache2.2加上mod_encoding模块後 php5.2.0 处理url出现bug
2007/04/12 PHP
PHP XML数据解析代码
2010/05/26 PHP
php中设置多级目录session的问题
2011/08/08 PHP
初识PHP中的Swoole
2016/04/05 PHP
phpStudy中升级MySQL版本到5.7.17的方法步骤
2017/08/03 PHP
thinkPHP框架实现类似java过滤器的简单方法示例
2018/09/05 PHP
ThinkPHP5 的简单搭建和使用详解
2018/11/15 PHP
php7 错误处理机制修改实例分析
2020/05/25 PHP
利用javascript实现一些常用软件的下载导航
2009/08/03 Javascript
Tab页界面,用jQuery及Ajax技术实现
2009/09/21 Javascript
jQuery+CSS 实现随滚动条增减的汽水瓶中的液体效果
2011/09/26 Javascript
jQuery切换网页皮肤并保存到Cookie示例代码
2014/06/16 Javascript
全面解析Bootstrap中tab(选项卡)的使用方法
2016/06/06 Javascript
AngularJS 依赖注入详解和简单实例
2016/07/28 Javascript
微信小程序开发之从相册获取图片 使用相机拍照 本地图片上传
2017/04/18 Javascript
vue 利用路由守卫判断是否登录的方法
2018/09/29 Javascript
IE8中jQuery.load()加载页面不显示的原因
2018/11/15 jQuery
vue子路由跳转实现tab选项卡
2019/07/24 Javascript
layUI实现前端分页和后端分页
2019/07/27 Javascript
超详细的5个Shell脚本实例分享(值得收藏)
2019/08/15 Javascript
javascript实现拖拽碰撞检测
2020/03/12 Javascript
vue 导航守卫和axios拦截器有哪些区别
2020/12/19 Vue.js
使用Python神器对付12306变态验证码
2016/01/05 Python
Python爬虫基础之XPath语法与lxml库的用法详解
2018/09/13 Python
使用Python和百度语音识别生成视频字幕的实现
2020/04/09 Python
CSS3教程(4):网页边框和网页文字阴影
2009/04/02 HTML / CSS
全球知名巧克力品牌:Godiva
2016/07/22 全球购物
俄罗斯有趣和原创礼物网上商店:MagicMag
2019/08/01 全球购物
Berghaus官网:户外服装和设备,防水服
2020/01/17 全球购物
英国运动风奢侈品购物网站:Maison De Fashion
2020/08/28 全球购物
用C或者C++语言实现SOCKET通信
2015/02/24 面试题
大学生涯自我鉴定
2014/01/16 职场文书
中专自我鉴定
2014/02/05 职场文书
股东出资证明书(正规版)
2014/09/24 职场文书
(开源)微信小程序+mqtt,esp8266温湿度读取
2021/04/02 Javascript
MYSQL 运算符总结
2021/11/11 MySQL