首页 > 其他分享 >Ceph块存储系统RDB接口

Ceph块存储系统RDB接口

时间:2024-07-10 21:31:20浏览次数:26  
标签:快照 img 存储系统 Ceph demo1 xy101 RDB 镜像 rbd

目录

1.创建 Ceph 块存储系统 RBD 接口

1.1 创建一个名为 rbd-xy101 的专门用于 RBD 的存储池

1.2 创建镜像

1.3 查看镜像

1.4 修改镜像大小

1.5 删除镜像

1.6 临时删除镜像

2.Linux客户端使用

2.1 在管理节点创建并授权一个用户可访问指定的 RBD 存储池

2.2 修改RBD镜像特性

2.3 将用户的keyring文件和ceph.conf文件发送到客户端的/etc/ceph目录下

客户端操作

2.4 安装 ceph-common 软件包

2.5 执行客户端映射

2.6 查看映射状态

2.7 格式化并挂载

2.8 在线扩容

3.快照管理

4.快照分层

5.快照展平

6.镜像导入导出


将上一篇博客client节点挂载内容解挂

1.创建 Ceph 块存储系统 RBD 接口

服务端 

1.1 创建一个名为 rbd-xy101 的专门用于 RBD 的存储池

ceph osd pool create rbd-xy101 64

ceph osd pool application enable rbd-xy101 rbd     #将poll转化为rbd模式
rbd pool init -p rbd-xy101     #rbd初始化

1.2 创建镜像

rbd create -p rbd-xy101 --image rbd-demo1.img --size 10G    #创建镜像

1.3 查看镜像

rbd ls -l -p rbd-xy101   #查看pool中镜像列表
rbd info -p rbd-xy101 --image rbd-demo1.img  #查看镜像详细信息

1.4 修改镜像大小

rbd resize -p rbd-xy101 --image rbd-demo1.img --size 20G  #扩大镜像大小

#使用 resize 调整镜像大小,一般建议只增不减,如果是减少的话需要加选项 --allow-shrink
rbd resize -p rbd-xy101 --image rbd-demo1.img --size 5G --allow-shrink

1.5 删除镜像

#删除镜像
rbd rm|remove -p rbd-xy101 --image rbd-demo1.img
或
rbd rm rbd-xy101/rbd-demo1.img

1.6 临时删除镜像

rbd trash move -p rbd-xy101 --image rbd-demo1.img   #删除放在回收站,可恢复
等于 rbd trash move rbd-xy101/rbd-demo1.img

rbd trash list -p rbd-xy101              #查看被临时删除的镜像列表和镜像恢复id

rbd trash restore rbd-xy101/              #恢复被临时删除的镜像

2.Linux客户端使用

客户端使用 RBD 有两种方式:
●通过内核模块KRBD将镜像映射为系统本地块设备,通常设置文件一般为:/dev/rbd*
●另一种是通过librbd接口,通常KVM虚拟机使用这种接口。

本例主要是使用Linux客户端挂载RBD镜像为本地磁盘使用。开始之前需要在所需要客户端节点上面安装ceph-common软件包,因为客户端需要调用rbd命令将RBD镜像映射到本地当作一块普通硬盘使用。并还需要把ceph.conf配置文件和授权keyring文件复制到对应的节点。

2.1 在管理节点创建并授权一个用户可访问指定的 RBD 存储池

ceph auth get-or-create client.<用户名> osd "allow * pool=<存储池名>" mon "allow r" > /etc/ceph/<用户名>.keyring

ceph auth get-or-create client.osd-mount osd "allow * pool=rbd-xy101" mon "allow r" > ceph.client.osd-mount.keyring

2.2 修改RBD镜像特性

CentOS7默认情况下只支持layering和striping特性,需要将其它的特性关闭

rbd feature disable rbd-xy101/rbd-demo1.img object-map, fast-diff, deep-flatten

2.3 将用户的keyring文件和ceph.conf文件发送到客户端的/etc/ceph目录下

scp ceph.client.osd-mount.keyring ceph.conf client:/etc/ceph/

客户端操作

2.4 安装 ceph-common 软件包

//linux客户端操作
#安装 ceph-common 软件包
yum install -y ceph-common

2.5 执行客户端映射

语法格式
rbd map <存储池名>/<镜像名称> --keyring /etc/ceph/<用户名>.keyring --user <用户名>
rbd map rbd-xy101/rbd-demo1.img --keyring ceph.client.osd-mount.keyring --user osd-mount

2.6 查看映射状态

rbd showmapped
rbd device list

2.7 格式化并挂载

语法格式:
mkfs -t xfs /dev/rbd0  ##针对xfs文件系统
mkdir /opt/rbd/
mount /dev/rbd0 /opt/rbd/

