共享文件系统

http://blog.csdn.net/tujiyue/article/details/7042367

序:

?    一旦存在多台实际服务器提供同样的web服务时,一个潜在的问题就是如何保证多台实际服务器的程序和文件一致呢?

13.1 网络共享

?    从使用角度看,共享文件系统几乎不用你考虑网络传输和访问的细节,完全可以像访问本地文件一样访问网络上其它服务器文件系统上的文件。这可以在一定程度上解决开始提的问题,即为集群中的多台实际服务器共享同一台物理存储设备。

?    刚才提到的同一台物理存储设备可以是独立的一台服务器如图片服务器,也可以是集群中某台实际服务器的磁盘。

?    共享文件系统并不是通常我们说的磁盘文件系统,它不能用于存储和管理磁盘数据,而只是定义了文件在网络上传输时的组织格式和传输协议。所以,一个文件从网络的一端到另一端需要进行两次转换,分别发生在进入网络和离开网络的时候。

?    对于共享文件系统的实现通常有NFS和Samba,其中NFS主要用于Linux/Unix平台下,而Samba用于将Linux/Unix平台下的文件映射到Window系统网络邻居上,用于实现Linux/Unix到Window平台的共享,当然,它也可以实现Linux/Unix平台之间的文件共享。

?    NFS和Samba实现完全不同,其性能存在较大的差异。

13.2 NFS

?    NFS是sun公司于1984年开发,直到现在,它一直是主流异构平台实现文件共享的首选方案之一。

?    共享文件系统主要包括文件格式和传输协议的定义,NFS并没有设计自己的传输协议,它是直接使用基于RPC的传协议,工作在应用层,负责客户端和服务器端之间请求和响应数据的传输控制。

?    NFS的服务器和客户端软件一般在Linux中被默认安装,配置也比较容易。NFS虽然采用RPC作为应用层协议,但其性能更多取决于传输层协议TCP/UDP以及服务器端和客户端程序的实现。

?    对于传输层,RPC服务默认使用UDP,当网络质量较差的时候,一旦数据包发生丢失,这些数据包的重发工作由应用层的RPC来进行,它将重发整个RPC请求,显然这种效率没有TCP自动重传机制更高效。当然,TCP也有缺点,它没有UDP无状态的优越性,但也不是绝对的,要取决于具体的应用。

?    NFS服务器采用多进程模型,而且进程数是固定的,默认情况下为4,当然,可以进行修改。不论怎么对NFS进行性能优化,NFS注定不适合IO密集型文件的共享方案。但作为一般用途比如提供站内资源的共享,它是比较容易搭建的,可以减少不必要的数据冗余。

?    NFS远程写操作有同步和异步两种模式,对于异步模式,NFS可以在接收到写操作请求后立即返回成功,然后在后台执行真正的写操作。对于同步模式,NFS在写操作完成后才返回,当然,这里不一定是写到磁盘。对于异步模式,由于存在实际写入磁盘的延迟,所以非常有可能发生实际写入失败而应用程序并不知晓的情况,在没有保障的情况下,使用异步模式要格外谨慎。

13.3 局限性

?    不同于本地磁盘IO,通过NFS对远程文件进行写操作时,影响性能的不仅仅是NFS服务器本身磁盘吞吐率上限,还有NFS服务器端的并发处理能力和网络带宽。

?    对于小文件的远程访问,NFS服务器程序的并发处理能力不容乐观。对于较大文件的访问,数据在网络上的传输占了主要时间,这时网络带宽的充分消耗意味着NFS服务器的磁盘吞吐率也随之趋向极限,同时NFS服务器将成为文件访问的瓶颈,它只能为很少的服务器提供文件共享服务,特别是当web服务器拥有较大网络带宽时,并且几乎消耗殆尽的时候,这样的一台web服务器足以让NFS服务器不堪重负,当然,可以为NFS提供RAID磁盘阵列来提高并发处理能力,同时提高磁盘吞吐率上限。

?    共享文件系统最重要的一点是存在单点故障缺陷。

时间: 2024-12-21 13:30:29

共享文件系统的相关文章

linux共享文件系统之samba

文件系统级别访问: samba 介绍:samba在类unix/linux主机之间实现共享文件系统 UNC路径 Window系统上的实现共享文件系统的一种工具 例如:映射磁盘驱动器 像samba与UNC这样的提供共享文件系统的机制,我们叫做smb(service message bloc)服务信息块,而smb实现的文件系统共享协议我们称之为cifs(common internet file system)通用互联网文件系统s amba研发者 Andrew Tridgell, smb --> sam

