ceph架构简介

在测试OpenStack的后端存储时,看到了ceph作为后端存储时的各种优势 ,于是查询资料,总结了这篇ceph架构的博客,介绍了ceph的架构和ceph的核心组件。ceph整体十分庞大,本文只是介绍了整体架构和概念,想要详细查看ceph请看博文:Ceph介绍及原理架构分享

1.1 Ceph简介

​ Ceph是一个统一的分布式存储系统,设计初衷是提供较好的性能、可靠性和可扩展性。

1.2 Ceph架构

支持三种接口:

  • Object:有原生的API,而且也兼容Swift和S3的API。
  • Block: 支持精简配置、快照、克隆。
  • File:Posix接口,支持快照。

1.2.1 架构介绍

1、ceph架构最底层是RADOS对象存储系统(Ceph最底层的存储单元是Object对象),外部想要访问该系统需要librados库。

2、ceph对外提供四种存储:应用直接访问RADOS、对象存储接口、块存储接口、文件系统接口;分别对应:代码直接访问、radosgw(rgw)、librbd(rbd)、元数据服务器(MDS)

1.3 Ceph核心组件及概念介绍

  • Monitor

    一个Ceph集群需要多个Monitor组成的小集群,它们通过Paxos同步数据,用来保存OSD的元数据。

  • OSD

    OSD全称Object Storage Device,也就是负责响应客户端请求返回具体数据的进程。一个Ceph集群一般都有很多个OSD。

  • MDS

    MDS全称Ceph Metadata Server,是CephFS服务依赖的元数据服务。

  • Object

    Ceph最底层的存储单元是Object对象,每个Object包含元数据和原始数据。

  • PG

    PG全称Placement Groups,是一个逻辑的概念,一个PG包含多个OSD。引入PG这一层其实是为了更好的分配数据和定位数据。

  • 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兼容。

  • CephFS

    CephFS全称Ceph File System,是Ceph对外提供的文件系统服务。

最新文章

  1. 在WinCC中通过VBS操作SQL Server2005
  2. Python Day02
  3. Easyui datebox 限制时间选择范围
  4. HDU 2577
  5. URAL 1097 Square Country 2 离散化
  6. IR的评价指标—MAP,NDCG,MRR
  7. 虚拟主机 (Virtual Host)
  8. android 35 ListView增删改差
  9. UMl概述(转)
  10. Android 匿名共享内存C++接口分析
  11. LINQ实现行列转换
  12. C++ 面向对象学习2 构造方法
  13. 基础:获得servletAPI
  14. Django内置的通用类视图
  15. 【链表】Bzoj1098[POI2007]办公楼biu
  16. centos7进入单用户模式
  17. January 14th, 2018 Week 02nd Sunday
  18. Spring Boot 项目初始化
  19. Pandas之数据结构
  20. GDOI2018 Day1 题目总结

热门文章

  1. 一行代码搞定WordPress面包屑导航breadcrumb
  2. Java 第十次作业
  3. python写入excel(方式1)
  4. 输入一个正整数n,生成一张2的乘方表,输出2*0—2*n的值。
  5. Linear Discriminant Analysis Algorithm
  6. LeetCode 742. Closest Leaf in a Binary Tree
  7. 查vue版本号
  8. MySQL 已有大数据量表进行分区踩坑
  9. 【洛谷P5158】 【模板】多项式快速插值
  10. tensorflow手写数字识别(有注释)