如何区分分布式集群并行文件系统
分布式文件系统、集群文件系统、并行文件系统,这三种概念很容易混淆,实际中大家也经常不加区分地使用。总是有人问起这三者的区别和联系,其实它们之间在概念上的确有交叉重叠的地方,但是也存在显著不同之处。
分布式文件系统
自然地,“分布式”是重点,它是相对与本地文件系统而言的。分布式文件系统通常指C/S架构或网络文件系统,用户数据没有直接连接到本地主机,而是存储在远程存储服务器上。NFS/CIFS是最为常见的分布式文件系统,这就是我们说的NAS系统。分布式文件系统中,存储服务器的节点数可能是1个(如传统NAS),也可以有多个(如集群NAS)。对于单个节点的分布式文件系统来说,存在单点故障和性能瓶颈问题。除了NAS以外,典型的分布式文件系统还
首先,说一下这两个分布式文件系统的相同之处:1这两个文件系统都是类似GoogleFS的实现方式,即一个MasterServer和多个ChunkServer构成的存储集群;2这两个文件系统都存在MasterServer的单点问题(个人认为主从备份并不能从根本上解决这个问题,该问题的解决之道应该是类似 Ceph 多元数据服务器方式,这方面也是我研究生阶段的研究点之一);3这两个文件系统追加写模式,也就是说,两者都更加适合“一次写多次读”的模式,如果涉及到数据的修改,那么这个问题就相对比较麻烦了(更好的办法可以参考Sorrento这个文件系统);4由于海量元数据的因素,对待海量小文件都相对比较乏力(更好地解决办法可以参考Facebook的Haystack);5两者都支持在线扩容。
我们再来看看这两个分布式文件系统的差异:1HDFS由Java实现,MooseFS由C++实现;2HDFS不符合posix语义,MooseFS是完全符合posix语义的,原因在于MooseFS是通过Fuse来通过客户端接口的(Fuse目前已经是标准内核的一部分了),现有使用本地文件系统的程序可以直接平滑迁移到MooseFS上,无需任何修改,但是MooseFS也付出了相应地开销:使用HDFS编写程序时直接使用库(如libhdfs)就可以跟Master或者ChunkServer通信,请求传输更为高效,而MooseFS需要通过标准posix接口将请求发送到内核,再通过Fuse将请求截获发送到用户态,然后才能和Master或者ChunkServer通信;3MooseFS提供了快照功能,HDFS目前还没有看到这个方面的实际开发行动;4MooseFS针对小文件和随机I/O进行了一些优化;
作者:严林
DFS(Distributed File System,分布式文件系统),可以将分布在多个服务器或客户机上的共享资源列表整合在一个DFS根目录中,这样用户无需知道或指定文件的实际物理位置就可以对它们进行访问,这无疑将简化资源共享的操作步骤。
创建DFS根目录
依次单击“开始→管理工具→分布式文件系统”,打开“分布式文件系统”控制台。然后单击“操作→新建 DFS根目录”命令,打开“新建根目录向导”对话框。接着单击“下一步”按钮,在打开的“根目录类型”对话框中点选“独立的根目录”单选框并单击“下一步”按钮。在“主服务器”对话框中键入一个正确的服务器名称(本例键入的是本机名称chhuian,也可以单击“浏览”按钮查找服务器),单击“下一步”按钮。在“根目录名称”对话框的“根目录名称”编辑框中键入一个已经共享出来的文件夹名称,在“注释”编辑框中键入一些描述性的语言(如“通过此根目录可以访问网络中的共享资源”),单击“下一步”按钮(如图)。
如果键入的共享文件夹不存在,则在打开的“根目录共享”对话框中会提示您指定共享不存在。这时可以单击“浏览”按钮,在打开的“浏览文件夹”对话框中指定创建共享文件夹的位置,单击“新建文件夹”按钮,命名为“DFS根目录”。依次单击“确定→下一步→完成”按钮结束创建(如图)。
小提示
为了保持根目录的整洁性,建议您事先建立一个空白文件夹并设置为共享(如“DFS根目录”)。然后在“根目录名称”编辑框中键入新建的共享文件夹名。重复上述步骤可以创建多个DFS根目录。
添加DFS链接
前面我们已经成功创建了DFS的根目录,然而现在这个根目录里面并没有任何共享资源。那么网络上其他机器的共享资源如何归于DFS根目录的旗下呢?这正是DFS可爱的地方。
打开“分布式文件系统”控制台,右击控制台树中的“\\chhuian\DFS根目录”目录,执行“新建链接”命令,打开“新建链接”对话框(如图3)。在“链接名称”编辑框中键入一个逻辑名称(如“个人公文包”),然后单击“浏览”按钮,从“网上邻居”中的共享文件夹列表中选中一个共享文件夹,然后依次单击“确定”按钮(如图4)。重复上述步骤将整个网络中所有的共享文件夹与根目录建立链接(如图)。
访问共享资源
将网络中所有可以共享的资源与DFS根目录建立链接后,我们就可以在任意一台电脑上通过UNC路径或“网上邻居”访问这些资源了。在任意一个Windows窗口的地址栏中键入Server的DFS根目录,如<\\chhuian\DFS根目录>,即可通过左窗格的目录树和右窗格中的资源列表访问网络中所有的共享资源,而我们根本不必关心所访问的资源到底来自网络上的哪台机器(如图)。
小提示
本文以Windows Server 2003为平台加以介绍的,DFS服务同样适用于基于Windows 2000 Server平台的网络环境,其设置方法与本文所述基本相同。
DFS即分布式文件系统,主要用于解决把分散的共享资源集中管理的问题,DFS的基本概念是DFS根和DFS连接。
在大多数环境中,共享资源驻留在多台服务器上的各个共享文件夹中。要访问资源,用户或程序必须将驱动器映射到共享资源的服务器,或指定共享资源的通用命名约定 (UNC) 路径。通过 DFS,一台服务器上的某个共享点能够作为驻留在其他服务器上的共享资源的宿主。DFS 以透明方式链接文件服务器和共享文件夹,然后将其映射到单个层次结构,以便可以从一个位置对其进行访问,而实际上数据却分布在不同的位置。用户不必再转至网络上的多个位置以查找所需的信息,用户在访问此共享中的文件夹时将被重定向到包含共享资源的网络位置。这样,用户只需知道 DFS 根目录共享即可访问整个企业的共享资源。
另外解释:
一、DFS为何物?
DFS即微软分布式文件系统的简称,系统管理员可以利用它来有效的整合网络资源,并把这些资源以单一的层次结构呈现给网络用户。管理员利用它可以把资源发布成一个树形结构,这样大大简化了为用户进行资源配置和对资源管理的工作量。我们可以在不同的机器上调整和移动文件,这不会影响到用户的访问。
二、为什么要使用DES?
1、DFS使用了现有网络中的Share权限,管理员不必进行新的配置
2、通过一个DFS树形结构用户就可以访问多个网络资源,而不用再把远程驱动器映射到本地共享资源中。
3、DFS可以配置一个资源的多个提供路径,用户对于最终资源的访问是随机的。若一个路径提供的资源不能连接,DFS将定向到另一个提供者。这可以达到容错和负载均衡的效果。
4、在服务器故障或网络中断时,我们可以将资源路径重新定向的新的位置,而不会影响到用户的访问。
5、IIS可以和DFS配合发布资源
在以下情形下,您应该考虑实施 DFS:
访问共享文件夹的用户分布在一个站点的多个位置或多个站点上。
大多数用户都需要访问多个共享文件夹。
通过重新分布共享文件夹可以改善服务器的负载平衡状况。
用户需要对共享文件夹的不间断访问。
您的组织中有供内部或外部使用的 Web 站点。
1、需要注意DFS(分布式文件系统)根目录的放置。当用户访问WEB网页时,他们只知道要访问某个网站,而不知道网站后面可能还有其他服务器的存在。用户要访问的WEB服务器其实就是DFS根目录所在的主机。网络管理员要实现分布式文件系统,必须要先将网络中一台服务器内的共享文件夹设置为DFS根目录。这个DFS根目录主要用来存储分布式文件系统的映射关系。网络管理员要为该根目录取一个简约的名字,其他用户就可以通过这个名字访问这个分布式文件系统根目录下的文件。可见DFS根目录的安全性直接跟WEB服务器的安全相关。而且其也跟WEB应用服务的稳定性息息相关。因为如果这个目录出现了问题,映射关系遭受到破坏,则用户将无法正常访问文件资源。为了提高这个根目录的安全性,笔者建议是要把这个根目录部署在微软的NTFS文件系统上,并对此配置一定的安全措施。由于NTFS文件系统要比FAT32文件系统安全的多。无论是加密技术或者数据还原上,NTFS文件系统都有比较突出的表现。故笔者觉得,使用NTFS文件系统当作分布式文件系统的根目录,则其安全性与稳定性会更有保障一点。
0条评论