Ceph分布式存储笔记

这篇具有很好参考价值的文章主要介绍了Ceph分布式存储笔记。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、Ceph简介

1、Ceph概念

分布式存储是指一种独特的系统架构,它由一组网络进行通信、为了完成共同的任务而协调工作的计算机节点组成;分布式系统是为了用廉价的、普通的机器完成单个计算无法完成的计算、存储任务;其目的是利用更多的机器,处理更多的数据。

Ceph是一个统一【块存储、文件系统存储、对象存储】的分布式存储系统,提供较好的性能、可靠性和可扩展性。

Ceph项目最早起源于Sage就读博士期间的工作(最早的成果于2004年发表),并随后贡献给开源社区。在经过了数年的发展之后,目前已得到众多云计算厂商的支持并被广泛应用。RedHat及OpenStack都可与Ceph整合以支持虚拟机镜像的后端存储。

2、Ceph特点

  • 高性能
    摒弃了传统的集中式存储元数据寻址的方案,采用CRUSH算法,数据分布均衡,并行度高。
    考虑了容灾域的隔离,能够实现各类负载的副本放置规则,例如跨机房、机架感知等。
    能够支持上千个存储节点的规模,支持TB到PB级的数据。
  • 高可用性
    副本数可以灵活控制。
    支持故障域分隔,数据强一致性。
    多种故障场景自动进行修复自愈。
    没有单点故障,自动管理。
  • 高可扩展性
    去中心化。
    水平扩展,扩展灵活。
    随着节点增加而线性增长。

3、Ceph架构

Ceph是一个统一块存储、文件存储、对象存储的分布式系统。

RadosGW、RBD和CephFS都是RADOS存储服务的客户端,它们把RADOS的存储服务接口(librados)分别从不同的角度做了进一步抽象,因而各自适用于不同的应用场景。
Ceph分布式存储笔记
对象数据的底层存储服务是由多个主机(host)组成的存储集群,该集群也被称之为RADOS(Reliable Automatic Distributed Object Store)存储集群,即可靠、自动化、分布式对象存储系统。
librados是RADOS存储集群的API,它支持C、C++、Java、Python、Ruby和PHP等编程语言。

Ceph是一个对象式存储系统,它把每一个待管理的数据流(例如一个文件)切分为一到多个固定大小的对象数据,并以其为原子单元完成数据存取。数据的写入流程如下:
Ceph分布式存储笔记
Cpeh基于Crush算法计算将Data Object映射到PG,再从PG映射到集群的某个osd。除此之外,Crush算法还负责修复osd等高级功能。

Cpeh集群中最核心的组件:Rados Cluster组件,它可以将File按照固定大小切分为DO,基于对象进行管理数据,将DO通过Crush算法路由到指定的OSD上进行存储。

另外,整个集群的状态[包括osd、PG等]是由监控组件mon【基于paxos的高可用集群】管理与维护的。mgr组件分担了一些monitor组件的功能,不需要高可用。

Cpeh没有文件元数据库服务器,它的所有数据访问都是基于Crush算法实时计算进行路由的,因此整个集群可以无限制水平扩展。

