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.mzph.cn/news/170838.shtml

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

相关文章

分布式篇---第七篇

系列文章目录 文章目录 系列文章目录前言一、如何将长链接转换成短链接,并发送短信?二、长链接和短链接如何互相转换?三、长链接和短链接的对应关系如何存储?四、如何提高系统的并发能力?前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一…

Java中的异常语法知识居然这么好玩!后悔没有早点学习

学习异常后,发现异常的知识是多么的吸引人!不仅可以用来标记错误,还可以自己定义一个异常,用来实现自己想完成的业务逻辑,接下来一起去学习吧 目录 一、异常的概念及体系结构 1.异常的概念 2.异常的体系结构 3.异常…

BUUCTF [HBNIS2018]低个头 1

BUUCTF:https://buuoj.cn/challenges 题目描述: 得到的 flag 请包上 flag{} 提交。来源: https://github.com/hebtuerror404/CTF_competition_warehouse_2018 密文: 下载附件,得到一个.txt文件。 解题思路: 1、低头…

处理视频的新工具:UniFab 2.0.0.4 Crack

UniFab这是一个用于处理视频的新工具,可以帮助您像专业人士一样获得结果,事实上,它可以确保在项目的任何设备上完美播放,所以,来认识一下 UniFab - 一款功能强大且方便的视频编辑器和转换器,但另一方面&…

不同品牌的手机可以则哪一个你投屏到电视?

如果你使用AirDroid Cast的TV版,苹果手机可以通过airPlay或无线投屏方式,将屏幕同步到电视屏幕;多个品牌的安卓手机可以通过无线投屏投射到电视。而且无线投屏不限制距离,即使是远程投屏也可以实现。 打开AirDroid Cast的TV版&…

【C++干货铺】优先队列 | 仿函数

个人主页点击直达:小白不是程序媛 C系列专栏:C干货铺 代码仓库:Gitee 目录 优先队列(priority_queue )的介绍和使用 priority_queue的介绍 priority_queue的使用 大堆 小堆 priority_queue的模拟实现 仿…

03_MySQL基本SQL语句讲解

#课程目标 能够创建、删除数据表能够对表里的数据记录进行增加、删除、修改、查询操作能够创建、删除用户能够给用户授权并回收权限了解delete和truncate语句的区别 #一、数据库基本操作 ##1、查看数据库相关信息 mysql> show databases; 查看所有数据库 mysql>…

lv11 嵌入式开发 GPIO实验 9

目录 1 简介 1.1 GPIO 2 LED实验步骤 2.1 通过电路原理图分析LED的控制逻辑 2.2 通过电路原理图查找LED与Exynos4412的连接关系 2.3 通过数据手册分析GPIO中哪些寄存器可以控制LED 2.4 通过程序去操控对应的寄存器完成对LED的控制 2.4.1 使用寄存器写入…

过渡曲线的构造之平面PH曲线

平面PH曲线的构造及其相应性质 平面PH曲线的构造及其相应性质PH曲线理论三次PH曲线的构造及性质四次PH曲线的构造及性质五次PH曲线的构造及性质非尖点五次PH曲线尖点五次PH曲线 参考文献 平面PH曲线的构造及其相应性质 过渡曲线常需要满足在连接点处位置连续、曲率连续以及切线…

韵达快递查询,韵达快递单号查询,一键筛选出单号中的退回件

批量查询韵达快递单号的物流信息,并将其中的退回件一键筛选出来。 所需工具: 一个【快递批量查询高手】软件 韵达快递单号若干 操作步骤: 步骤1:运行【快递批量查询高手】软件,第一次使用的朋友记得先注册&#xff…

鸿蒙(HarmonyOS)应用开发——装饰器

简介 ArkTS是HarmonyOS优选的主力应用开发语言。它在TypeScript(简称TS)的基础上,扩展了声明式UI、状态管理等相应的能力,让开发者可以以更简洁、更自然的方式开发高性能应用。TS是JavaScript(简称JS)的超…

MySQL 库操作 | 表操作

文章目录 一.MySQL库的操作1.创建数据库2.字符集和校验规则3.操纵数据库 二.MySQL表的操作1.创建表2.操作表3.删除表 一.MySQL库的操作 1.创建数据库 创建数据库 创建数据库的SQL如下: CREATE DATABASE [IF NOT EXISTS] db_name [[DEFAULT] CHARSETcharset_name…

一篇文章完成Hbase入门

文章目录 一、简介1、数据模型结构2、物理存储结构3、数据模型4、基本架构 二、安装1、下载解压安装包2、修改配置文件3、启动服务(单机、集群)4、配置高可用(HA) 三、命令行操作1、建表2、新增/更新数据3、查看表数据4、删除数据5、修改默认保存的数据版本 四、架构1、RegionS…

数据提取PDF SDK的对比推荐

PDF 已迅速成为跨各种平台共享和分发文档的首选格式,它作为一种数据来源,常见于公司的各种报告和报表中。为了能更好地分析、处理这些数据信息,我们需要检测和提取 PDF 中的数据,并将其转换为可用且有意义的格式。而数据提取的 PD…

物联网中基于信任的安全性调查研究:挑战与问题

A survey study on trust-based security in Internet of Things: Challenges and issues 文章目录 a b s t r a c t1. Introduction2. Related work3. IoT security from the one-stop dimension3.1. Output data related security3.1.1. Confidentiality3.1.2. Authenticity …

快速认识Linux的几个指令

我们先简单认识几个指令,为之后的指令学习打好基础 打开XShell并登录云服务器 01.pwd指令 pwd命令的作用是显示当前在Linux系统中所处的路径 02.ls指令 ls命令的作业是罗列出当前路径下的文件名(即pwd的路径下),由于我们没有新…

Docker Swarm总结+Jenkins安装配置与集成(4/4)

博主介绍:Java领域优质创作者,博客之星城市赛道TOP20、专注于前端流行技术框架、Java后端技术领域、项目实战运维以及GIS地理信息领域。 🍅文末获取源码下载地址🍅 👇🏻 精彩专栏推荐订阅👇🏻…

Python可迭代对象排序:深入排序算法与定制排序

更多Python学习内容:ipengtao.com 排序在计算机科学中是一项基础而关键的操作,而Python提供了强大的排序工具来满足不同场景下的排序需求。本文将深入探讨Python中对可迭代对象进行排序的方法,涵盖基础排序算法、sorted函数的应用、以及定制排…

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

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

【深度学习笔记】03 微积分与自动微分

03 微积分与自动微分 导数和微分导数解释的可视化偏导数梯度链式法则自动微分非标量变量的反向传播分离计算 导数和微分 假设我们有一个函数 f : R → R f: \mathbb{R} \rightarrow \mathbb{R} f:R→R,其输入和输出都是标量。 如果 f f f的导数存在,这个…