ceph架构及 IO流程

CEPH是由多个节点构成的集群,它具有良好的可扩展性和可靠性。节点之间相互通信以达到:

存储和检索数据

数据复制

监控集群的健康状况

保证数据的完整性

检测故障并恢复

基本架构如下图:

分布式对象存储系统RADOS是CEPH最为关键的技术,主要由OSD和Monitor组成。

CEPH是一个完全无中心架构的计算模式的存储系统。client通过设备映射关系计算出其写入数据的位置,这样client可以直接与存储节点通信,从而避免中心节点的性能瓶颈。很厉害的样子,身为写IO,感觉我只需要跟OSD打交道了。

CEPH也是一个拥有雄心壮志的存储系统,同时支持块、文件和对象三类存储。本次client准备将CEPH作为块存储使用。

在发起写IO之前,client做了很多工作。同其他系统类似,想要跟CEPH集群通信,首先需要得到认证。拿到接头暗号之后,就可以创建映像和将映像映射为块存储并使用了。

Client写数据之前已经获取了集群map信息,并将我解体......我被切分成多个object(如果我是大IO), 每个object都有一个唯一的object ID。然后计算寻址每个object的存储位置:object根据Hash被映射到不同的PG,然后又根据CRUSH算法找出存储object的一组OSD的Primary OSD。

接着Client直接和Primary OSD进程通信并发起写入操作。然后由Primary OSD写到Secondary OSD和Tertiary OSD(如果配置为3副本)。等他们都写完之后,再由Primary OSD给主机打个招呼知会一下。

由于我被切分成多个object, 多个object可以并行发到多OSD。等所有object都操作完成之后, 我完成了使命。

以上是一个典型写IO对于写流程的简单描述。

相关推荐
Brandon汐2 天前
从0开始搭建一主两节点k8s集群对接Ceph集群
ceph·容器·kubernetes
泡沫·5 天前
CEPH的基本认识
ceph
2301_767902646 天前
ceph分布式存储(三)
分布式·ceph
2301_767902647 天前
ceph分布式存储(一)
分布式·ceph
2301_767902647 天前
ceph分布式存储(二)
分布式·ceph
FJW0208149 天前
cephadm部署ceph集群以及k8s对接
ceph·容器·kubernetes
韭菜张师傅10 天前
Ceph RBD 命令详解
ceph
韭菜张师傅11 天前
Ceph FS 命令详解
ceph
韭菜张师傅11 天前
Ceph MDS 命令详解
网络·ceph
lpruoyu11 天前
【云原生】Kubernetes平台存储系统搭建_CRI、CNI、CSI
ceph·云原生·容器·kubernetes