2024年最全分布式存储Ceph_千锋ceph(2)

Swift可以用以下用途:
图片、文档存储
长期保存的日志文件
存储媒体库(照片、音乐、视频等)
总结:Swift适合用来存储大量的、长期的、需要备份的对象。


#### **公有云对象存储**



公有云大都有对象存储

Amazon类似产品就是S3: http://aws.amazon.com/s3;
微软类似产品Azure Bolb:http://azure.microsoft.com/en-us/documentation/articles/storage-dotnet-how-to-use-blobs/;
阿里类似的有OSS:https://www.aliyun.com/product/oss/;

阿里云对象存储OSS存储类型(Storage Class)
提供标准、低频访问、归档三种存储类型

标准存储类型提供高可靠、高可用、高性能的对象存储服务,能够支持频繁的数据访问;
低频访问存储类型适合长期保存不经常访问的数据(平均每月访问频率 1 到 2 次),存储单价低于标准类型;
归档存储类型适合需要长期保存(建议半年以上)的归档数据,在三种存储类型中单价最低。

应用场景

图片和音视频等应用的海量存储
OSS可用于图片、音视频、日志等海量文件的存储。


#### **GlusterFS分布式文件系统**


![](https://img-blog.csdnimg.cn/img_convert/64d09075bfc259b00fa472aafc5c5510.png)


GlusterFS(GNU ClusterFile System)是一种全对称的开源分布式文件系统,所谓全对称是指GlusterFS采用弹性哈希算法,没有中心节点,所有节点全部平等。GlusterFS配置方便,稳定性好,可轻松达到PB级容量,数千个节点,2011年被红帽收购。



#PB级容量 高可用性 基于文件系统级别共享 分布式 去中心化

glusgerfs存储卷的类型

#基本类型:条带,复制,哈希。

#各种卷的整理

1.分布卷:存储数据时,将文件随机存储到glusterfs机器上。

优点:存储数据时,读取速度快
缺点:一个birck坏掉,文件就会丢失

2.复制卷:存储数据时,所有文件分别存储到每台glusterfs机器上。

优点:对文件进行的多次备份一个brick坏掉,文件不会丢失,其他机器的brick上面有备份
缺点:占用资源

3.条带卷:存数据时,一个文件分开存到每台glusterfs机器上

优点:对大文件,读写速度快
缺点:一个brick坏掉,文件就会坏掉


### **Ceph详解**


#### **Ceph简介**


Ceph使用C++语言开发,Sage Weil(Ceph论文发表者)于2011年创立了以Inktank公司主导Ceph的开发和社区维护。2014年Redhat收购inktank公司,并发布Inktank Ceph企业版(ICE)软件,业务场景聚焦云、备份和归档,支持对象存储和块存储以及文件系统存储应用。出现Ceph开源社区版本和Redhat企业版。


Ceph主要设计的初衷是变成一个可避免单节点故障的统一的分布式文件系统,提供较好的性能、可靠性和PB级别的扩展能力,而且是一种开源自由软件,许多融合的分布式文件系统都是基于Ceph开发的。


#### **Ceph特性**



高扩展性:使用普通x86服务器,支持10~1000台服务器,支持TB到EB级的扩展。
高可靠性:没有单点故障,多数据副本,自动管理,自动修复。
高 性 能:数据分布均衡。

#可用于对象存储,块设备存储和文件系统存储


#### **Ceph架构**


![](https://img-blog.csdnimg.cn/img_convert/03347d2644437dd79428ee3d208ce71a.png)


#### **基础存储系统RADOS**



Reliable, Autonomic, Distributed Object Store,即可靠的、自动化的、分布式的对象存储。所有存储在Ceph系统中的用户数据事实上最终都是由这一层来存储的。Ceph的高可靠、高可扩展、高性能、高自动化等等特性本质上也是由这一层所提供的。


#### **基础库librados**



这一层的功能是对RADOS进行抽象和封装,并向上层提供API,以便直接基于RADOS进行应用开发。由于RADOS是一个对象存储系统,因此,librados实现的API也只是针对对象存储功能的。

RADOS是协议很难直接访问,因此上层的RBD、RGW和CephFS都是通过librados访问的,目前提供PHP、Ruby、Java、Python、C和C++支持。


#### **高层应用接口**



radosgw: 对象网关接口(对象存储)
rbd: 块存储
cephfs:文件系统存储
其作用是在librados库的基础上提供抽象层次更高、更便于应用或客户端使用的上层接口。


#### **Ceph的基本组件**


![](https://img-blog.csdnimg.cn/img_convert/7ec2fab76d41b8e3f4e3f12df64452a4.png)


Ceph主要有三个基本进程


**Osd**



OSD全称Object Storage Device,也就是负责响应客户端请求返回具体数据的进程。一个Ceph集群一般都有很多个OSD。用于集群中所有数据与对象的存储。处理集群数据的复制、恢复、回填、再均衡。并向其他osd守护进程发送心跳,然后向Mon提供一些监控信息。
当Ceph存储集群设定数据有两个副本时(一共存两份),则至少需要两个OSD守护进程即两个OSD节点,集群才能达到active+clean状态.


**MDS**



MDS全称Ceph Metadata Server,是CephFS服务依赖的元数据服务。为Ceph文件系统提供元数据计算、缓存与同步(也就是说,Ceph 块设备和 Ceph 对象存储不使用MDS )。在ceph中,元数据也是存储在osd节点中的,mds类似于元数据的代理缓存服务器。只有需要使用CEPHFS时,才需要配置MDS节点。


**Monitor**



监控整个集群的状态,保证集群数据的一致性。


**Manager**(ceph-mgr)



用于收集ceph集群状态、运行指标,比如存储利用率、当前性能指标和系统负载。对外提供 ceph dashboard(ceph ui)。


**Ceph 结构包含两个部分**



ceph client:访问 ceph 底层服务或组件,对外提供各种接口。比如:对象存储接口、块存储接口、文件级存储接口。

ceph node:ceph 底层服务提供端,也就是 ceph 存储集群。


#### **Ceph组件及概念介绍**


Object



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


PG



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


CRUSH



CRUSH是Ceph使用的数据分布算法,类似一致性哈希,让数据分配到预期的地方。


RBD



RBD全称RADOS block device,是Ceph对外提供的块设备服务


RGW



RGW全称RADOS gateway,是Ceph对外提供的对象存储服务,接口与S3和Swift兼容。


CephFS 文件存储



CephFS全称Ceph File System,是Ceph对外提供的分布式文件存储服务。


Ceph对象存储



使用Ceph对象网关守护进程(radosgw),它是用于与Ceph存储群集进行交互的HTTP服务器。由于它提供与OpenStack Swift和Amazon S3兼容的接口,Ceph对象网关可以将数据存储在用于存储来自Ceph文件系统客户端或Ceph块设备客户端的数据的同一Ceph存储群集中。S3和Swift API共享一个公共的名称空间,因此您可以使用一个API编写数据,而使用另一个API检索数据。


![](https://img-blog.csdnimg.cn/img_convert/ac56d386e81deb4e89bd89bfd9a7b85c.png)


CEPH 块存储



Ceph 块设备是精简配置的、大小可调且将数据条带化存储到集群内的多个 OSD 。 Ceph 块设备利用 RADOS 的多种能力,如快照、复制和一致性。 Ceph 的 RADOS 块设备( RBD )使用内核模块或 librbd 库与 OSD 交互。


![](https://img-blog.csdnimg.cn/img_convert/ae0644c24e4a7873cccd2205e4dbd514.png)


#### **Ceph数据的存储过程**


![](https://img-blog.csdnimg.cn/img_convert/010022044dcfe510d2de341c3ecf1406.png)



无论使用哪种存储方式(对象、块、挂载),存储的数据都会被切分成对象(Objects)。Objects size大小可以由管理员调整,通常为2M或4M。每个对象都会有一个唯一的OID,由ino与ono生成,ino即是文件的File ID,用于在全局唯一标示每一个文件,而ono则是分片的编号。比如:一个文件FileID为A,它被切成了两个对象,一个对象编号0,另一个编号1,那么这两个文件的oid则为A0与A1。Oid的好处是可以唯一标示每个不同的对象,并且存储了对象与文件的从属关系。由于ceph的所有数据都虚拟成了整齐划一的对象,所以在读写时效率都会比较高。

但是对象并不会直接存储进OSD中,因为对象的size很小,在一个大规模的集群中可能有几百到几千万个对象。这么多对象光是遍历寻址,速度都是很缓慢的;并且如果将对象直接通过某种固定映射的哈希算法映射到osd上,当这个osd损坏时,对象无法自动迁移至其他osd上面。为了解决这些问题,ceph引入了归置组的概念,即PG。

PG是一个逻辑概念,我们linux系统中可以直接看到对象,但是无法直接看到PG。它在数据寻址时类似于数据库中的索引:每个对象都会固定映射进一个PG中,所以当我们要寻找一个对象时,只需要先找到对象所属的PG,然后遍历这个PG就可以了,无需遍历所有对象。而且在数据迁移时,也是以PG作为基本单位进行迁移,ceph不会直接操作对象。

对象时如何映射进PG的?还记得OID么?首先使用静态hash函数对OID做hash取出特征码,用特征码与PG的数量去模,得到的序号则是PGID。
`最后PG会根据管理员设置的副本数量进行复制,然后通过crush算法存储到不同的OSD节点上(其实是把PG中的所有

**先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7**

**深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!**

**因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。**
![img](https://img-blog.csdnimg.cn/img_convert/e6af013ab54d867d5e66bce0704c90ea.png)
![img](https://img-blog.csdnimg.cn/img_convert/22ed1a9a6c1b0d94f7b9975114e4a065.png)
![img](https://img-blog.csdnimg.cn/img_convert/07d5a440ad2c86db22342990aa58ae51.png)
![img](https://img-blog.csdnimg.cn/img_convert/c3576350d22571095c3f390357046b12.png)
![img](https://img-blog.csdnimg.cn/img_convert/8934153ce21be98b1a635696ac0492ef.png)
![img](https://img-blog.csdnimg.cn/img_convert/ed97ffcb2a3b8a4f59932ddc54fd7843.png)

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化资料的朋友,可以点击这里获取](https://bbs.csdn.net/topics/618540462)**
mg-lZ5erBKs-1714517969638)]
[外链图片转存中...(img-CwVLYm2q-1714517969639)]

**既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!**

**由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新**

**[需要这份系统化资料的朋友,可以点击这里获取](https://bbs.csdn.net/topics/618540462)**
  • 25
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值