企业级NFS网络文件共享服务_【all】
1.1. 什么是NFS(1台机器提供服务)
Network File System(网络文件系统)通过局域网让不同的主机系统之间共享文件或目录。
NFS客户端可以通过挂载的方式将NFS服务器端共享的数据目录挂在到NFS客户端本地
mount 10.185.163.162:/dev/sdb1 /客户端的mnt
注:samba类似windows的文件共享系统,用于办公网
nfs用于中小型网站集群架构的数据共享
mfs,glusterfs,FastDFS分布式文件系统(多台机器提供服务)用于大型的门户网站
1.2. NFS在企业的应用
企业集群中,NFS网络文件系统被用来存储共享的视频,图片,附件等静态资源,一般由用户上传
注意网站的BBS程序(开发人员开发的程序)不要放到NFS共享里
客户 ->Nginx ->NFS(图片,视频)
->业务 ->Mysql
->监控 ->session共享
1.3. 为什么需要共享存储角色
简单,易用,高效,但是没有本地快(网络延迟),服务端提供一个共享目录,通过mount挂在到本地,本地只要访问挂载点,就相当于访问远端的共享目录了。不同的客户端可以提供不同的挂载点,但同时可以挂载服务端同一个目录。
1.4. RPC(Remote Procedure Call)服务(端口111)
1.NFS系统是通过网络进行数据传输的,所以一定会使用一些端口来传输数据
2.NFS支持的功能相当的多,而不同的程序都是使用不同的程序来启动,每个功能就会启用一些端口来传输数据,所以我们可以通过RPC(远程过程调用)来实现。
3.RPC服务的最主要的功能就是记录每个NFS功能所对应的端口号,并且在NFS客户端向RPC做请求的时候,把该端口对应的信息传递个请求数据的客户端,可以确保客户端和服务器端的通信。
4.RPC原理总结:
1.服务器端和客户端都需要安装RPC服务。
2.服务器端的RPC服务要先于服务器端的NFS服务启动
3.当客户端的程序通过RpcBind发出一个有进程参数的调用信息到服务进程,然后等待服务器端的RPC的应答信息,有则返回端口信息给客户端。客户端就可以直接访问NFS系统,进行数据的交换
1.5. NFS常见的进程详细说明(man 查看帮助)
1.6. NFS参数总结
NFS参数总结:
rw:读写
ro:只读
sync:客户端给服务器端写入数据,待写入成功后服务端后给客户端一个写入成功的标记,这个时候数据写入成功。
但是数据安全,但是性能差
async:异步写入
数据写入内存后显示写入成功,高性能,但是一旦断电后数据丢失,
电商秒杀是异步的。大型网站都是异步,会短时间数据不一致。
no_root_squash:
访问的NFS Server的共享目录的用户是root的话,它对该共享目录具有root权限
root_squash:
访问的NFS Server的共享目录的用户是root的话,它对该共享目录的权限压缩为匿名用户
all_squash: -->推荐使用
不管访问的NFS Server的共享目录权限是什么,它对该共享目录的权限压缩均为匿名用户
1.7. 搭建企业级NFS网络文件共享服务
【更多参考】
1.8.NFS优缺点
1.作用:
NFS可以让不同的客户端挂载使用同一个目录,作为共享存储使用,为保证不同节点数据的一致性,集群架构环境经常用到。
windows的Samba,它是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。
2.优点:
简单,易上手
数据在文件系统之上,可见
方便,部署快,简单维护,可控
可靠,可靠性高,经久耐用
稳定,
3.缺点:
局限性是单点故障,服务端宕机,所有客户端不能访问(负载均衡和高可用方案弥补-->rsync+inodefound+双写)
大数据高并发场合,NFS效率优点
客户端基于IP识别,安全性不高
NFS数据时明文,对数据完整性不做验证
多台客户端挂载一个NFS服务器,维护起来麻烦(耦合性高)
企业级NFS网络文件共享服务_【all】的更多相关文章
- 搭建企业级NFS网络文件共享服务说明[一]
1.1.0. 概述: 共享/NFS目录给整个192.168.25.0/24网段主机读写 man nfs 可以查看mount的信息 rpc端口111 nfs主端口2049 1.1.1. 搭建NFS环境 ...
- Linux实战教学笔记22:企业级NFS网络文件共享服务
目录 第二十二节 企业级NFS网络文件共享服务 第一章 NFS网络文件共享服务 1.1 NFS介绍 1.2 NFS系统原理介绍 1.3 NFS服务端部署环境准备 1.4 NFS server端的设置 ...
- (转)企业级NFS网络文件共享服务
企业级NFS网络文件共享服务 原文:http://www.cnblogs.com/chensiqiqi/archive/2017/03/10/6530859.html --本教学笔记是本人学习和工作生 ...
- 搭建企业级NFS网络文件共享服务
NFS服务简介 NFS是Network File System(网络文件系统).主要功能是通过网络让不同的服务器之间可以共享文件或者目录.NFS客户端一般是应用服务器(比如web,负载均衡等),可以 ...
- 搭建企业级NFS网络文件共享服务[二]
1.1.8 NFS问题总结 1.问:使用showmount -e 127.0.0.1后报clnt_create: RPC: Program not registered错误 答:顺序不对,重启nfs服 ...
- 【集群实战】NFS网络文件共享服务
1. NFS介绍 1.1 什么是NFS? NFS是Network File System的缩写,中文意思是网络文件系统. 它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录. ...
- NFS网络文件共享服务
NFS-网络文件系统,它的主要功能是通过网络让不同的主机系统之间可以彼此共享文件或目录. NFS在企业中得应用场景 在企业集群架构的工作场景中,NFS网络文件系统一般被用来存储共享视频.图片.附件等静 ...
- 【集群实战】NFS网络文件共享服务2-mount挂载(参数,优化)
1. NFS客户端挂载深入 1.1 NFS客户端挂载参数说明 在NFS服务端,可以通过cat /var/lib/nfs/etab查看NFS服务器端配置参数的细节. 在NFS客户端,可以通过cat /p ...
- 【集群实战】NFS网络文件共享服务3-相关知识补充(showmount,exports,rpc)
1. showmount命令说明 showmount命令一般用于从NFS客户端检查NFS服务器端共享目录的情况. 参数说明: -e,--exports 显示NFS服务器输出的目录列表 [root@we ...
随机推荐
- elasticsearch(一):安装与配置
一.elastic search的安装与配置 1.安装Java 并且配置JAVA_HOME环境变量. 2.下载elasticsearch,下载地址:https://www.elastic.co/dow ...
- Entity Framework取消修改
最近碰到一个场景:在Entity Framework保存错误的时候,需要将该错误记录在DB中.因为DB在savechange的时候会继续保存之前的数据,所以一直会报错,无法保存错误日志. 这就需要实现 ...
- 国际化实现之安装脚手架vue以及打包问题
做这个项目用的是vue+element UI来实现的响应式布局,现主要说一下国际化这块的实现. 第一步:新建文件夹i18n 第二步:配置cn.js.en.js等文件内容 cn.js import en ...
- Git 什么时候用什么指令
转自:http://blog.gogojimmy.net/2012/02/29/git-scenario/ Git 教學(1):Git的基本使用 Git 教學(2):Git Branch 的操作與基本 ...
- Ruby语言学习系列--String 类函数
函数名称 说明 示例 * 将字符串拷贝N次 “ha”*4 >> “hahahaha” + << concat 连接字符串 “yes” + “no” >& ...
- 如何学习JavaEE,项目又该如何做?
本文主要分为三个部分: 如何学习java基础 如何学习javaEE 你关心的项目问题 01 java基础学习 建议初学者看视频学习,不推荐看书.入门视频选择非常重要,最好是通俗易懂.深入浅出的教学视频 ...
- 【转】CSS浮动(float,clear)通俗讲解
作者:杨元 本文链接:http://www.cnblogs.com/iyangyuan/archive/2013/03/27/2983813.html 很早以前就接触过CSS,但对于浮动始终非常迷惑, ...
- clientX/Y pageX/Y offsetX/Y layerX/Y screenX/Y clientHeight innerWidth...
关于js鼠标事件综合各大浏览器能获取到坐标的属性总共以下五种 event.clientX/Y event.pageX/Y event.offsetX/Y event.layerX/Y event.sc ...
- 4.1 SQL的本质
对于早期的关系数据库,整个行业做了很多努力,试图统一不同的专用查询语言.IBM曾建立了一个早期的标准,被称为Structured English Query Language,这个名字缩写为SEQUE ...
- Java基础教程(14)--嵌套类
Java允许在一个类中定义另外一个类,这样的类被称为嵌套类,就像下面这样: class OuterClass { ... class NestedClass { ... } } 嵌套类分为两种 ...