文章目录
一、Ceph分布式存储
1.1、Ceph文件系统简述
-
圣克鲁兹加利福尼亚大学的Sage Weil在2003年开发CEPH,CEPH是一个开源的项目,其可大规模扩展、高性能并且无单点故障的分布式存储系统。从一开始它就运行在通用的商用的硬件上,具有高度的可伸缩性,容量可扩展至EB级别,甚至更大。
-
ceph是一种开源存储软件。 底层实现了对象存储,并以此为基础对外提供对象存储接口、块存储接口、文件级存储接口。
1.2、Ceph的优点
-
1.CRUSH算法,CRUSH在一致性哈希基础上很好的考虑了容灾域的隔离,能够实现各类负载的副本放置规则,例如跨机房、机架感知等。同时, CRUSH算法支持副本和EC两种数据冗余方式,还提供了四种不同类型的Bucket(Uniform, List, Tree, Straw),充分考虑了实际生产过程中硬件的迭代式部署方式,虽然实际生产中大多数情况下的都是只用了一种Straw。
-
2.统一存储架构
由于云计算的发展,RADOS出色而又简洁的接口,非常高效的支持分布式块存储RBD和分布式对象存储RADOS GateWay。由于RBD和RADOS GateWay的简单设计无需考虑,容灾备份、横向扩展、负载均衡等分布式架构的负载因素。所以受到社区的认可,并成为openstack的底层存储方式。 -
3.强大且丰富的功能
CEPH的功能,从分布式系统最基本的横向扩展、动态伸缩、冗余容灾、负载平衡等,到生产环境环境中非常实用的滚动升级、多存储池、延迟删除等几乎什么都能做。所以受到云计算等企业的青睐。但是也有CEPHfs虽然有快照、纠错码、跨存储池等功能,却因为一直收到忽视,无法用在生产环境中。
二、Ceph架构和名称解释
2.1、Ceph架构
- RADOS:代表了CEPH集群中的硬件和软件的集合。
- RGW、RBD、CEPH FS代表了三种客户端:RGW代表了对象存储的网关,即对象存储接口。RBD代表了块存储的接口。CEPH FS代表了文件系统存储的接口。用户只有通过这三种接口才能将数据存储在RADOS中。
2.2、Ceph集群组件
- 1.OSD:OSD对象存储进程,每块硬盘拥有一个osd进程,管理数据的副本、恢复和负载均衡等,并且向mon组件提供底层监控信息。
- 2.CEPH-mgr:用于收集ceph集群状态、运行指标,比如存储利用率、当前性能指标和系统负载。mgr组件实现高可用至少需要2个作为主备。
- 3.MDS:在存储时存储数据的元信息,用于文件系统存储。对象存储和块存