Ceph是一个开源的分布式存储系统,它提供了高性能、高可靠性以及高扩展性。Ceph的设计理念是基于对象存储模型,通过将数据分割成多个对象并存储在不同的节点上,实现数据的分布式存储和访问。

Ceph的核心组件包括:

  1. RADOS(Reliable Autonomic Distributed Object Store):RADOS是Ceph的底层存储系统,它负责数据的存储和复制。数据被分割成对象,并以对象的方式存储在不同的存储节点上。每个对象都有一个唯一的标识符,称为对象ID。

  2. OSD(Object Storage Device):OSD是Ceph中的存储节点,负责管理和存储对象。每个OSD都有自己的存储空间,并通过网络与其他OSD节点通信。OSD之间通过复制机制来实现数据的冗余备份,提供高可靠性和容错能力。

  3. MON(Monitor):MON是Ceph中的监视器节点,负责监控集群中的状态信息和元数据。每个MON节点维护着集群的整体拓扑结构和状态信息,并通过选举机制来选择主监视器。

  4. MDS(Metadata Server):MDS是Ceph中的元数据服务器,负责存储和管理文件系统的元数据。MDS节点维护着文件系统的目录结构、文件权限等信息,支持文件的读写操作。

Ceph的工作流程如下:

  1. 客户端向Ceph集群发送请求,请求可以是读取、写入或删除数据。

  2. 当客户端发送写入请求时,数据会被分割成多个对象,并通过CRUSH算法确定存储位置。对象会被复制到不同的OSD节点上,以提供冗余备份。

  3. 当客户端发送读取请求时,Ceph会根据对象的ID查询元数据服务器获取对象的存储位置。然后,客户端可以直接从存储节点读取对象数据。

  4. 如果一个OSD节点发生故障,Ceph会自动从其他备份节点恢复数据,保证数据的可靠性和可用性。

总结起来,Ceph通过将数据分割成对象并存储在不同的节点上,以实现数据的分布式存储和访问。通过复制机制、监视器节点和元数据服务器等组件,提供高性能、高可靠性和高扩展性的分布式存储解决方案

ceph集群异常问题实战示例:

工作中进行ceph分布式存储维护时会发生pgs inconsistent异常,原因分析:

1、磁盘故障导致

2、网络故障导致

3、集群容量不足导致

处理方式:

  1. ceph health detail 从打印的信息中找到不一致的pg编号
  2. ceph pg repair 4.395 执行指令修复
posted on 2023-08-21 16:32  Albert_M  阅读(138)  评论(0编辑  收藏  举报