ceph架构简介
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对外提供的文件系统服务。
最新文章
- 在WinCC中通过VBS操作SQL Server2005
- Python Day02
- Easyui datebox 限制时间选择范围
- HDU 2577
- URAL 1097 Square Country 2 离散化
- IR的评价指标—MAP,NDCG,MRR
- 虚拟主机 (Virtual Host)
- android 35 ListView增删改差
- UMl概述(转)
- Android 匿名共享内存C++接口分析
- LINQ实现行列转换
- C++ 面向对象学习2 构造方法
- 基础:获得servletAPI
- Django内置的通用类视图
- 【链表】Bzoj1098[POI2007]办公楼biu
- centos7进入单用户模式
- January 14th, 2018 Week 02nd Sunday
- Spring Boot 项目初始化
- Pandas之数据结构
- GDOI2018 Day1 题目总结