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网络文件共享服务

【更多参考】

搭建企业级NFS网络文件共享服务【一】

搭建企业级NFS网络文件共享服务【二】

1.8.NFS优缺点

1.作用:

NFS可以让不同的客户端挂载使用同一个目录,作为共享存储使用,为保证不同节点数据的一致性,集群架构环境经常用到。

windows的Samba,它是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。

2.优点:

简单,易上手

数据在文件系统之上,可见

方便,部署快,简单维护,可控

可靠,可靠性高,经久耐用

稳定,

3.缺点:

局限性是单点故障,服务端宕机,所有客户端不能访问(负载均衡和高可用方案弥补-->rsync+inodefound+双写)

大数据高并发场合,NFS效率优点

客户端基于IP识别,安全性不高

NFS数据时明文,对数据完整性不做验证

多台客户端挂载一个NFS服务器,维护起来麻烦(耦合性高)

企业级NFS网络文件共享服务_【all】的更多相关文章

  1. 搭建企业级NFS网络文件共享服务说明[一]

    1.1.0. 概述: 共享/NFS目录给整个192.168.25.0/24网段主机读写 man nfs 可以查看mount的信息 rpc端口111 nfs主端口2049 1.1.1. 搭建NFS环境 ...

  2. Linux实战教学笔记22:企业级NFS网络文件共享服务

    目录 第二十二节 企业级NFS网络文件共享服务 第一章 NFS网络文件共享服务 1.1 NFS介绍 1.2 NFS系统原理介绍 1.3 NFS服务端部署环境准备 1.4 NFS server端的设置 ...

  3. (转)企业级NFS网络文件共享服务

    企业级NFS网络文件共享服务 原文:http://www.cnblogs.com/chensiqiqi/archive/2017/03/10/6530859.html --本教学笔记是本人学习和工作生 ...

  4. 搭建企业级NFS网络文件共享服务

    NFS服务简介 NFS是Network  File System(网络文件系统).主要功能是通过网络让不同的服务器之间可以共享文件或者目录.NFS客户端一般是应用服务器(比如web,负载均衡等),可以 ...

  5. 搭建企业级NFS网络文件共享服务[二]

    1.1.8 NFS问题总结 1.问:使用showmount -e 127.0.0.1后报clnt_create: RPC: Program not registered错误 答:顺序不对,重启nfs服 ...

  6. 【集群实战】NFS网络文件共享服务

    1. NFS介绍 1.1 什么是NFS? NFS是Network File System的缩写,中文意思是网络文件系统. 它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录. ...

  7. NFS网络文件共享服务

    NFS-网络文件系统,它的主要功能是通过网络让不同的主机系统之间可以彼此共享文件或目录. NFS在企业中得应用场景 在企业集群架构的工作场景中,NFS网络文件系统一般被用来存储共享视频.图片.附件等静 ...

  8. 【集群实战】NFS网络文件共享服务2-mount挂载(参数,优化)

    1. NFS客户端挂载深入 1.1 NFS客户端挂载参数说明 在NFS服务端,可以通过cat /var/lib/nfs/etab查看NFS服务器端配置参数的细节. 在NFS客户端,可以通过cat /p ...

  9. 【集群实战】NFS网络文件共享服务3-相关知识补充(showmount,exports,rpc)

    1. showmount命令说明 showmount命令一般用于从NFS客户端检查NFS服务器端共享目录的情况. 参数说明: -e,--exports 显示NFS服务器输出的目录列表 [root@we ...

随机推荐

  1. Java接口调用工具类

    package com.qiyuan.util; import java.io.BufferedReader; import java.io.IOException; import java.io.I ...

  2. CentOS install搭建SVN服务器

    安装步骤如下: 1.命令:yum install subversion 之后会打印很多消息,显示 Complete! 则完成. 2.查看 svn 版本:svnserve --version 3.创建S ...

  3. Python urllib简单使用

    Python的urllib和urllib2模块都做与请求URL相关的操作. 它们最显著的差异为: urllib2可以接受一个Request对象,并以此可以来设置一个URL的headers,但是urll ...

  4. 关于Sqlite的一个demo

      直接上代码: class DBHelperSqlite { ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetC ...

  5. C# 小软件部分(二)

     此次又新增了一些新的功能,直接接着上次的介绍吧 上次博客介绍地址:http://www.cnblogs.com/Liyuting/p/8540592.html 这次新增了三个功能,具体如下: 一.网 ...

  6. hdu Rescue 1242

    Rescue Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Subm ...

  7. python学习之老男孩python全栈第九期_数据库day002知识点总结 —— MySQL数据库day2(全部)

    一. 复习1. MySQL: - 服务端 - 客户端2. 通信交流 - 授权 - SQL语句 - 数据库 创建数据库: create database db1 default charset utf8 ...

  8. requireJS中如何用r.js对js进行合并和压缩css文件

    我运行的环境是windows+node.js,首先是用npm安装requirejs(全局安装,即使用 'npm install requirejs -g',这样方便在各个目录调用),接着就是下载r.j ...

  9. 初学JavaSE

    Java简介 Java面向对象程序设计语言和Java平台的总称. Java常用术语介绍 JVM:java虚拟机,它是整个java实现跨平台的 最核心的部分,所有的java程序会首先被编译为.class ...

  10. css盒模型(Box Model)

    所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用. CSS盒模型本质上是一个盒子,封装周围的HTML元素,它包括:边距,边框,填充,和 ...