Ceph RADOS深度解析:京东虚拟化总监何雨讲解

需积分: 18 23 下载量 108 浏览量 更新于2024-08-26 收藏 271KB PPT 举报
"Ceph RADOS简介,京东虚拟化总监何雨分享" 在深入理解Ceph RADOS之前,首先需要知道它是什么。Ceph RADOS(Reliable, Autonomic Distributed Object Store)是一个高度可靠且自愈的分布式对象存储系统。这个系统主要由两个核心组件构成:大量的OSDs(Object Storage Devices)集群,负责存储所有的Objects数据,以及少量的Monitors集群,这些Monitors组成的小型、强耦合集群则负责维护ClusterMap,这是整个RADOS系统的关键数据结构。 **ClusterMap** 是管理Ceph集群的核心数据结构,它定义了OSDs和数据分布的信息。Monitor上保存着ClusterMap的最新副本,并通过epoch的增加来确保其持续更新。epoch是一个版本控制机制,用于跟踪和确保数据的一致性。当客户端访问数据时,会与OSD比较epoch,以确认获取的是最新的数据版本。 **MonitorMap** 包含了集群的fsid(唯一标识符),每个Monitor的位置、名称、地址和端口。它确保了对Monitor状态的有效管理。 **OSDMap** 描述了集群的fsid,池列表,副本大小,PG(Placement Group)数量,以及OSD的状态。这决定了数据如何在OSD之间分布以及OSD的运行状况。 **PGMap** 提供了PG的版本,时间戳,最后的OSD地图epoch,完整的比率信息,以及每个PG的详细信息,如PGID,UpSet(活跃的OSD集合),ActingSet(当前参与服务的OSD集合),PG的状态(例如,active+clean)以及每个池的数据使用统计。 **CRUSHMap** 是Ceph的分布策略,它包含存储设备的列表,故障域层次结构(如设备、主机、机架、行、房间等),以及存储数据时遍历层次结构的规则。CRUSH(Controlled Replication Under Scalable Hierarchies)算法确保数据的均衡分布和冗余,以防止单点故障。 **MDSMap** 关于元数据服务器的地图,包括MDS map的epoch,存储元数据的池,以及哪些元数据服务器是活动的和在线的。元数据服务对于文件系统的操作至关重要,如文件查找、创建和修改。 **数据存放** 在Ceph中,数据被划分为Objects,并存储在PGs内,而PGs又均匀分布在OSDs上。CRUSH算法决定了数据在OSD间的分布,根据故障域和冗余策略来确保数据安全。每个对象可以有多个副本,以提高容错性和可用性。 总结来说,Ceph RADOS是一个高度复杂且灵活的分布式存储解决方案,它的设计目标是提供高可用性、容错性和性能。通过Monitors维护的ClusterMap,以及CRUSH算法的智能数据分布,Ceph能够有效地管理和保护大规模的数据,适合于云存储、大数据分析、虚拟化等多种场景。