Ceph存储集群
导读:
1.从零部署一个ceph集群
2.ceph block device与cephfs快速入门
3.ceph 对象存储快速入门
Overview
一个Ceph存储群集至少需要一个Ceph monitor
,Ceph Managers
和Ceph OSD
(对象存储守护程序)。 运行Ceph文件系统客户端时,也需要Ceph Metadata Server
。
- Monitors:
Ceph Monitor(ceph-mon)
维护集群状态的映射,包括monitor
映射,manager
映射,OSD
映射,MDS
映射和CRUSH
映射。 这些映射是Ceph守护程序相互协调所需的关键群集状态。monitor
还负责管理守护程序和客户端之间的身份验证。 通常至少需要三个monitor
才能实现冗余和高可用性。 - Managers:
ceph manager daemon(ceph-mgr)
负责跟踪运行时指标和Ceph集群的当前状态,包括存储利用率,当前性能指标和系统负载。Ceph Manager daemon
还托管基于python的模块,以管理和公开Ceph集群信息,包括基于Web的Ceph仪表板和REST API。 高可用性通常至少需要两个管理器。 - Ceph OSDs:
ceph osd(object storage daemon,ceph-osd)
存储数据,处理数据复制,恢复,重新平衡,并通过检查其他Ceph OSD守护程序的heartbeat
来向Ceph监视器和管理器提供一些监视信息。通常至少需要3个Ceph OSD才能实现冗余和高可用性。 - MDSs:
ceph metadata server(ceph-mds)
Ceph文件系统存储元数据(Ceph块设备和Ceph对象存储不使用MDS)。 Ceph元数据服务器允许POSIX文件系统用户执行基本命令(如ls,find等),而不会给Ceph存储集群带来巨大负担
Ceph将数据作为对象存储在逻辑存储池中。 使用CRUSH算法,Ceph计算哪个placement group(pg,中译:放置组)
应包含该对象,并进一步计算哪个Ceph OSD守护程序应存储该pg。 CRUSH算法使Ceph存储集群能够动态扩展,重新平衡和恢复。
configuration
storage device
在存储数据的磁盘上有两个ceph守护进程,osd和mon。
- osd:是大多数数据存储在Ceph中的地方。 一般而言,每个OSD都由单个存储设备(例如传统硬盘(HDD)或固态磁盘(SSD))支持。 OSD也可以由多种设备组合来支持,例如用于大多数数据的HDD和用于某些元数据的SSD(或SSD的分区)。 群集中OSD的数量通常取决于存储的数据量,每个存储设备的容量以及冗余(复制或擦除编码)的级别和类型。
- mon:管理关键的群集状态,例如群集成员身份和身份验证信息。 对于较小的群集,只需要几GB的容量,尽管对于较大的群集,监控器数据库可以达到数十或数百GB的容量
后端OSD
OSD可以通过两种方式管理它们存储的数据。 从Luminous 12.2.z版本开始,新的默认(推荐)后端是BlueStore。 在这之前,默认(也是唯一的选项)是FileStore。
filestore
FileStore是在Ceph中存储对象的传统方法。 它依赖于标准文件系统(通常为XFS)以及键/值数据库(传统为LevelDB,现在为RocksDB)来获取某些元数据。但是由于其总体设计以及对用于存储对象数据的传统文件系统的依赖,因此存在许多性能缺陷。
bluestore settings
BlueStore是专用于存储的后端,专门用于管理Ceph OSD工作负载的磁盘上的数据。 BlueStore的主要功能包括:
- 直接管理存储设备。 BlueStore使用原始块设备或分区。这避免了可能影