Ceph分布式存储实战读书笔记-1
1. 初识Ceph
1.1 Ceph核心组件
- Ceph OSD:全称是Object Storage Device,主要功能包括存储数据,处理数据的复制,恢复,回补,平衡数据分布。并将一些相关数据提供给Ceph Monitor,例如Ceph OSD心跳等。每一个Disk,分区都可以成为一个OSD。
- Ceph Monitor:Ceph的监控器,主要功能是维护整个集群的健康状态,提供一致性的决策,包含了Monitor map,OSD map,PG(Placement Group)map和CRUSH map。
- Ceph MDS:全称是Ceph Metadata Server,主要保存的是Ceph文件系统的元数据。注意:Ceph的块存储和Ceph的对象存储都不需要MDS,Ceph FS需要。
一个Ceph集群至少需要一个Ceph Monitor和至少2个Ceph的OSD。
1.2 Ceph的功能特性
Ceph可以提供以下功能:
- RADOSGW(Reliable Autonomic Distributed Object Storage Gateway)对象存储:类似AMZ S3的对象存储功能
- RBD(Rados Block Device)块存储:通过LIBRBD创建一个块设备,通过KVM附加到VM上,作为传统的块设备来用。同时支持快照,COW(Copy On Write)等功能
- Ceph FS(Ceph File System):一个基于RADOS来实现的分布式文件系统,引入了MDS,兼容POSIX文件系统提供元数据。可以当做文件系统来挂载。
1.3 Ceph 架构
Ceph的底层是RADOS,以上为Ceph的架构图。
- RADOS:RADOS有自我修复等特性,提供了一个可靠,自动,智能的分布式存储
- LIBRADOS:LIBRADOS库允许应用程序直接访问,支持C,java,Python等多种语言
- RADOSGW:RADOSGW是一套基于RESTful协议的网关,并且兼容S3和Swift。
- RBD:RBD通过Linux内核客户端和KVM驱动,来提供一个完全分布式的块设备。
- Ceph FS:Ceph FS通过Linux内核客户端结合FUSE,来提供一个兼容POSFIX的文件系统。
1.4 Ceph的设计思想
Ceph的技术特性主要为以下4个方面:
- 集群可靠性:尽可能保存数据不丢失以及数据写入过程中的可靠性
- 集群可扩展性:包括系统规模,存储容量以及随着系统节点数增加的聚合数据访问带宽的线性扩展。
- 数据安全性:保证硬件故障时数据不会丢失并且支持数据自动恢复,自动平衡。
- 接口统一性:是指Ceph支持的3种存储类型
通过技术特性可知Ceph的设计思想可以总结为两点:
- 充分发挥存储设备自身的计算能力
- 去除所有的中心点