本文将对Ceph的基本情况进行概要介绍,以期读者能够在不涉及技术细节的情况下对Ceph建立一个初步印象. 1. 什么是Ceph? Ceph的官方网站Ceph.com上用如下这句话简明扼要地定义了Ceph: "Ceph is a unified, distributed storage system designed for excellent performance, reliability and scalability." 也即,Ceph是一种为优秀的性能.可靠性和可扩展性而设计的…
本篇文章的内容,主要是笔者在调研分析Ceph过程中产生的一些思考.因为其中的内容比较自由发散,且大多是笔者的个人见解,故此另启一文进行讨论. 关于Ceph的性能 目前为止,本系列的文章中没有涉及到Ceph性能的详细讨论,也没有给出任何的Ceph性能数据.原因很简单:笔者本人没有机会进行详尽的Ceph性能分析研究,也没有见到比较全面的相关数据.因此,为了避免以片面的数据误导读者,便没有提供任何信息. 以笔者个人的经验而言,探讨一个系统领域的开源项目的性能,事实上并不容易.其原因在于,影响一个实际部…
在 <"Ceph浅析"系列之二--Ceph概况>中即已提到,关注Ceph的原因之一,就是OpenStack社区对于Ceph的重视.因此,本文将对Ceph在OpenStack中的价值进行简要介绍,并且对Ceph和Swift进行对比. Ceph在OpenStack中的地位 对于一个IaaS系统,涉及到存储的部分主要是块存储服务模块.对象存储服务模块.镜像管理模块和计算服务模块.具体针对OpenStack而言,则分别对应为其中的Cinder.Swift.Glance和Nova四个…
开源技术专家章宇同学(@一棹凌烟)在C3沙龙分享过Ceph之后,最近来了劲头,一口气写了一系列<Ceph浅析>的博文,共8篇: "Ceph浅析"系列之一--前言 "Ceph浅析"系列之二--Ceph概况 "Ceph浅析"系列之三--Ceph的设计思想 "Ceph浅析"系列之四--Ceph的结构 "Ceph浅析"系列之五--Ceph的工作原理及流程 "Ceph浅析"系列之六--…
本文将对Ceph的工作原理和若干关键工作流程进行扼要介绍.如前所述,由于Ceph的功能实现本质上依托于RADOS,因而,此处的介绍事实上也是针对RADOS进行.对于上层的部分,特别是RADOS GW和RBD,由于现有的文档中(包括Sage的论文中)并未详细介绍,因而本文或有语焉不详之处,还请读者多多包涵. 本文将首先介绍RADOS中最为核心的.基于计算的对象寻址机制,然后说明对象存取的工作流程,之后介绍RADOS集群维护的工作过程,最后结合Ceph的结构和原理对其技术优势加以回顾和剖析. 寻址流…
在今天,读书有时是件“麻烦”事.它需要你付出时间,付出精力,还要付出一份心境.--仅以<Owin+ASP.NET Identity浅析系列>来祭奠那逝去的…… 上一篇博客讲了用户登录注册问题,这篇说下如何扩展用户属性,毕竟我们的项目中用户不可能只有用户名.邮箱.手机号不是,下面为我们的用户表新增两个属性:所在城市和年龄 第一步:修改数据库表,新增两个字段 create table aspnetusers ( Id char(32) primary key, Email varchar(50)…
Ceph针对的目标应用场景 理解Ceph的设计思想,首先还是要了解Sage设计Ceph时所针对的目标应用场景,换言之,"做这东西的目的是啥?" 事实上,Ceph最初针对的目标应用场景,就是大规模的.分布式的存储系统.所谓"大规模"和"分布式",是指至少能够承载PB级别的数据,并且由成千上万的存储节点组成. 在大数据口号深入人心的今天,PB已经远远不是一个激动人心的系统设计目标了.但是,应该指出,Ceph项目起源于04年.那是一个商用处理器以单核为…
最初决定写这些文章的时候,本打算大致记录一下,几千字也就了事了.可是越写越觉得东西多,不说明白总有些不甘心,于是就越写越长,到这儿为止貌似已经有一万七千多字了.除了博士论文之外,应该是没有写过更长的东西了. 但是,即便如此,仍然有很多内容没能涉及,只能将来有机会再加以补充了. 之所以花这么多时间在这些文章上,归根结底还是因为Ceph是个有意思的东西,多看一看,多想一想,总能有些新收获,很有趣.即便Ceph最终不能大红大紫,凭着其精彩的设计思想和巧妙的技术实现,应该还是会在存储技术领域留下一笔的.…
本文将从逻辑结构的角度对Ceph进行分析. Ceph系统的层次结构 Ceph存储系统的逻辑层次结构如下图所示[1]. Ceph系统逻辑层次结构 自下向上,可以将Ceph系统分为四个层次: (1)基础存储系统RADOS(Reliable, Autonomic, Distributed Object Store,即可靠的.自动化的.分布式的对象存储) 顾名思义,这一层本身就是一个完整的对象存储系统,所有存储在Ceph系统中的用户数据事实上最终都是由这一层来存储的.而Ceph的高可靠.高可扩展.高性能…
本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 (5)Ceph 与 OpenStack 集成的实现 (6)QEMU-KVM 和 Ceph RBD 的 缓存机制总结 (7)Ceph 的基本操作和常见故障排除方法 1. Ceph 集群的物理结构 1.1 Ceph 内部集群 从前一篇文章 我们知道,从物理上来讲,一个 Ceph 集群内部其实有几个子集群…