ceph文件系统

ceph文件系统

1.概述

        高扩展,分布式的存储文件系统,旨在提供高性能,高可靠性和高可用的对象存储,块存储,文件系统的存储。使用分布式的算法保证数据的高可用和一致性。

2.ceph的架构

(1)ceph minitor

        MON: 负责存储和维护整个ceph的状态信息,主要是集群的成员信息,存储状态和配置数据等等。确保整个集群的一致性,处理选举和状态的更新,集群内部成员的通信。

        ceph当中的mon至少要有三个节点,确保高可用。

(2)ceph osd

        osd(object storage daemon):ceph存储系统的核心组件,负责存储数据,处理读写请求,数据复制,数据恢复。

  • 每个osd节点管理一个或者多个硬盘
  • 存储实际的数据和副本
  • 处理对象级别的数据操作,读,写,删
  • 在节点故障时,进行数据恢复

(3)ceph mds

        mds(metadata server):对ceph的文件系统的元数据进行管理,文件和目录的结构,文件的权限,mds提供元数据服务。

  • 管理集群的元数据信息
  • 处理客户端对文件系统的请求
  • ceph集群中,至少要有一个mds节点

(4)存储池和pg

        存储池(pool):ceph存储数据对象的容器,每个存储池可以定义不同的数据冗余的策略(副本数,默认都是3)crush映射规则等等。

  • 存储池是一个逻辑上的概念
  • 管理和组织数据的对象
  • 定义数据的冗余方式,主要靠副本(一般3个副本)
  • 配置crush映射,数据如何在osd之间分布

pg: placement group

        pg也是ceph当中的一个逻辑概念,用于数据分布的基本单位,创建存储池时,定义好pg的数量。

        pg是由一组对象(object)组成的逻辑集合,每个对象都会映射到一个或者多个pg。

        数据分布:数据写入集群,会映射到储存池中的一个pg,crush算法决定将pg分布到哪些osd。在ceph当中,pg和osd的数量是相关的,设置一个合理的pg数,有助于提高集群的性能

3个osd为例

ps数量= (osd数量*100)/存储池的副本数

300/3=100

pg的数量是2的幂值 128 256(取大不取小)

pg的数量一般是osd数量的一百倍,左右。

(5)存储池,pg和osd之间的关系

  • 存储池(pool) 管理数据的基本单位,组成和配置数据的存储和冗余方式
  • pg:存储池中的数据被划分成多个pg,每个pg是数据分布的最小单位,pg负责对象存储的位置,通过crush的算法把数据分布到osd
  • osd是负责存储的数据的基于物理设备的虚拟概念

3.crush算法

        crush算法是ceph自带的一种算法。数据分布的算法,把对象分配到集群的osd节点当中。

        crush算法使用hash算法来决定数据的存储位置,确保数据是均匀的分布在集群的osd上。        

4.实验 

集群的架构

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值