前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Ceph分布式存储文件系统基础学习与实践

Ceph分布式存储文件系统基础学习与实践

作者头像
全栈工程师修炼指南
发布2022-09-29 19:26:49
9210
发布2022-09-29 19:26:49
举报
文章被收录于专栏:全栈工程师修炼之路

[TOC]

0x00 前言简述

CEPH 简介

Q: 什么是CEPH? 答: Ceph是一个统一的分布式存储系统,设计初衷是提供较好的性能、可靠性和可扩展性。

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

Ceph 特点:

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

Ceph 相关术语: 描述: https://docs.ceph.com/en/latest/glossary/

  • Ceph Monitor (MON) : Ceph监控软件。
  • Ceph Manager (MGR) : Ceph管理器软件,它在一个地方收集整个集群的所有状态。
  • Ceph Metadata Server (MDS) : Ceph元数据软件。
  • Ceph OSD 守护进程 : Ceph OSD 软件,与逻辑磁盘 ( OSD )交互。有时,Ceph 用户使用术语“OSD”来指代“Ceph OSD 守护进程”,尽管正确的术语是“Ceph OSD”
  • OSD ID : 定义 OSD 的整数。它由监视器生成,作为创建新 OSD 的一部分。
  • OSD FSID : 这是一个唯一标识符,用于进一步提高 OSD 的唯一性,它位于 OSD 路径中名为osd_fsid 该 fsid术语可与uuid。
  • OSD UUID : 就像 OSD fsid 一样,这是 OSD 唯一标识符,可与 fsid
  • Bluestore : OSD BlueStore 是 OSD守护程序(kraken和更新版本)的新后端。与filestore不同,它直接将对象存储在Ceph块设备上,而不需要任何文件系统接口。
  • Filestore : OSD 守护进程的后端,需要日志并将文件写入文件系统。
  • Object (对象) :有原生的API,而且也兼容Swift和S3的API。
  • Block (块) :支持精简配置、快照、克隆。
  • File (文件系统) :Posix接口,支持快照。
  • Ceph 项目 :Ceph的人员、软件、任务和基础设施的总称。
  • Cephx : Ceph认证协议,Cephx的操作与Kerberos类似,但它没有单点故障。
  • Ceph 系统 : Ceph 的两个或多个组件的集合。
  • Ceph 节点 : Ceph 系统中的任何一台机器或服务器。
  • Ceph 存储集群 : 存储用户数据的核心存储软件集(MON+OSD)。
  • Ceph 集群映射 : 该组图包括监视器图、OSD 图、PG 图、MDS 图和 CRUSH 图。
  • Ceph 对象存储 : 对象存储“产品”、服务或功能,主要由 Ceph 存储集群和 Ceph 对象网关组成。
  • Ceph 对象网关 : Ceph 的 S3/Swift 网关组件(RGW)。
  • Ceph 块设备 : Ceph 的块存储组件(RBD)。
  • Ceph 块存储 : 与librbd管理程序(如 QEMU 或 Xen)和管理程序抽象层(如libvirt)。
  • Ceph 文件系统 : Ceph 的 POSIX 文件系统组件。
  • Ceph Pool : 池是用于存储对象的逻辑分区。
  • LVM Lables : LVM 卷和组的可扩展元数据。它用于存储有关设备及其与 OSD 关系的 Ceph 特定信息。
  • 云平台 : 第三方云供应平台,如 OpenStack、CloudStack、OpenNebula、ProxMox 等。
  • 对象存储设备 : 物理或逻辑存储单元(例如 LUN)。有时 Ceph 用户使用术语“OSD”来指代Ceph OSD 守护进程,尽管正确的术语是“Ceph OSD”。

CEPH 组成及原理

描述: 无论您是想向云平台提供 Ceph 对象存储和/或 Ceph 块设备服务、部署 Ceph 文件系统还是将 Ceph 用于其他目的,所有 Ceph 存储集群部署都从设置每个 Ceph 节点、您的网络和 Ceph 开始存储集群。

Tips : 一个 Ceph 存储集群至少需要一个 Ceph Monitor、Ceph Manager 和 Ceph OSD(对象存储守护进程), 运行 Ceph 文件系统客户端时也需要 Ceph (MDS) 元数据服务器

代码语言:javascript
复制
MDSs  -- Monitors -- Managers -- OSDs
  • 1.Monitors:Ceph Monitor ( ceph-mon ) 维护集群状态的映射,包括监视器映射、管理器映射、OSD 映射、MDS 映射和 CRUSH 映射。这些映射是 Ceph 守护进程相互协调所需的关键集群状态。监视器还负责管理守护进程和客户端之间的身份验证。通常至少需要三个监视器才能实现冗余和高可用性。
  • 2.Managers: Ceph Managers 守护进程 ( ceph-mgr ) 负责跟踪运行时指标和 Ceph 集群的当前状态,包括存储利用率、当前性能指标和系统负载。Ceph 管理器守护进程还托管基于 Python 的模块来管理和公开 Ceph 集群信息,包括基于 Web 的Ceph 仪表板和 REST API, 高可用性通常至少需要两个管理器。
  • 3.Ceph OSD: Ceph OSD(对象存储守护进程 ceph-osd)存储数据,处理数据复制、恢复、重新平衡,并通过检查其他 Ceph OSD 守护进程的心跳来向 Ceph 监视器和管理器提供一些监控信息。通常至少需要 3 个 Ceph OSD 来实现冗余和高可用性。
  • 4.MDS:Ceph 元数据服务器(MDS,ceph-mds)代表Ceph 文件系统存储元数据(即 Ceph 块设备和 Ceph 对象存储不使用 MDS)。Ceph的元数据服务器允许POSIX文件系统的用户来执行基本的命令(如 ls,find没有放置在一个Ceph存储集群的巨大负担等等)。

Tips : Ceph 将数据作为对象存储在逻辑存储池中, 使用 CRUSH 算法 Ceph 计算出哪个归置组应该包含该对象,并进一步计算出哪个 Ceph OSD Daemon 应该存储该归置组,CRUSH 算法使 Ceph 存储集群能够动态扩展、重新平衡和恢复。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021-07-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x00 前言简述
    • CEPH 简介
      • CEPH 组成及原理
      相关产品与服务
      对象存储
      对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档