Ceph介绍

简介

什么是ceph?

Ceph在一个统一的系统中独特地提供对象、块和文件存储。Ceph 高度可靠、易于管理且免费。Ceph 的强大功能可以改变您公司的 IT 基础架构和管理大量数据的能力。Ceph 提供了非凡的可扩展性——数以千计的客户端访问 PB 到 EB 的数据。ceph存储集群相互通信以动态复制和重新分配数据。

为什么使用ceph?

目前众多云厂商都在使用ceph,应用广泛。如:华为、阿里、腾讯等等。目前火热的云技术openstack、kubernetes都支持后端整合ceph,从而提高数据的可用性、扩展性、容错等能力。

一个 Ceph 存储集群至少需要一个Ceph Monitor(监视器)、Ceph Manager(管理) 和 Ceph OSD(对象存储守护进程)

在这里插入图片描述

  • Monitors

Ceph Monitor ( ceph-mon) 维护集群状态的映射,包括监视器映射、管理器映射、OSD 映射、MDS 映射和 CRUSH 映射。这些映射是 Ceph 守护进程相互协调所需的关键集群状态。监视器还负责管理守护进程和客户端之间的身份验证。冗余和高可用性通常需要至少三个监视器。

  • Managers

Ceph Manager守护进程 ( ceph-mgr) 负责跟踪运行时指标和 Ceph 集群的当前状态,包括存储利用率、当前性能指标和系统负载。高可用性通常需要至少两个管理器。

  • Ceph OSD

一个Ceph OSD(ceph-osd)存储数据、处理数据复制、恢复、重新平衡,并通过检查其他 Ceph OSD 守护进程的心跳来向 Ceph 监视器和管理器提供一些监视信息。冗余和高可用性通常需要至少三个 Ceph OSD。

  • MDS

Ceph 元数据服务器(MDS ceph-mds) 代表Ceph 文件系统存储元数据(即 Ceph 块设备和 Ceph 对象存储不使用 MDS)。Ceph 元数据服务器允许 POSIX 文件系统用户执行基本命令(如 ls、find等),而不会给 Ceph 存储集群带来巨大负担。

Ceph 将数据作为对象存储在逻辑存储池中。使用 CRUSH算法,Ceph 计算出哪个归置组应该包含该对象,并进一步计算出哪个 Ceph OSD Daemon 应该存储该归置组。CRUSH 算法使 Ceph 存储集群能够动态扩展、重新平衡和恢复。

在这里插入图片描述

LIBRADOS: 一个允许应用程序直接访问 RADO 的库,支持 C、C++、Java、Python、Ruby 和 PHP

RADOSGW(对象网关): 基于存储桶的 REST网关,兼容s3和Swift

RBD(块存储): 一个负责任的,完全-分布式块设备,使用Linux内核cliont和QEMU/KVM驱动程序

CEPHFS(文件存储): 符合POSIX标准的分发文件系统,具有Linux内核客户端和对FUSE的支持

RADOS: 由自我修复、自我管理、智能存储节点组成的可靠、自主、分布式对象存储

POOL、PG简介

1、POOLS: 存储池,它们是用于存储对象的逻辑分区。

Ceph 客户端从 Ceph 监视器检索集群映射,并将对象写入池中。池size或副本的数量、CRUSH 规则和归置组的数量决定了 Ceph 将如何放置数据。
池至少设置以下参数:

  • 对象的所有权/访问权
  • 归置组的数量
  • 要使用的 CRUSH 规则

2、PG:每个池都有许多归置组。CRUSH 将 PG 动态映射到 OSD。
当 Ceph 客户端存储对象时,CRUSH 会将每个对象映射到一个归置组。

使用集群映射的副本和 CRUSH 算法,客户端可以准确计算在读取或写入特定对象时使用哪个 OSD。

在这里插入图片描述
Ceph对于集群内PG的总个数有如下公式:

(OSD个数\*100)/ 副本数 = PGs

以上公式计算得出结果后,再取一个与之较大的2的幂的值,便可作为集群的总PG数。例如,一个配置了200个OSD且副本数为3的集群,计算过程如下:

(200\*100)/3 = 6667. Nearest power of 2 : 8192

得到8192后,可以根据集群内所需建立的POOL的个数及用途等要素,进行PG划分。

l若少于5个OSD, 设置pg_num为128。

l5~10个OSD,设置pg_num为512。

l10~50个OSD,设置pg_num为4096。</

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值