Ceph实战(一):Ceph实战专栏说明以及Ceph介绍

简介: Ceph实战(一):Ceph实战专栏说明以及Ceph介绍

专栏说明

本专栏从实战的角度出发,首先会介绍Ceph集群的部署以及Api接口的使用,并且会将常见的部署问题整理成册,极大的减少读者部署Ceph集群时的学习成本。接着会介绍Ceph集群的核心知识点,包括核心组件的介绍,组件之间的通信原理。最后,会提供一个一键部署集群的脚本。部署Ceph集群,订阅本专栏,没错的。!!!!同时,订阅本专栏我会1V1的帮您解决部署和使用ceph时碰到的问题。

Ceph是什么&能做什么

Ceph是一个分布式文件存储系统,其统一了三种存储方式:块设备存储,CephFS  文件系统,对象存储。其分布式体现在其可以动态的扩展,其性能优秀,可扩展性好。说完了Ceph的概念,接下来我们来说说Ceph能做什么?我们可以把文件想象成粮食,那么Ceph就是一个粮仓,这个粮仓可以通过三种不同的方式来存储粮食。这个粮仓可以容纳很多很多的仓库,存放很多很多的粮食。

Ceph有哪些特点

Ceph的特点很多,主要有如下几个方面的特点:

  1. 其摒弃传统的集中式存储元数据寻址的方式,采用CRUSH算法,数据分布均衡,没有单点故障。举个栗子:就像上面的粮仓和粮食的说明,现在张三来存100斤粮食,管理员将其存放在A仓库的B区,然后在小本本记下这个地址,这里的小本本就是元数据。当张三来取粮食的时候,管理员拿出小本本查看粮食的存放位置,然后找到粮食。是不是挺好。但是大家想想,如果这个小本本丢了,会怎么样?   是不是张三的粮食就找不到了。这样就存在一个重大的隐患。这个隐患的学名叫做单点故障,单点故障的意思是,某一个节点出现故障将会导致集群整个不可用。当然,我们也可以通过用多个小本本同时记录,规避一台元数据服务宕机导致的单点故障。但是,这种方式无疑增加了元数据的维护成本。而Ceph则完全摒弃了元数据寻址的方式,直接通过CRUSH算法的方式来计算文件的位置,是数据可以均衡分布同时也避免了单点故障的问题。
  2. 考虑了容灾域的隔离,能够实现各类负载副本放置规则。同样的还是以粮仓为例子。当一个仓库着火了,我们可以通过隔断门将其与其他正常的仓库隔离。避免影响到其他正常的仓库。
  3. 能够支持上千个存储节点的规模,支持TB和PB级别的数据。这句话的意思就更好理解了,一句话,就是Ceph的能存储的数据特别多,规模也很大。
  4. 扩展灵活,就是说支持动态的增加存储节点。换言之就是可以客户端无感知的情况下增加存储节点。不影响现有的业务。
  5. 副本数可以灵活控制,默认情况下Ceph的副本数是3个,我们可以在配置文件中更改副本的数量。

Ceph有何不同点

前面简单的介绍了Ceph的概念和特点,下面我们接着来看看Ceph与其他的分布式文件存储系统的区别,这里比较的fastDFS。

上图展示了Ceph与FastDFS的一些区别,概括来说主要是如下几个方面的区别:

1. 数据存储方式不同:FastDFS只能以文件的方式存储到文件服务器中。而Ceph可以通过块设备,文件系统或者对象存储三种方式来存储文件,存储的类型大有不同。

2. 存储逻辑不同:FastDFS是按照组来存储文件,同一个组内所有的storage server可以相互通信,同一个组内各个storage  server地位相等,存储的文件相同,不同组的storage  server不能相互通信。Ceph则没有组的概念,同一个集群内所有的OSDs均可以相互通信,源OSDs与副本OSD的数据完全一样。

3. 文件名(FID)生成方式不同,当我们上传一个文件到FastDFS上时,FastDFS会生成FID,生成的规则是:

由源头storage server ip、创建时的时间戳、大小、文件的校验码和一个随机数进行hash计算后生成;

最后基于base64进行文本编码,转换为可打印字符;

groupID/MID/H1ID/H2ID/file_name

groupID:组编号

MID:存储路径(存储设备)编号

H1ID/H2ID:目录分层

file_name:文件名,不同于用户上传时使用文件名,而是由服务器生成hash文件名;

服务器IP、文件创建时的时间戳、文件大小、文件名和扩展名;

而Ceph不会帮我们生成唯一的文件名。

总结

本文首先介绍了Ceph的基本概念以及特点,最后将FastDFS和Ceph做了一个比较。希望读者朋友们通过本文可以对Ceph做一个基本的了解。

相关文章
|
6月前
|
存储 关系型数据库 网络安全
CEPH搭建
CEPH搭建
181 0
|
存储 固态存储 数据管理
Ceph 简介
Ceph 简介
382 0
|
存储 监控 网络安全
Ceph集群搭建篇
Ceph集群搭建篇
677 0
|
存储 Prometheus Kubernetes
实战篇:使用rook在k8s上搭建ceph集群
实战篇:使用rook在k8s上搭建ceph集群
955 0
|
存储 算法 对象存储