【基础部分】之访问网络共享文件系统

访问网络共享文件系统 一.访问windows 1.安装samba yum install samba-client smbclient -L //ip mount //ip/目录名 /mnt/ -o username=guest 永久访问 vim /etc/fstab //ip/目录名 /挂载点 cifs defaults,username=guest 0 0 mount -a 检测 二.linux之间的共享 1.手动挂载 yum install nfs-utils showmount -e i

ii 第七单元 访问网络共享文件系统

挂载网络文件系统 网络文件系统是由网络附加存储服务器通过网络向多个主机提供的一种文件系统 , 而不是由块设备 ( 例如硬盘驱动器 ) 提供的.客户端通过特殊的文件系统协议和格式访问远程存储 Linux 中有两种主要协议可用访问网络文件系统 : NFS 和CIFS . 访问网络共享的三个基本步骤– 1. 识别要访问的远程共享– 2. 确定挂载点 ( 应该将共享挂载到的位置 ), 并创建挂载点的空目录– 3. 通过相应的名利或配置更改挂载网络文件系统 1.cifsCIFS( Comon Intern

NFS共享文件系统的介绍与配置

一.NFS服务简介  NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操作系统能够彼此分享个别的数据,让应用程序在客户端通过网络访问位于服务器磁盘中的数据,是在类Unix系统间实现磁盘文件共享的一种方法. NFS 的基本原则是"容许不同的客户端及服务端通过一组RPC分享相同的文件系统",它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享. N

Openmpi 编译安装+集群配置 + Ununtu14.04 + SSH无密码连接 + NFS共享文件系统

来源 http://www.open-mpi.org/ 网络连接 SSH连接,保证各台机器之间可以无密码登陆,此处不展开 hosts文件如下 1 #/etc/hosts 2 192.168.0.190 master 3 192.168.0.189 slave1 4 192.168.0.81 slave2 5 192.168.0.105 slave3 6 192.168.0.120 slave4 安装第一步 ./configure --prefix=/home/hadoop/openmpi_ins

共享文件系统以及NFS介绍和使用

1.故事的起源 很多很多年前,做过一个小系统,是一个和支付相关的小系统.因为是一个小系统,所以一切都那么简单.一台应用服务器,一台数据库服务器:文件.图片都放在应用服务器上,一切都是那么的平淡,一切都是那么的理所当然. 突然有一天,支付成为一个时髦的话题:突然有一天,这个平台居然要孕育成为一个新的支付公司的核心系统:于是,系统的访问就要暴涨了.这一切都很突然-- 2.调整后的系统简易架构 一步一步来吧,前端使用负载均衡设备统一进行调度,中端对应于服务器进行横向扩展,后端把数据库升级.剩下的就是文

共享文件系统以及NFS数据同步

1.单个NFS的缺点 一般情况下,当nfs客户端数目较小的时候,NFS性能不会出现问题:一旦NFS服务器数目过多,并且是那种读写都比较频繁的操作,所得到的结果就不是我们所期待的. 单个NFS这种架构除了性能问题而外,还存在单点故障,一旦这个NFS服务器发生故障,所有靠共享提供数据的应用就不再可用,可以考虑用rsync方式同步数据到另外一个服务器上做nfs服务的备份,但这对提高整个系统的性能毫无帮助.基于这样一种需求,我们需要对nfs服务器进行优化,将单个NFS进行调整为多台NFS,通过多层NFS

网络共享文件系统客户端配置

1.cifs 如何访问1 1)yum install samba-client 2)smbclient -L //ip 3)smbclient //ip/sharename 如何访问2 mount //ip/sharename /mountpoint -o username=guest vim /etc/fstab //ip/sharename /mountpoint cifsdefaults,username=guest 0 0 mount -a 2.nfs 手动挂载方式 1)yum inst

Samba服务创建共享文件系统

Linux 系统中的Samba Linux系统中的Samba服务器又提供了另外一种技术来弥补这种安全性的不足的技术,那就是采用账户映射方式为Samba服务器提供虚拟账户(不与Linux系统中的用户账户一一对应).这就是我们在本示例的主配置文件全局配置中加上"username map = /etc/Samba/smbusers"语句的原因了. 可以通过编辑/etc/Samba/smbusers文件为Linux系统用户账户创建访问Samba服务器的虚拟账户(通常是对应Windows系统的多