Ceph层次架构分析

Ceph的层次结构可以从逻辑上自下向上分为以下几个层次:

一、基础存储系统RADOS层

  • 功能:RADOS(Reliable Autonomic Distributed Object Store)是Ceph的底层存储系统,提供了分布式存储的核心功能。它是一个完整的对象存储系统,所有存储在Ceph系统中的用户数据最终都是由RADOS层来存储的。Ceph的高可靠、高可扩展、高性能、高自动化等特性也是由RADOS层所提供的。
  • 组件:RADOS层主要由OSD(Object Storage Daemon)和Monitor组成。OSD负责数据的读写操作,而Monitor则负责维护存储集群的当前状态信息,如OSD的故障情况等。
  • 逻辑结构:RADOS集群的逻辑结构包括OSD节点和Monitor节点。OSD节点负责数据的存储和维护,而Monitor节点则负责系统状态的监测和维护。它们之间通过传输节点状态信息来共同得出系统的总体工作状态,并形成一个全局系统状态记录数据结构,即所谓的cluster map。

二、基础库librados层

  • 功能:librados是对RADOS进行抽象和封装的库,它向上层提供API,以便直接基于RADOS(而不是整个Ceph)进行应用开发。由于RADOS是一个对象存储系统,因此librados实现的API也只是针对对象存储功能的。
  • 特性:librados提供的API支持多种编程语言,如C、C++等。应用可以通过调用本机上的librados API,再通过socket与RADOS集群中的节点通信并完成各种操作。

三、高层接口层

  • 功能:高层接口层在librados库的基础上提供了抽象层次更高、更便于应用或客户端使用的上层接口。它包括了RADOS GW、RBD(Reliable Block Device)和Ceph FS(Ceph File System)三个部分。

  • 组件

    • RADOS GW:提供与Amazon S3和Swift兼容的RESTful API,以供相应的对象存储应用开发使用。RADOS GW提供的API抽象层次更高,但功能则不如librados强大。
    • RBD:提供了一个标准的块设备接口,常用于在虚拟化的场景下为虚拟机创建volume。Red Hat已经将RBD驱动集成在KVM/QEMU中,以提高虚拟机访问性能。
    • Ceph FS:是一个POSIX兼容的分布式文件系统。由于还处在开发状态,因此Ceph官网并不推荐将其用于生产环境中。

四、应用层

  • 功能:应用层是不同场景下对于Ceph各个应用接口的各种应用方式。例如,基于librados直接开发的对象存储应用、基于RADOS GW开发的对象存储应用、基于RBD实现的云硬盘等。
  • 特性:应用层的选择取决于用户的需求和应用场景。基于librados的开发可能更适合于在私有Ceph系统上开发专用应用,或者为基于Ceph的公有存储系统开发后台数据管理、处理应用。而RADOS GW则更适合于常见的基于web的对象存储应用开发,例如公有云上的对象存储服务。

综上所述,Ceph的层次结构从逻辑上分为基础存储系统RADOS层、基础库librados层、高层接口层和应用层。每个层次都有其特定的功能和组件,共同构成了Ceph分布式存储系统的强大架构

相关推荐
斯普信专业组3 天前
Ceph集群OSD运维手册:基础操作与节点扩缩容实战
运维·ceph
时空无限1 个月前
CEPH OSD_SLOW_PING_TIME_FRONT/BACK 警告处理
ceph
云计算运维丁丁1 个月前
ceph集群架构阐述
ceph·架构
liuy52771 个月前
dmsetup 清理ceph osd残留磁盘分区
ceph
斯普信专业组1 个月前
ceph数据迁移数据迁移与bacula配置调整优化实战
前端·ceph·github
斯普信专业组1 个月前
Ceph异地数据同步之-RBD异地同步复制(下)
linux·服务器·ceph
小马爱打代码1 个月前
Kubernetes 中部署 Ceph,构建高可用分布式存储服务
分布式·ceph·kubernetes
斯普信专业组1 个月前
Ceph与Bacula运维实战:数据迁移与备份配置优化指南
运维·ceph·github
野猪佩挤2 个月前
Ceph集群2025(Squid版)导出高可用NFS集群(上集)
java·服务器·ceph
不死鸟.亚历山大.狼崽子2 个月前
Ceph(1):分布式存储技术简介
ceph