集群映射由Device和桶(Buckets)组成,设备和桶都有ID描述和权重。Bucket可以包含任意设备或者其他的bucket,使他们形成内部节点的存储层次结构,设备总是在叶子节点。存储设备的权重由管理员设置以控制设备负责存储的相对数据量。尽管大型系统的设备含不同的容量大小和性能特..
分类:
其他好文 时间:
2017-08-03 09:56:22
阅读次数:
213
CRUSH(ControlledReplicationUnderScalableHashing)它是一种基于伪随机控制数据分布、复制的算法。数据分布式算法的要求:数据分布和负载均衡首先要让数据分布均匀,使数据能均匀的分布在各个节点和磁盘上。其次是负载均衡,使数据访问(主要是读写操作)的负载在各个节点和..
分类:
其他好文 时间:
2017-08-02 10:11:56
阅读次数:
170
数据平衡当在集群中新增一个OSD设备时,整个集群将会发生数据迁移使数据重新分布达到均衡。在Ceph集群中数据迁移的的基本单位是PG。其实在迁移过程中是将PG中的所有对象作为一个整体来进行迁移。数据迁移触发流程:1、当新加入一个OSD时,会改变系统的CRUSHMap,从而引起对象映..
分类:
其他好文 时间:
2017-07-31 22:02:17
阅读次数:
391
数据写过程1、Client向PG所在的主OSD发送写请求。2、主OSD接收到写请求,同时向两个从OSD发送写副本的请求,并同时写入主OSD的本地存储中。3、主OSD接收到两个从OSD发送写成功的ACK应答,同时确认自己写成功,就向客户端返回写成功的ACK应答。4、在写操作的过程中,主OSD必须等..
分类:
其他好文 时间:
2017-07-27 22:29:11
阅读次数:
310
PoolPool是一个抽象的存储池,它规定了数据冗余的类型以及对应的副本分布策略。目前实现了两种Pool类型:Replicated类型和ErasureCode类型。一个Pool由多个PG构成。对象映射过程对象映射过程指的是查找对象在集群中分布的位置信息,其过程分为两步:A、对象到PG的映射。这个过..
分类:
其他好文 时间:
2017-07-26 18:12:54
阅读次数:
105
PGPG(PlacementGroup)单从名字上可理解为一个放置策略组,它是对象的集合,集合里的所有对象具有相同的放置策略;对象的副本都分布在相同的OSD列表上。一个对象只能属于一个PG,一个PG对应于放置在其上的OSD列表。一个OSD上可以分布多个PG。PG是一组对象的逻辑集合,也可将PG..
分类:
其他好文 时间:
2017-07-25 15:44:55
阅读次数:
143
python 中 time 有三种格式: float, struct tuple(time.struct_time 或 datetime.datetime), str 常用的: float --> struct tuple: time.localtime( float ) struct time t ...
分类:
编程语言 时间:
2017-07-25 11:18:46
阅读次数:
243
一、对象此处所说对象是指RADOS对象;跟RadosGW的S3或者Swift接口的对象存储要区分开。对象是数据存储的基本单元,一个对象默认大小4MB。对象由三个部分组成:对象标志(ID):唯一标识对象对象数据:本地文件系统中对应一个文件,对象的数据就保存在文件中对象元数据:以键值对..
分类:
其他好文 时间:
2017-07-21 15:32:40
阅读次数:
182
Ceph学习笔记之二RADOS一、RADOS架构在RADOS架构中主要包含2个部分组件:1、MON(Monitor)由少量的Monitor节点构成的强耦合,小规模集群;负责管理ClusterMap。2、OSD(ObjectStorageDevice)由数量可变的大规模磁盘设备组成的集群,负责存储所有Object数据。二、Monitor详解..
分类:
其他好文 时间:
2017-07-20 14:12:59
阅读次数:
227
安装CentOS7系统安装步骤略过拓扑连接:一、安装前准备工作1、修改主机名;将主机名更改为上图中对应的主机名。[root@localhost~]#vim/etc/hostname2、更新主机上的hosts文件,将主机名与如下IP进行解析。192.168.100.128ceph-node1192.168.100.129ceph-node2192.168.100.130ce..
分类:
其他好文 时间:
2017-07-18 10:03:02
阅读次数:
303