Ceph----RBD块存储的使用:详细实践过程实战版

RBD 方式的 工作 流程:

1、客户端创建一个pool,并指定pg数量,创建 rbd 设备并map 到文件系统;
2、用户写入数据,ceph进行对数据切块,每个块的大小默认为 4M,每个 块名字是 object+序号;
3、将每个object通过pg进行 副本位置的分配 ;
4、pg 根据 crush算法 会寻找 3个osd,把这object分别保存在这3个osd上 存储;
5、osd实际把硬盘格式化为xfs文件系统,object存储在这个文件系统就相 当于存储了一个文件rbd0.object1.file。

直接开始实验

继续上一篇文章ceph分布式集群部署好之后,开始使用ceph的rbd块存储
现在查看上个文章刚创建好的ceph分布式集群

[root@server153 ~]# ceph -scluster:id:     e86b8687-5af1-4c9e-a816-c1b0c0855349health: HEALTH_OKservices:mon: 3 daemons, quorum server153,server154,server155 (age 5h)mgr: server153(active, since 23h), standbys: server154, server155osd: 6 osds: 6 up (since 23h), 6 in (since 23h)data:pools:   0 pools, 0 pgsobjects: 0 objects, 0 Busage:   6.0 GiB used, 114 GiB / 120 GiB availpgs:     

在这里插入图片描述
然后我们现在将这个分布式集群用起来,先创建一个存储池

[root@server153 ceph-cluster]# ceph  osd pool create  rbd-pool 256 256 
pool 'rbd-pool' created

查看我们创建的pool存储池的详细信息以及副本数

[root@server153 ceph-cluster]# ceph osd pool ls
rbd-pool
[root@server153 ceph-cluster]# ceph osd pool ls detail
pool 1 'rbd-pool' replicated size 3 min_size 2 crush_rule 0 object_hash rjenkins pg_num 256 pgp_num 256 autoscale_mode warn last_change 28 flags hashpspool stripe_width 0
[root@server153 ceph-cluster]# ceph osd pool get rbd-pool size
size: 3

将这个存储池指定用于rbd类型的存储

[root@server153 ceph-cluster]# ceph osd pool  application enable rbd-pool  rbd
enabled application 'rbd' on pool 'rbd-pool'

然后在这个存储池里创建一个10G的块设备

[root@server153 ceph-cluster]# rbd create --size 10240  rbd-pool/block1
[root@server153 ceph-cluster]# rbd ls rbd-pool
block1

查看这个block1块设备的详细情况

[root@server153 ceph-cluster]# rbd info rbd-pool/block1
rbd image 'block1':size 10 GiB in 2560 objectsorder 22 (4 MiB objects)snapshot_count: 0id: 117cfcb49bc4block_name_prefix: rbd_data.117cfcb49bc4format: 2features: layering, exclusive-lock, object-map, fast-diff, deep-flattenop_features: flags: create_timestamp: Sat Nov 25 19:54:09 2023access_timestamp: Sat Nov 25 19:54:09 2023modify_timestamp: Sat Nov 25 19:54:09 2023

比如155节点的磁盘快满了,我们在155节点上使用这个block1块设备来扩大磁盘存储
先查看155节点的磁盘情况

lsblk

在这里插入图片描述
然后映射块设备到本地,不过得先禁用掉些高级高级功能,不然就会出现如下报错

[root@server155 ~]# rbd map rbd-pool/block1
rbd: sysfs write failed
RBD image feature set mismatch. You can disable features unsupported by the kernel with "rbd feature disable rbd-pool/block1 object-map fast-diff deep-flatten".
In some cases useful info is found in syslog - try "dmesg | tail".
rbd: map failed: (6) No such device or address
[root@server155 ~]# rbd feature disable rbd-pool/block1 object-map fast-diff  deep-flatten
[root@server155 ~]# rbd map rbd-pool/block1
/dev/rbd0
[root@server155 ~]#

查看我们155节点磁盘的情况
在这里插入图片描述
而且看sdb和sdc,都是lvm的,rbd0也是lvm的,想必大家看到这已经明白了
没错,底层用的就是lvm,所以它能随意扩展,使用很灵活
磁盘都已经有了,怎么用相信大家都知道了
正常格式化然后挂载就可以了

[root@server155 ~]# mkfs.xfs /dev/rbd0
Discarding blocks...Done.
meta-data=/dev/rbd0              isize=512    agcount=16, agsize=163840 blks=                       sectsz=512   attr=2, projid32bit=1=                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25=                       sunit=1024   swidth=1024 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2=                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@server155 ~]# mount /dev/rbd /mnt/
mount:  /dev/rbd is not a block device
[root@server155 ~]# mount /dev0/rbd /mnt/
mount: special device /dev0/rbd does not exist
[root@server155 ~]# mount /dev/rbd0 /mnt/