umount /opt/rbd     #解挂
rbd unmap rbd-xy101/rbd-demo1.img   #取消映射


2.8 在线扩容

在管理节点调整镜像的大小
rbd resize <存储池名>/<镜像名称> --size 20G
 
在客户端刷新设备文件(扩容镜像后在线刷新)
xfs_growfs /dev/rbd0		#刷新xfs文件系统容量
resize2fs /dev/rbd0			#刷新ext4类型文件系统容量

xfs_growfs /dev/rbd0
df -hT



3.快照管理

对 rbd 镜像进行快照,可以保留镜像的状态历史,另外还可以利用快照的分层技术,通过将快照克隆为新的镜像使用。

在管理节点对镜像创建快照
rbd snap create -p rbd-xy101 --image rbd-demo1.img --snap rbd-demo1.snap1
 
可简写为:
rbd snap create rbd-xy101/[email protected]


列出指定镜像所有快照
rbd snap list -p rbd-xy101 --image rbd-demo1.img

 
#用json格式输出:
rbd snap list rbd-demo/rbd-demo1.img --format json --pretty-format

回滚镜像到指定
在回滚快照之前,需要将镜像取消镜像的映射,然后再回滚。
 
 
#在客户端操作 取消映射
rm -rf /opt/rbd/*
umount /opt/rbd
rbd unmap rbd-xy101/rbd-demo1.img

#在管理节点操作
rbd snap rollback rbd-xy101/[email protected]
rbd snap rollback <存储池名>/<镜像名称>@<快照名称>
 
#在客户端重新映射并挂载
rbd map rbd-xy101/rbd-demo1.img --keyring ceph.client.osd-mount.keyring --user osd-mount
mount /dev/rbd0 /opt/rbd/
ls /opt/rbd        #发现数据还原回来了



限制镜像可创建快照数
rbd snap limit set rbd-xy101/rbd-demo1.img --limit 3
 
解除限制
rbd snap limit clear rbd-xy101/rbd-demo1.img

删除快照
#删除指定快照:
rbd snap rm rbd-xy101/rbd-demo1.img@demo1_snap1
 
#删除所有快照:
rbd snap purge rbd-xy101/rbd-demo1.img


4.快照分层

快照分层支持用快照的克隆生成新镜像,这种镜像与直接创建的镜像几乎完全一样,支持镜像的所有操作。唯一不同的是克隆镜像引用了一个只读的上游快照,而且此快照必须要设置保护模式。

快照克隆
1)将上游快照设置为保护模式:

 rbd snap protect rbd-xy101/[email protected]
2)克隆快照为新的镜像

 rbd clone rbd-xy101/[email protected] --dest rbd-xy101/rbd-demo666.img
rbd ls -l -p rbd-xy101  #查看
 
3)命令查看克隆完成后快照的子镜像
rbd children myrbd/[email protected]


5.快照展平

通常情况下通过快照克隆而得到的镜像会保留对父快照的引用,这时候不可以删除该父快照,否则会有影响。

rbd snap rm rbd-xy101/[email protected]
#报错 snapshot '666.snap1' is protected from removal.
 
如果要删除快照但想保留其子镜像,必须先展平其子镜像,展平的时间取决于镜像的大小
1) 展平子镜像

rbd flatten rbd-xy101/rbd-demo666.img
2)取消快照保护
rbd snap unprotect rbd-xy101/[email protected]
3)删除快照
rbd snap rm rbd-xy101/[email protected]
 
 
rbd ls -l -p rbd-demo            #在删除掉快照后,查看子镜像依然存在


6.镜像导入导出

导出镜像

rbd export rbd-xy101/rbd-demo666.img /opt/rbd-demo666.img

导入镜像

client节点
#取消挂载、映射
umount /opt/rbd
rbd unmap rbd-xy101/rbd-demo1.img

admin节点
#清除镜像下的所有快照,并删除镜像
rbd snap rm rbd-xy101/rbd-demo1.img --snap rbd-demo1.snap1    #删除快照
rbd rm rbd-xy101/rbd-demo1.img
rbd rm rbd-xy101/rbd-demo666.img  #删除镜像

#导入镜像
rbd import /opt/rbd-demo666.img rbd-xy101/rbd-demo666.img

rbd ls -l -p rbd-xy101



admin节点
CentOS7默认情况下只支持layering和striping特性,需要将其它的特性关闭
bd feature disable rbd-xy101/rbd-demo666.img object-map, fast-diff, deep-flatten

rbd info rbd-xy101/rbd-demo666.img   #查看镜像详细情况

client节点重新做映射、挂载
rbd map rbd-xy101/rbd-demo666.img --keyring ceph.client.osd-mount.keyring --user osd-mount
rbd showmapped  #查看
mount /dev/rbd0 /opt/rbd/
ls /opt/rbd


标签:快照,img,存储系统,Ceph,demo1,xy101,RDB,镜像,rbd
From: https://blog.csdn.net/2402_83805984/article/details/140321797

相关文章

  • Ceph--分布式存储
    目录一、存储基础1.单机存储设备2.单机存储的问题3.商业存储解决方案4.分布式存储(软件定义的存储SDS)5.分布式存储的类型二、Ceph概述1.Ceph简介2.Ceph优势3.Ceph架构4.Ceph核心组件5.OSD存储引擎6.Ceph数据的存储过程7.Ceph版本发行生命周期8.Ceph集......
  • Nerdbank.GitVersioning .net 版本自动生成工具
    在.NET7中使用Nerdbank.GitVersioning进行版本控制,可以按照以下步骤进行配置:安装Nerdbank.GitVersioning包:使用NuGet包管理器控制台安装该包: Install-PackageNerdbank.GitVersioning安装nbgv工具:使用.NETCLI安装nbgv工具:dotnettoolinstall-gnbgv......
  • EasyCVR视频汇聚平台:存储系统怎么选?分布式存储vs.集中式存储的区别在哪?
    在当今的数字化时代,安防监控已成为维护社会秩序和公共安全的重要手段。随着监控设备的普及和监控数据的不断增加,如何高效、安全地存储和管理这些视频数据,成为了安防行业面临的重要挑战。EasyCVR视频存储系统凭借其卓越的性能和灵活的架构,为安防行业提供了一个理想的解决方案。一......
  • 基于单片机的sd卡温度采集存储系统设计
    **单片机设计介绍,基于单片机的sd卡温度采集存储系统设计文章目录一概要二、功能设计设计思路三、软件设计原理图五、程序六、文章目录一概要  基于单片机的SD卡温度采集存储系统设计概要可以归纳如下:一、系统概述目标:设计并实现一个基于单片机的SD卡......
  • 41、k8s-数据存储-基本存储-NFS(网路文件存储系统)
    HostPath可以解决数据持久化的问题、但是一旦node节点故障了、pod如果转移到别的节点、又会出现问题、此时需要准备单独的网络存储系统、比较常用的有:·NFS·CIFSNFS是一个网络问卷存储系统、可以搭建一台NFS服务器、然后将pod中的存储直接连接到NFS系统上、这样的话......
  • 十、Redis持久化之RDB
    文章目录一、总体介绍二、RDB(RedisDataBase)2.1官网介绍2.2RDB是什么2.3备份是如何执行的2.4Fork2.5RDB持久化流程2.6dump.rdb文件2.7配置位置2.8如何触发RDB快照;保持策略2.8.1配置文件中默认的快照配置2.8.2命令saveVSbgsave2.8.3flushall命令2.8.4SNAPSHO......
  • 【Redis持久化】RDB、AOF介绍和使用
    RDB、AOF介绍和使用引言ROB介绍配置指令介绍使用指令:dump文件修复指令快照禁用AOF工作流程:文件重写:三种写回策略:混合使用引言持久化的目的,其实就是在Redis重启或者中途崩溃的时候能够依靠自身恢复数据,而不需要再次访问MySQL数据库,重新取得数据,增加MySQL的工作量。在此有两种方法,R......
  • 【Redis —— 05 RDB & AOF】
    Redis提供了两种持久化方式:RDB(RedisDatabase)和AOF(Append-OnlyFile)。这两种方式各有优缺点,可以根据具体需求进行选择和配置。RDB持久化工作原理RDB通过创建数据库的快照来保存数据到磁盘中。快照是指在某个时刻将所有数据保存到一个二进制文件中,文件的默认名称是dump.......
  • 计组--存储系统--复习专用...
    文章目录前言一、存储系统的分类二、存储器的性质1.存储容量2.存储器的速度三、存储器的层次结构四、主存储器SRAM:2.译码方式:DRAM:刷新:ROM:五、存储容量的扩展六、高速存储器总结前言学无止境,笔勤不辍。本文,笔者将介绍一下存储系统相关的知识点…一、存储系统......
  • 希望六月:参加阿里云 PolarDB 与「AI函数计算」动手活动,送博客园T恤
    没想到今年六月是园子与阿里云的推广合作季,同时有好几个推广项目在合作,比如:阿里云开发者社区有奖征文活动,期待您出文相助「指间灵动,快码加编」:阿里云通义灵码,再次降临博客园阿里云618创新加速季,5亿补贴享不停,上云礼包抢先领再加上今天发布的PolarDB与AI函数计算动手活动......