ceph基础知识

2022-09-16 11:47:10 浏览数 (1)

ceph相关的基础知识记录

# ceph基本组件

# Object
  • Ceph最底层的存储单元是Object对象,每个Object包含元数据和原始数据。
# OSD
  • OSD全称Object Storage Device,用于集群中所有数据与对象的存储。处理集群数据的复制、恢复、回填、再均衡。并向其他osd守护进程发送心跳,然后向Mon提供一些监控信息,当Ceph存储集群设定数据有两个副本时(一共存两份),则至少需要两个OSD守护进程即两个OSD节点,集群才能达到active clean状态。
# PG
  • PG全称Placement Grouops,是一个逻辑的概念,一个PG包含多个OSD。引入PG这一层其实是为了更好的分配数据和定位数据。
# Monitor
  • 一个Ceph集群需要多个Monitor组成的小集群,它们通过Paxos同步数据,用来保存OSD的元数据。
# RADOS
  • RADOS全称Reliable Autonomic Distributed Object Store,是Ceph集群的精华,用户实现数据分配、Failover等集群操作。
# Libradio
  • Librados是Rados提供库,因为RADOS是协议很难直接访问,因此上层的RBD、RGW和CephFS都是通过librados访问的,目前提供PHP、Ruby、Java、Python、C和C 支持。
# CRUSH
  • CRUSH是Ceph使用的数据分布算法,类似一致性哈希,让数据分配到预期的地方。
# RBD
  • RBD全称RADOS block device,是Ceph对外提供的块设备服务。
# RGW
  • RGW全称RADOS gateway,是Ceph对外提供的对象存储服务,接口与S3和Swift兼容。
# MDS
  • MDS全称Ceph Metadata Server,是CephFS服务依赖的元数据服务。
# CephFS
  • CephFS全称Ceph File System,是Ceph对外提供的文件系统服务。
  • 存储池( Pool ): Ceph 在存储池内存储数据,它是对象存储的逻辑组;存储池管理着归置组数量、副本数量、和存储池规则集。要往存储池里存数据,用户必须通过认证、且权限合适,存储池可做快照。
  • 归置组( Placement Group ): Ceph 把对象映射到归置组( PG ),归置组是一逻辑对象池的片段,这些对象组团后再存入到 OSD 。归置组减少了各对象存入对应 OSD 时的元数据数量,更多的归置组(如每 OSD 100 个)使得均衡更好。
  • CRUSH 图( CRUSH Map ): CRUSH 是重要组件,它使 Ceph 能伸缩自如而没有性能瓶颈、没有扩展限制、没有单点故障,它为 CRUSH 算法提供集群的物理拓扑,以此确定一个对象的数据及它的副本应该在哪里、怎样跨故障域存储,以提升数据安全。

0 人点赞