在这里插入图片描述
可以看到我们的磁盘已经挂载完毕
ceph分布式存储的rbd块存储使用方法就是这样了
希望对大家有帮助

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/218855.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【智能算法】基于黄金正弦和混沌映射思想的改进减法优化器算法

减法优化器(Subtraction-Average-Based Optimizer,SABO)是2023年刚出的智能优化算法。目前知网中文期刊基本搜不到,并且可以遇见未来一年文章也很少。SABO算法原理简单,算上初始化粒子,总共不超过6个公式。…

居家适老化设计第三十一条---卫生间水龙头

以上产品图片均来源于淘宝 侵权联系删除 居家适老化中,水龙头是一个非常重要的设备。水龙头的选择应该考虑到老年人的特点和需求。首先,水龙头的操作应该简单方便,老年人手部灵活性可能不如年轻人,因此水龙头应该设计成易于转动和…

Arrays.asList() 与 Collections.singletonList()的恩怨情仇

1. 概述 列表是我们使用 Java 时常用的集合类型。 众所周知,我们可以轻松地用一行初始化一个List。例如,当我们想要初始化一个只有一个元素的List时,我们可以使用Arrays.asList()方法或Collections.singletonList()方法。 在本文中&#x…

Spring Boot整合RabbitMQ

一、简介 在Spring项目中,可以使用Spring-Rabbit去操作RabbitMQ 尤其是在spring boot项目中只需要引入对应的amqp启动器依赖即可,方便的使用RabbitTemplate发送消息,使用注解接收消息。 一般在开发过程中: 生产者工程&#xf…

【ceph】如何打印一个osd的op流程,排查osd在干什么

本站以分享各种运维经验和运维所需要的技能为主 《python零基础入门》:python零基础入门学习 《python运维脚本》: python运维脚本实践 《shell》:shell学习 《terraform》持续更新中:terraform_Aws学习零基础入门到最佳实战 《k8…

如何看待 2023 OPPO 开发者大会?潘塔纳尔进展如何?AndesGPT 有哪些亮点?

在2023年11月16日举行的OPPO开发者大会(ODC23)上,OPPO带来了全新ColorOS 14、全新互联网服务生态以及健康服务进展,这些新动态中有许多值得关注的地方。 1、全新ColorOS 14: 效率提升:ColorOS 14通过一系列…

【尚跑】2023宝鸡马拉松安全完赛,顺利PB达成

1、赛事背景 千年宝地,一马当先!10月15日7时30分,吉利银河2023宝鸡马拉松在宝鸡市行政中心广场鸣枪开跑。 不可忽视的是,这次赛事的卓越之处不仅在于规模和参与人数,还在于其精心的策划和细致入微的组织。为了确保每位…

java io 流,输入流和输出流;节点流和处理流;字节流和字符流

文章目录 java 中 IO 流分为几种?按照流的流向分,可以分为输入流和输出流;按照流的角色划分为节点流和处理流。IO流主要的分类方式有以下3种: java中的IO流也是工作中使用到比较频繁的一个内容,今天以这篇文章来了解它的概念和整…

WPS AI初体验

1、启动AI 2、输入需要创作的内容 3、创作的内容展示 当然,以下是一份经过润色后的年终总结目录: 一、引言 1. 总结的目的和意义 2. 总结的范畴和覆盖范围 3. 总结的编写原则和标准 二、公司概览 1. 公司简介 2. 公司历史与现状 3. 公司组织架构和团队介…

C#,《小白学程序》第十九课:随机数(Random)第六,随机生成任意长度的大数(BigInteger)

1 文本格式 using System; using System.Linq; using System.Text; using System.Collections.Generic; /// <summary> /// 大数的&#xff08;加减乘除&#xff09;四则运算、阶乘运算 /// 乘法计算包括小学生算法、Karatsuba和Toom-Cook3算法 /// 除法运算为 Truffer…

【C++初阶】STL详解(八)List的模拟实现

本专栏内容为&#xff1a;C学习专栏&#xff0c;分为初阶和进阶两部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握C。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;C &#x1f69a;代码仓库&#xff1a;小小unicorn的代码仓库&…

蓝桥杯官网算法赛(蓝桥小课堂)

问题描述 蓝桥小课堂开课啦&#xff01; 海伦公式&#xff08;Herons formula&#xff09;&#xff0c;也称为海伦-秦九韶公式&#xff0c;是用于计算三角形面积的一种公式&#xff0c;它可以通过三条边的长度来确定三角形的面积&#xff0c;而无需知道三角形的高度。 海伦公…