Ceph实战(一)-分布式存储介绍与原理架构概述

时间:2024-10-05 13:33:31

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

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

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

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

CephFS:全称 Ceph File System,是 Ceph 对外提供的文件系统服务。

五、块存储


典型设备:

磁盘阵列,硬盘

主要是将裸磁盘空间映射给主机使用的。

优点:

a. 通过 Raid 与 LVM 等手段,对数据提供了保护。

b. 多块廉价的硬盘组合起来,提高容量。

c. 多块磁盘组合出来的逻辑盘,提升读写效率。

缺点:

a. 采用 SAN 架构组网时,光纤交换机,造价成本高。

b. 主机之间无法共享数据。

使用场景:

a. docker 容器、虚拟机磁盘存储分配。

b. 日志存储。

c. 文件存储。

d. …

六、文件存储


典型设备:

FTP、NFS 服务器

为了克服块存储文件无法共享的问题,所以有了文件存储。

在服务器上架设 FTP 与 NFS 服务,就是文件存储。

优点:

a. 造价低,随便一台机器就可以了。

b. 方便文件共享。

缺点:

a. 读写速率低。

b. 传输速率慢。

使用场景:

a. 日志存储。

b. 有目录结构的文件存储。

c. …

七、对象存储


典型设备:

内置大容量硬盘的分布式服务器(swift, s3)

多台服务器内置大容量硬盘,安装上对象存储管理软件,对外提供读写访问功能。

优点:

a. 具备块存储的读写高速。

b. 具备文件存储的共享等特性。

使用场景:

(适合更新变动较少的数据)

a. 图片存储。

b. 视频存储。

c. …

八、Ceph Pool 和 PG 分布情况


640?wx_fmt=png

说明:

a. pool 是 ceph 存储数据时的逻辑分区,它起到 namespace 的作用。

b. 每个 pool 包含一定数量(可配置)的 PG。

c. Java开源项目【/public/P7/Java/git】 PG 里的对象被映射到不同的 OSD 上。

d. pool 是分布到整个集群的。

e. pool 可以做故障隔离域,根据不同的用户场景不一进行隔离。

九、Ceph 数据扩容 PG 分布


场景 《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》开源 数据迁移流程:

a. 现状3个 OSD, 4个 PG

总结

无论是哪家公司,都很重视高并发高可用的技术,重视基础,重视JVM。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。

最后我整理了一些面试真题资料,技术知识点剖析教程,还有和广大同仁一起交流学习共同进步,还有一些职业经验的分享。

面试了阿里,滴滴,网易,蚂蚁,最终有幸去了网易【面试题分享】

去面试,不利于自己的发挥。同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,是不是能真的得到锻炼。其实我写了这么多,只是我自己的总结,并不一定适用于所有人,相信经过一些面试,大家都会有这些感触。

最后我整理了一些面试真题资料,技术知识点剖析教程,还有和广大同仁一起交流学习共同进步,还有一些职业经验的分享。

[外链图片转存中…(img-K9ZLnWSB-1650517450509)]