资讯专栏INFORMATION COLUMN

ceph存储原理+架构

社区管理员 / 423人阅读

一、Ceph存储简介

官网地址:https://docs.ceph.com/en/pacific/

Ceph官网首页有这两段介绍:"Ceph uniquely delivers object, block, and file storage in one unified system. Ceph is highly reliable, easy to manage, and free. The power of Ceph can transform your company’s IT infrastructure and your ability to manage vast amounts of data. "

翻译过来就是Ceph 是唯一一个可提供传输对象存储、块存储、文件存储的统一系统。Ceph 它高度可靠,易于管理,并且免费。Ceph的强大功能可以改变您公司的IT基础架构以及管理大量数据的能力。 

image.png

二、Ceph存储架构解读

官网地址:https://docs.ceph.com/en/pacific/architecture/

image.png

对象存储:通过RADOSGW进行分布式数据存储的。

  • 块存储:通过RBD做的,最终映射到操作系统的一个块设备。

  • 文件存储:支持内核和用户级别的。并且,它直接操作Ceph 底层的RADOS,不经过LIBRADOS库;

  • 可以通过LIBRADOS原生的库(支持各种API接口),来直接访问分布式存储。

  • RADOS是分布式存储的核心

三、Ceph组件剖析

3.1 THE CEPH STORAGE CLUSTER

  • Ceph Monitor :负责整个集群状态的情况,为了保证高可用性,要确保其数量为奇数个。

  • Ceph OSD Daemon :真正存储数据的地方,会定期上报状态给Monitor,如果异常会触发迁移和修复。

  • Ceph Manager :Ceph manager守护进程(Ceph -mgr)是在Kraken版本中引入的,它与monitor守护进程一起运行, 为外部监视和管理系统提供额外的监视和接口。

  • Ceph Metadata Server :Ceph 元数据服务器服务进程,简称 MDS。只有在启用了 Ceph 文件存储(CephFS)的集群中才需要启用 MDS,它负责跟踪文件层次结构,存储和管理 CephFS 的元数据。MDS 的元数据也是以 Obejct 的形式存储在 OSD 上。

3.2 CLUSTER MAP

Monitor集群五张状态表:

  • The Monitor Map:整个集群监视的状态情况,最重要,最核心的一个监视器组件。

  • The OSD Map:实际存储数据的地方,它会定期的把数据上报Monitor,一旦异常就会触发修复机制。

  • The PG Map:最终数据是存储在PG容器里面,然后才会分发到OSD,避免数据直接存放到对象中导致数据改动很大。当OSD异常时,会直接通过移动PG来实现容灾修复。

  • The CRUSH Map:数据分配的机制。

  • The MDS Map:存储文件存储的元数据信息。

四、Ceph写入数据流

image.png

Ceph 存储中一切皆对象,一个文件先被切割成多个objects(默认4M一个Object),然后每个对象都有一个Oid(Object ID),这些Objects需要存放在PG组里面,PG组可以理解为装载Object的文件夹,Object 对象通过hash和掩码运算,最终得到一个pgid,得到你最终落到哪个PG上面,一个PG上面会存储很多的Object,之后再通过 CRUSH算法,把pg分配到集群中的OSD节点上,根据CRUSH使用算法的不同,也会落到不同的OSD上面。


文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/128111.html

相关文章

  • 技术栈:史上最全的Ceph构件及组件分析

    摘要:层确保数据一致性和可靠性。保证集群的相关组件在同一时刻能够达成一致,相当于集群的领导层,负责收集更新和发布集群信息。元数据服务器,跟踪文件层次结构并存储只供使用的元数据。启迪云-高级开发工程师  侯玉彬前言上一次简单的介绍Ceph的过去和未来的发展。这一节将详细介绍Ceph的构件以及组件。Ceph存储架构Ceph 存储集群由几个不同的daemon组成,每个daemon负责Ceph 的一个独特...

    big_cat 评论0 收藏0
  • 史上最全的Ceph构件及组件分析

    摘要:层确保数据一致性和可靠性。元数据服务器,跟踪文件层次结构并存储只供使用的元数据。这些文件系统扩展属性能够为守护进程提供内部对象的状态快照元数据和等信息这有助于数据管理。启迪云-高级开发工程师  侯玉彬前言前文回顾:《开源社区的明星项目—Ceph谈》上一次简单的介绍Ceph的过去和未来的发展。这一节将详细介绍Ceph的构件以及组件。Ceph存储架构Ceph 存储集群由几个不同的daemon组成...

    oujie 评论0 收藏0
  • Rancher如何对接Ceph-RBD块存储

    摘要:就目前而言,在支持的三种接口块存储和对象存储接口中,块存储是目前最稳定且达到生产环境要求的接口。月日,北京海航万豪酒店,容器技术大会即将举行。 概要 演示环境说明 整个测试环境由以下2台本地虚拟机组成,相关信息说明如下: showImg(https://segmentfault.com/img/bVScmU?w=811&h=138); 引言 Librbd(RBD)是Ceph提供的块存储...

    instein 评论0 收藏0
  • 平安云构建解密

    摘要:平安云诞生于平安集团的科技大本营,多年的金融经验积累使得平安云对金融行业架构规范,金融业务系统流量特征及安全合规性等均有独到的见解。 平安云诞生于平安集团的科技大本营,多年的金融IT经验积累使得平安云对金融行业架构规范,金融业务系统流量特征及安全合规性等均有独到的见解。从13年底立项以来,平安金融云一直尽可能走开源和自研结合的路线,自主研发了IaaS层的全套产品线,为金融行业客户提供可靠、弹...

    vvpale 评论0 收藏0
  • rook使用教程,快速编排ceph

    摘要:一旦计算存储分离后,就可真正实现随意漂移,对集群维护来说是个极大的福音。不过目前面临最大的挑战可能还是分布式存储的性能问题。 kubernetes集群三步安装 安装 git clone https://github.com/rook/rook cd cluster/examples/kubernetes/ceph kubectl create -f operator.yaml 查看...

    elisa.yang 评论0 收藏0

发表评论

0条评论

社区管理员

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<