Ceph架构剖析

Ceph架构剖析

ID:43484577

大小:459.84 KB

页数:11页

时间:2019-10-07

Ceph架构剖析_第1页
Ceph架构剖析_第2页
Ceph架构剖析_第3页
Ceph架构剖析_第4页
Ceph架构剖析_第5页
资源描述:

《Ceph架构剖析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Ceph架构剖析1.介绍云硬盘是IaaS云平台的重要组成部分,云硬盘给虚拟机提供了持久的块存储设备。目前的AWS的EBS(ElasticBlockstore)给Amazon的EC2实例提供了高可用高可靠的块级存储卷,EBS适合于一些需要访问块设备的应用,比如数据库、文件系统等。在OpenStack中,可以使用Ceph、Sheepdog、GlusterFS作为云硬盘的开源解决方案,下面我们来了解Ceph的架构。Ceph是统一存储系统,支持三种接口。1.Object:有原生的API,而且也兼容Swift

2、和S3的API2.Block:支持精简配置、快照、克隆3.File:Posix接口,支持快照Ceph也是分布式存储系统,它的特点是:高扩展性:使用普通x86服务器,支持10~1000台服务器,支持TB到PB级的扩展。高可靠性:没有单点故障,多数据副本,自动管理,自动修复。高性能:数据分布均衡,并行化度高。对于objectsstorage和blockstorage,不需要元数据服务器。2.背景目前Inktank公司掌控Ceph的开发,但Ceph是开源的,遵循LGPL协议。Inktank还积极整合Cep

3、h和其他云计算和大数据平台,目前Ceph支持OpenStack、CloudStack、OpenNebula、Hadoop等。当前Ceph的最新稳定版本0.67(Dumpling),它的objectsstorage和blockstorage已经足够稳定,而且Ceph社区还在继续开发新功能,包括跨机房部署和容灾、支持Erasureencoding等。Ceph具有完善的社区设施和发布流程[1](每三个月发布一个稳定版本)。目前Ceph有很多用户案列,这是2013.03月Inktank公司在邮件列表中做的调

4、查,共收到了81份有效反馈[2]。从调查中可以看到有26%的用户在生产环境中使用Ceph,有37%的用户在私有云中使用Ceph,还有有16%的用户在公有云中使用Ceph。目前Ceph最大的用户案例是Dreamhost的ObjectService,目前总容量是3PB,可靠性达到99.99999%,数据存放采用三副本,它的价格比S3还便宜。下图中,左边是Inktank的合作伙伴,右边是Inktank的用户。3.架构3.1组件Ceph的底层是RADOS,它的意思是“Areliable,autonomous

5、,distributedobjectstorage”。RADOS由两个组件组成:1.OSD:ObjectStorageDevice,提供存储资源。2.Monitor:维护整个Ceph集群的全局状态。RADOS具有很强的扩展性和可编程性,Ceph基于RADOS开发了ObjectStorage、BlockStorage、FileSystem。Ceph另外两个组件是:1.MDS:用于保存CephFS的元数据。2.RADOSGateway:对外提供REST接口,兼容S3和Swift的API。3.2映射Cep

6、h的命名空间是(Pool,Object),每个Object都会映射到一组OSD中(由这组OSD保存这个Object):(Pool,Object)→(Pool,PG)→OSDset→DiskCeph中Pools的属性有:1.Object的副本数2.PlacementGroups的数量3.所使用的CRUSHRuleset在Ceph中,Object先映射到PG(PlacementGroup),再由PG映射到OSDset。每个Pool有多个PG,每个Object通过计算hash值并取模得到它所对应的PG。P

7、G再映射到一组OSD(OSD的个数由Pool的副本数决定),第一个OSD是Primary,剩下的都是Replicas。数据映射(DataPlacement)的方式决定了存储系统的性能和扩展性。(Pool,PG)→OSDset的映射由四个因素决定:1.CRUSH算法:一种伪随机算法。2.OSDMAP:包含当前所有Pool的状态和所有OSD的状态。3.CRUSHMAP:包含当前磁盘、服务器、机架的层级结构。4.CRUSHRules:数据映射的策略。这些策略可以灵活的设置object存放的区域。比如可以指

8、定pool1中所有objecst放置在机架1上,所有objects的第1个副本放置在机架1上的服务器A上,第2个副本分布在机架1上的服务器B上。pool2中所有的object分布在机架2、3、4上,所有Object的第1个副本分布在机架2的服务器上,第2个副本分布在机架3的服器上,第3个副本分布在机架4的服务器上。Client从Monitors中得到CRUSHMAP、OSDMAP、CRUSHRuleset,然后使用CRUSH算法计算出Object所在的OSDset。所

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。