Oepnstack之CEPH系列是根据Ceph Cookbook整理的笔记,分为以下几个部分:

1. 《Ceph简介》

2. 《Ceph集群操作》

3. 《Ceph块设备管理与Openstack配置》

4. 《深入Ceph》

5. 《ceph优化与性能测试》

首发与blog.bobozhu.cn。

Ceph概念

1、CEPH英文是宠物章鱼的昵称(cephalopod),一个软件定义存储(SDS)的实施方案,底层为分布式对象存储。


2、CEPH是真正的统一存储,提供块存储、文件存储、对象存储。


3、传统存储的局限:

    两个控制节点的可用性问题

    元数据表查询的性能问题


4、Raid技术的局限:

    大容量盘重建过程漫长

    对磁盘类型要求较高

    扩容的瓶颈

    可靠性和重建期间的性能低


5、CEPH核心算法,CRUSH(Controller Replication Under Scalable Hashing)算法,实现自我管理和修复。

Ceph架构

  • 1、Ceph monitor(MON):MON节点维护各个组建的映射信息,包括OSD map、MON map、PG map和CUSH map,所有节点想MON汇报状态信息。


  • 2、Ceph存储设备(OSD):Ceph集群中唯一能存储用户数据的组件。一个OSD的守护进程捆绑在系统的一个分区或硬盘。


  • 3、RADOS(Reliable Autonomic Distributed Object Store):Rados是Ceph的基础。Ceph中所有数据最终以对象形式存储,Rados负责保存这些对象。


  • 4、librados:librados库为PHP、Python、Ruby、Java、C和C++这些编程语言提供访问RADOS接口的方式。同时为RBD、RGW和CephFS提供原生接口。


  • 5、RADOS块设备(RBD):RBD是Ceph的块设备,通过基于librados接口和librbd库的rbd命令提供服务,具有写时复制特性(copy on write),这个特性有助于Openstack快速孵化多个实例。

  • 6、RADOS网关接口(RGW):提供对象存储,使用librgw和librados。提供与Amazon S3和openstack Swift兼容的RESTful API。


  • 7、CephFs:提供文件系统,兼容POSIX。


  • 8、Ceph元数据服务器(MDS):为CephFs跟踪文件的层次结构和存储其元数据。