任何客户端[【RadosGW、RBD和CephFS】与rados的交互都是通过各自客户端的存储池pool。为了更好的管理大批量的Data Object,存储池pool中虚拟出PG概念,PG的数量根据公式计算定义出来的。

4、Ceph组件

一个Ceph分布式存储集群一般由多个OSDs组件【Object Storage Daemon】、Monitor组件、Manager组件、MDFs组件 [非必须,CephFS客户端专用] 组成。

1、Monitor组件维护了一个集群运行图【Cluster Map,包括监控映射、Crush算法映射、osd映射、PG映射等以及复杂的映射关系】。由运行在主机上的守护进程Monitor组件管理维护,它还维护整个集群的认证信息并实行认证【基于CephX协议】【至少三个才能保证高可用】

2、Manager组件跟踪集群运行时的指标以及集群状态信息,包括存储利用率、性能指标、系统负载等。【至少两个才能保证高可用】

3、Ceph OSDs是指单独的存储磁盘设备。每个磁盘上都会有osd守护进程。用于真正的存储数据、处理数据、复制、恢复、重新负载均衡、并提供监控信息给Monitor组件。【至少三个才能保证高可用】

4、MDFs是为CephFs文件系统提供存储元数据信息的Ceph元数据服务器。通过ceph-mds守护进程。

附注:Ceph Block Devices即RBD不需要守护进程;Ceph Filesystem需要ceph-mds守护进程;Ceph Object Gateway需要ceph-radosgw守护进程。文章来源地址https://www.toymoban.com/news/detail-404973.html

  • OSD
    存储设备。
    全称Object Storage Device,也就是负责响应客户端请求返回具体数据的进程。一个Ceph集群一般都有很多个OSD。
  • Monitor
    集群监控组件。
    一个Ceph集群需要多个Monitor组成的小集群,它们通过Paxos同步数据,用来保存OSD的元数据。
  • RadosGateway(RGW)
    对象存储网关。
  • MDSs
    存放文件系统的元数据(对象存储和块存储不需要该组件)
    全称Ceph Metadata Server,是CephFS服务依赖的元数据服务。
  • Client
    ceph客户端。

5、Ceph存储引擎

  • FileStore和BlueStore
    对于FileStore,元数据存储在levelDB;对于BlueStore【Ceph新的存储后台,更快】,元数据存储在RocksDB和BlueFS中。

为什么Blue Store更快?
因为FileStore需要先将数据格式化为XFS格式;而Blue Store无需格式化,直接在块设备上创建元数据区RocksDB。
Ceph分布式存储笔记

二、Ceph部署

ceph官网:https://docs.ceph.com/en/pacific/
ceph中文文档:https://download.csdn.net/download/qq_41822345/85104644
阿里镜像部署包:https://mirrors.aliyun.com
ceph博客:https://blog.csdn.net/weixin_44908159/article/details/108303222
ceph博客专栏:https://blog.csdn.net/don_chiang709/category_8958706.html

三、Ceph块存储

Ceph块设备也叫做RADOS块设备 → RADOS block device : RBD

RBD驱动已经很好的集成在了Linux内核中。提供了企业功能,如快照、COW克隆等等。RBD还支持内存缓存,从而能够大大的提高性能。

Linux内核可用直接访问Ceph块存储,KVM可用借助于librbd访问Ceph块存储。
这也是Ceph Block Devices不需要守护进程的原因。

附注:Ceph Block Devices即RBD不需要守护进程;Ceph Filesystem需要ceph-mds守护进程;Ceph Object Gateway需要ceph-radosgw守护进程。

Ceph分布式存储笔记

四、Ceph文件存储

块存储,仅允许同时一个客户端访问,无法实现多人同时使用块设备。而Ceph的文件存储共享则允许多人同时使用。

分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连;CephFS使用Ceph集群提供与POSIX兼容的文件系统;允许Linux直接将Ceph存储mount到本地。

针对文件系统,有一个元数据(Metadata)的概念:
任何文件系统中的数据分为数据和元数据。数据是指普通文件中的实际数据,而元数据指用来描述一个文件的特征的系统数据【描述数据的数据】,比如:访问权限、文件拥有者以及文件数据库的分布信息(inode)等。

附注:Ceph Block Devices即RBD不需要守护进程;Ceph Filesystem需要ceph-mds守护进程;Ceph Object Gateway需要ceph-radosgw守护进程。

五、Ceph对象存储

对象存储也就是键值存储,通其接口指令,也就是简单的GET、PUT、DEL和其他扩展,向存储服务上传下载数据。

对象存储中所有数据都被认为是一个对象,所以,任何数据都可以存入对象存储服务器,如图片、视频、音频等。

RGW全称是Rados Gateway。RGW是Ceph对象存储网关,用于向客户端应用呈现存储界面,提供RESTful API访问接口。

附注:Ceph Block Devices即RBD不需要守护进程;Ceph Filesystem需要ceph-mds守护进程;Ceph Object Gateway需要ceph-radosgw守护进程。

到了这里,关于Ceph分布式存储笔记的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 分布式存储Ceph部署

    前言 Ceph 和 GlusterFS 都是出色的分布式存储,其中Ceph 广泛由于Openstack以及K8S的分布式持久化存储。 介绍 Ceph 是一个开源的分布式存储系统,同时支持 对象存储、块设备、文件系统 ceph 是一个对象(object)式存储系统,它把每一个待管理的数据流(文件等数据)切分为一到多个固

    2024年02月14日
    浏览(46)
  • ceph分布式存储实战

    虚拟机安装ceph集群       部署ceph集群      mon服务器的高可用: # apt install ceph-mon # apt install ceph-mon 1.ceph的组件和功能 2.ceph的数据读写流程 3.使用ceph-deploy安装一个最少三个节点的ceph集群 推荐3个或以上的磁盘作为专用osd 4.测试ceph的rbd使用

    2024年02月09日
    浏览(44)
  • Ceph分布式存储系统

    Ceph :ceph被称为面向未来的存储还是一个分布式的存储系统,非常灵活,如果需要扩容,只要向ceph集中增加服务器即可。ceph存储数据时采用多副本的方式进行存储,生产环境下,一个文件至少要存三份,ceph默认也是三副本存储。 可以实现的 存储方式 : 块存储:提供像普通

    2024年04月15日
    浏览(47)
  • Ceph分布式存储(1)

    目录 一.ceph分布式存储 Ceph架构(自上往下) OSD的存储引擎: Ceph的存储过程: 二. 基于 ceph-deploy 部署 Ceph 集群 20-40节点上添加3块硬盘,一个网卡: 10节点为admin,20-40为node,50为client: 配置 hosts 解析: 安装常用软件和依赖包: 在 admin 管理节点配置 ssh 免密登录所有节点:

    2024年01月18日
    浏览(48)
  • 【分布式技术】分布式存储ceph之RGW接口

    目录 1、对象存储概念  2、创建 RGW 接口 //在管理节点创建一个 RGW 守护进程 #创建成功后默认情况下会自动创建一系列用于 RGW 的存储池  #默认情况下 RGW 监听 7480 号端口  //开启 http+https ,更改监听端口 #更改监听端口 ​          //创建 RadosGW 账户 客户端测试 OSD 故障模拟

    2024年01月19日
    浏览(62)
  • ceph 分布式存储与部署

    目录 一、存储基础:  1.单机存储设备:  2. 单机存储的问题:  3. 商业存储解决方案:  4. 分布式存储:  5. 分布式存储的类型: 二、Ceph 简介: 三、Ceph 优势: 四、Ceph 架构:  1. RADOS 基础存储系统:  2. LIBRADOS 基础库:  3. 高层应用接口:包括了三个部分:   3.1 对象

    2024年02月07日
    浏览(48)
  • 分布式存储ceph的介绍

    分布式存储 Ceph、TFS、FastDFS、MooseFS(MFS)、GlusterFS(GFS) 存储机制会把数据分散存储到多个节点上,具有高扩展性、高性能、高可用性等优点。 #分布式存储的类型 ●块存储(例如硬盘,一般是一个存储被一个服务器挂载使用,适用于容器或虚拟机存储卷分配、日志存储、文件存

    2024年02月08日
    浏览(50)
  • 分布式运用——存储系统Ceph

    Ceph是一个开源的分布式存储解决方案,旨在提供可扩展性、高性能和强大的数据可靠性。它采用了一种分布式对象存储架构,能够同时提供块存储和文件存储的功能。本篇博客将深入探索Ceph的原理、特性和应用场景,帮助读者更好地理解和使用这一强大的存储解决方案。

    2024年02月17日
    浏览(44)
  • Ceph 分布式存储之应用

    1)在管理节点创建 mds 服务 2)查看各个节点的 mds 服务 3)创建存储池,启用 ceph 文件系统 ceph 文件系统至少需要两个 rados 池,一个用于存储数据,一个用于存储元数据。此时数据池就类似于文件系统的共享目录。 创建 cephfs 4)查看mds状态 5)创建用户 账户为 client.lion,用

    2024年02月16日
    浏览(52)
  • 【Linux】分布式存储系统 Ceph

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 Ceph使用C++语言开发,是一个开放、自我修复和自我管理的开源分布式存储系统。具有高扩展性、高性能、高可靠性的优点。 Ceph目前已得到众多云计算厂商的支持并被广泛应用。RedHat及OpenStack,Kubernet

    2024年02月17日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包