欢迎来到天天文库
浏览记录
ID:27492335
大小:619.57 KB
页数:17页
时间:2018-12-04
《3种分布式文件系统》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实用标准文案第一部分CEPH1.1特点Ceph最大的特点是分布式的元数据服务器通过CRUSH,一种拟算法来分配文件的locaiton,其核心是RADOS(resilientautomaticdistributedobjectstorage),一个对象集群存储,本身提供对象的高可用,错误检测和修复功能。1.2组成CEPH文件系统有三个主要模块:a)Client:每个Client实例向主机或进程提供一组类似于POSIX的接口。b)OSD簇:用于存储所有的数据和元数据。c)元数据服务簇:协调安全性、一致性与耦合性时,管理命名空间(文件名和目录名)1.3架构原理C
2、lient:用户I/O:输入/输出MDS:MetadataClusterServer 元数据簇服务器OSD:ObjectStorageDevice 对象存储设备精彩文档实用标准文案Client通过与OSD的直接通讯实现I/O操作。这一过程有两种操作方式:1. 直接通过Client实例连接到Client;2. 通过一个文件系统连接到Client。当一个进行打开一个文件时,Client向MDS簇发送一个请求。MDS通过文件系统层级结构把文件名翻译成文件节点(inode),并获得节点号、模式(mode)、大小与其他文件元数据。注意文件节点号与文件意义对应。如果文
3、件存在并可以获得操作权,则MDS通过结构体返回节点号、文件长度与其他文件信息。MDS同时赋予Client操作权(如果该Client还没有的话)。目前操作权有四种,分别通过一个bit表示:读(read)、缓冲读(cacheread)、写(write)、缓冲写(bufferwrite)。在未来,操作权会增加安全关键字,用于client向OSD证明它们可以对数据进行读写(目前的策略是全部client都允许)。之后,包含在文件I/O中的MDS被用于限制管理能力,以保证文件的一致性与语义的合理性。CEPH产生一组条目来进行文件数据到一系列对象的映射。为了避免任何为文
4、件分配元数据的需要。对象名简单的把文件节点需要与条目号对应起来。对象复制品通过CRUSH(著名的映射函数)分配给OSD。例如,如果一个或多个Client打开同一个文件进行读操作,一个MDS会赋予他们读与缓存文件内容的能力。通过文件节点号、层级与文件大小,Client可以命名或分配所有包含该文件数据的对象,并直接从OSD簇中读取。任何不存在的对象或字节序列被定义为文件洞或0。同样的,如果Client打开文件进行写操作。它获得使用缓冲写的能力。任何位置上的数据都被写到合适的OSD上的合适的对象中。Client关闭文件时,会自动放弃这种能力,并向MDS提供新的文
5、件大小(写入时的最大偏移)。它重新定义了那些存在的并包含文件数据的对象的集合。CEPH的设计思想有一些创新点主要有以下两个方面:第一,数据的定位是通过CRUSH算法来实现的。精彩文档实用标准文案传统的,或者通常的并行文件系统,数据的定位的信息是保存在文件的metadata中的,也就是inode结构中,通过到metadataserver上去获取数据分布的信息。而在Ceph中,是通过CRUSH这个算法来提供数据定位的。第二,元数据服务器可以提供集群metadataserver服务。只要当我们了解了其结构后,感觉并没有太大的特点。元数据服务器一般就用来存储文件和
6、目录的信息,提供统一的命名服务。在Ceph中,元数据的inode,dentry,以及日志都是在对象存储集群RADOS中存储,这就使得metadata的持久化都是在远程的RADOS中完成,metadataserver不保存状态,只是缓存最近的inode和dentry项,当metadataserver失效后,其所所有信息都可以从RADOS中获取,可以比较容易恢复。CEPH最核心的,就是RADOS就是RADOS(resilientautomaticdistributedobjectstorage).其resilient指的是可以轻松扩展,automatic指的是
7、其对象存储集群可以处理failover,failurerecovery。RADOS对象集群其对外提供了一个高可用的,可扩展的,对象集群,从客户端的角度看,就是一个统一命名空间的对象存储。1.4使用方式(一)Ceph的Monitor用来监控集群中所有节点的状态信息,完成类似配置服务的功能。在Ceph里,配置主要就是clustermap,其保存集群所有节点信息,并和所有的节点保持心跳,来监控所有的节点状态。其通过Paxos算法实现实现自身的高可用,也就是说,这个CephMonitor是不会有单点问题的。目前流行的zookeeper的功能,以及实现都类似。(二)
8、对象存储Ceph文件系统中的数据和元数据都保存在对象中。对于对象存
此文档下载收益归作者所有