CEPH概述及实验(CEPH部署及群集搭建+节点扩容+数据恢复)

这篇博客详细介绍了CEPH存储系统,包括其概述、基础架构、组件、客户端和存储过程。实验部分涵盖了CEPH的环境部署,如群集搭建、节点扩容和数据恢复,提供了详细的步骤和配置说明。
摘要由CSDN通过智能技术生成

前言:CEPH是一个开源的项目,它是软件定义的、同一的存储解决方案。CEPH是一个可大规模扩展、高性能并且无单点故障的分布式存储系统。从一开始它就运行在通用的商用的硬件上,具有高度的可伸缩性,容量可扩展至EB界别,甚至更大

一、概述

1.简述

  • ceph 是一种开源存储软件。底层实现了对象存储,并以此为基础对外提供对象存储接口、块存储接口、文件级存储接口
  • CEPH版本:Nautilus
  • 官方架构图:
    在这里插入图片描述

1)相关名词解释

  • RADOS:Reliable Autonomic Distributed Object Store(可靠的,自主的,分布式的对象存储)
  • 在 ceph 中这个名词经常出现,有时会以 R 表示 RADOS。实际上这个词仅仅是对 ceph 的一个修饰词,并不代表 ceph 的组件什么的。粗暴的认为, RADOS = ceph 对象存储集群 即可
  • RGW、RBD、CEPH FS: 这三个就是 ceph clients
    • RGW:对象存储网关,也就是对象存储接口
    • RBD:块设备,也就是块存储接口
    • CEPH FS:ceph 文件系统,也就是文件级存储接口

2. CEPH基础架构

  • CEPH组件主要分分为两部分:
    • Ceph Node:构成Ceph集群的基础组件
    • Ceph Client:对外提供多种方式使用Ceph存储的组件

3. CEPH基础组件

  • 此部分介绍构成Ceph集群的基础组件,其中包含OSD、Manager、MSD、Monitor
    • OSD(ceph-osd):object storage daemon,对象存储进程。ceph 管理物理硬盘时,引入了OSD概念,每一块盘都会针对的运行一个OSD进程。换句话说,ceph 集群通过管理 OSD 来管理物理硬盘。OSD 一般功能为:存储数据、维护数据副本、数据恢复、数据再平衡以及对ceph monitor组件提供相关监控信息
    • Manager(ceph-mgr):用于收集ceph集群状态、运行指标,比如存储利用率、当前性能指标和系统负载。对外提供 ceph dashboard(ceph ui)和 resetful api。Manager组件开启高可用时,至少2个
    • MDS(ceph-mds):Metadata server,元数据服务。为ceph 文件系统提供元数据服务(ceph 对象存储和块存储不需要MDS)。为 posix 文件系统用户提供性能良好的基础命令(ls,find等)
    • Monitor(ceph-mon):维护集群的状态,包含monitor组件信息,manger 组件信息,osd组件信息,mds组件信息,crush 算法信息。还负责ceph集群的身份验证功能,client在连接ceph集群时通过此组件进行验证。Monitor组件开启高可用时,至少3个

4. Ceph Clients

  • 此部分介绍 ceph 对外提供各种功能的组件。其中包含:Block Device、Object Storage、Filesystem
    • Block Device:块存储设备,RBD
    • Object Storage: 对象存储,RGW。对外可提供 swift 、s3 接口类型restful api
    • Filesystem:文件系统,CephFS。提供一个兼容POSIX的文件系统

5.CEPH存储过程

  • 前面介绍Ceph的一些组件及对外提供的功能,这部分主要介绍Ceph的逻辑存储,这部分主要介绍Ceph的存储逻辑。在对象存储中,一切都是扁平化的,并且存储的最小单元为对象(OBJ)
    在这里插入图片描述
  • ceph 在对象存储的基础上提供了更加高级的思想。当对象数量达到了百万级以上,原生的对象存储在索引对象时消耗的性能非常大。ceph因此引入了 placement group (pg)的概念。一个PG就是一组对象的集合
    在这里插入图片描述
  • obj和pg之间的映射由ceph client计算得出
  • 讨论 pg 时,不得不提的另外一个名词:pgp。pgp决定了pg和osd 之间的映射关系。一般将 pgp_num 设置成和 pg_num 一样大小。这里还有一个名词需要提一下,在ceph中会经常见到crush算法。简单来说,crush 算法就是指 ceph 中数据如何存储、读取的过程。由于ceph集群面对许多的独立项目,因此ceph还引入了ceph pool的概念用于划分不同的项目
  • ceph pool 是对 ceph 对象的逻辑划分,并不是物理划分
  • pg和ceph pool的区别:
    • pg对于用户来说是透明的,只是底层的一种优化方案
    • ceph pool对于用户来说,就像mysql中的database
  • 像大多数集群软件一样,ceph 也提供了缓存的概念。称之为 Cache Tier(缓存层,在具体使用时有时会称之为缓存池)。缓存池对用户来说是透明的,因此不会改变用户的原有使用逻辑
  • 在没有缓存池时,ceph client 直接指向存储池。在添加缓存池后,ceph client 指向缓存池,缓存池再指向存储池

二、实验

1.环境介绍

  • 实验软件:VMware软件
  • 系统配置:
    在这里插入图片描述
  • 分配:
    在这里插入图片描述

2.环境部署

1)主机名,网卡配置及hosts文件

  • 三个节点配置主机名
[root@localhost ~]# hostnamectl set-hostname ceph01
[root@localhost ~]# hostnamectl set-hostname ceph02
[root@localhost ~]# hostnamectl set-hostname ceph03
  • 三个节点配置网卡,过程很简单,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值