【分布式技术】分布式存储ceph之RBD块存储部署

这篇具有很好参考价值的文章主要介绍了【分布式技术】分布式存储ceph之RBD块存储部署。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

创建 Ceph 块存储系统 RBD 接口

服务端操作

1、创建一个名为 rbd-demo 的专门用于 RBD 的存储池

2、将存储池转换为 RBD 模式

3、初始化存储池

4、创建镜像

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

6、修改RBD镜像特性,CentOS7默认情况下只支持layering和striping特性,需要将其它的特性关闭

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

客户端操作

1、安装 ceph-common 软件包

2、执行客户端映射

3、查看映射

4、格式化并挂载

在线扩容

 快照回滚

快照分层与展平 

 镜像导入导出

#在客户端操作 取消映射

//在服务端导出镜像 模拟清空  导入镜像

#在客户端重新映射并挂载


创建 Ceph 块存储系统 RBD 接口

服务端操作

1、创建一个名为 rbd-demo 的专门用于 RBD 的存储池

2、将存储池转换为 RBD 模式

3、初始化存储池

4、创建镜像

两种语法格式都可以
rbd create -p <存储池名称> --image <镜像名称> --size 10G

rbd create <存储池名称>/<镜像名称> --size 10G
[root@admin ~]# cd "/etc/ceph"
[root@admin ceph]# ceph osd pool create myrbd 128
pool 'myrbd' created

[root@admin ceph]# ceph osd pool application enable myrbd rbd
enabled application 'rbd' on pool 'myrbd'

[root@admin ceph]# rbd pool init -p myrbd

[root@admin ceph]# rbd create -p myrbd --image demon1.img --size 10G


[root@admin ceph]# rbd ls -l -p myrbd
NAME       SIZE   PARENT FMT PROT LOCK 
demon1.img 10 GiB          2 
          
[root@admin ceph]# rbd info myrbd/demon1.img

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

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

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

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

语法格式:
ceph auth get-or-create client.<用户名> osd "allow * pool=<存储池名>" mon "allow r" > /etc/ceph/<用户名>.keyring
[root@admin ceph]# ceph auth get-or-create client.test-rbd osd "allow * pool=myrbd" mon "allow r" > test-rbd.keyring

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

6、修改RBD镜像特性,CentOS7默认情况下只支持layering和striping特性,需要将其它的特性关闭

[root@admin ceph]# rbd feature disable myrbd/demon1.img object-map, fast-diff, deep-flatten
[root@admin ceph]# rbd info myrbd/demon1.img

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

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

[root@admin /etc/ceph]#scp test-rbd.keyring root@client:/etc/ceph/

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

客户端操作

1、安装 ceph-common 软件包

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

2、执行客户端映射

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

3、查看映射

rbd showmapped
rbd device list

4、格式化并挂载

语法格式:
mkfs.xfs /dev/rbd*  ##针对xfs文件系统
mount /dev/rbd* <本地挂载点>
[root@client ceph]#rbd map myrbd/demon1.img --keyring test-rbd.keyring --user test-rbd
/dev/rbd0
[root@client ceph]#rbd showmapped

[root@client ceph]#rbd device list

[root@client ceph]#mkfs.xfs /dev/rbd0

[root@client ceph]#mkdir -p /test/rbd
[root@client ceph]#mount /dev/rbd0 /test/rbd/
[root@client ceph]#df -hT

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

在线扩容

在管理节点调整镜像的大小
rbd resize <存储池名>/<镜像名称> --size 20G

在客户端刷新设备文件(扩容镜像后在线刷新)
xfs_growfs /dev/rbd0		#刷新xfs文件系统容量
resize2fs /dev/rbd0			#刷新ext4类型文件系统容量

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

 快照回滚

 

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

//在客户端写入文件
echo 1111 > /data/bb/11.txt
echo 2222 > /data/bb/22.txt
echo 3333 > /data/bb/33.txt

//在管理节点对镜像创建快照
rbd snap create --pool rbd-demo --image rbd-demo1.img --snap demo1_snap1
rbd snap create <存储池名>/<镜像名称>@<快照名称>

可简写为:
rbd snap create rbd-demo/rbd-demo1.img@demo1_snap1

//列出指定镜像所有快照
rbd snap list rbd-demo/rbd-demo1.img
rbd snap list <存储池名>/<镜像名称>

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

//回滚镜像到指定
在回滚快照之前,需要将镜像取消镜像的映射,然后再回滚。


#在客户端操作 取消映射
rm -rf /data/bb/*
umount /data/bb
rbd unmap rbd-demo/rbd-demo1.img
rbd unmap <存储池名>/<镜像名称>

#在管理节点操作
rbd snap rollback rbd-demo/rbd-demo1.img@demo1_snap1
rbd snap rollback <存储池名>/<镜像名称>@<快照名称>

#在客户端重新映射并挂载
rbd map rbd-demo/rbd-demo1.img --keyring /etc/ceph/ceph.client.osd-mount.keyring --user osd-mount
mount /dev/rbd0 /data/bb
ls /data/bb				#发现数据还原回来了

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

#解除限制:
rbd snap limit clear rbd-demo/rbd-demo1.img

//删除快照
#删除指定快照:
rbd snap rm rbd-demo/rbd-demo1.img@demo1_snap1

#删除所有快照:
rbd snap purge rbd-demo/rbd-demo1.img

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis 

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis 【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis 

快照分层与展平 

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

#快照克隆
1)将上游快照设置为保护模式:
[root@admin /etc/ceph]#rbd snap create myrbd/demon1.img@666.snap1

[root@admin /etc/ceph]#rbd snap protect myrbd/demon1.img@666.snap1

[root@admin /etc/ceph]#rbd snap list myrbd/demon1.img

2)克隆快照为新的镜像
[root@admin /etc/ceph]#rbd clone myrbd/demon1.img@666.snap1 --dest myrbd/demon666.img

rbd ls -p myrbd

3)命令查看克隆完成后快照的子镜像
rbd children myrbd/demon1.img@666.snap1
通常情况下通过快照克隆而得到的镜像会保留对父快照的引用,这时候不可以删除该父快照,否则会有影响。
rbd snap rm myrbd/demon1.img@666.snap1
#报错 snapshot '666.snap1' is protected from removal.

如果要删除快照但想保留其子镜像,必须先展平其子镜像,展平的时间取决于镜像的大小
1) 展平子镜像
[root@admin /etc/ceph]#rbd flatten myrbd/demon666.img


2)取消快照保护
[root@admin /etc/ceph]#rbd snap unprotect myrbd/demon1.img@666.snap1

3)删除快照
[root@admin /etc/ceph]#rbd snap rm  myrbd/demon1.img@666.snap1


rbd ls -l -p rbd-demo			#在删除掉快照后,查看子镜像依然存在
[root@admin /etc/ceph]#rbd snap create myrbd/demon1.img@666.snap1
[root@admin /etc/ceph]#rbd snap list myrbd/demon1.img

[root@admin /etc/ceph]#rbd snap protect myrbd/demon1.img@666.snap1
[root@admin /etc/ceph]#rbd snap list myrbd/demon1.img

[root@admin /etc/ceph]#rbd clone myrbd/demon1.img@666.snap1 --dest myrbd/demon666.img
         
[root@admin /etc/ceph]#rbd children myrbd/demon1.img@666.snap1
myrbd/demon666.img

[root@admin /etc/ceph]#rbd flatten myrbd/demon666.img

[root@admin /etc/ceph]#rbd ls -l -p myrbd
         
[root@admin /etc/ceph]#rbd snap list myrbd/demon1.img

[root@admin /etc/ceph]#rbd snap unprotect myrbd/demon1.img@666.snap1
[root@admin /etc/ceph]#rbd snap list myrbd/demon1.img

[root@admin /etc/ceph]#rbd snap list myrbd/demon1.img
[root@admin /etc/ceph]#rbd ls -l -p myrbd

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis 

 镜像导入导出

#在客户端操作 取消映射

[root@client ceph]#umount /test/rbd ##解挂

[root@client ceph]#rbd unmap myrbd/demon1.img  ##取消映射

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

//在服务端导出镜像 模拟清空  导入镜像

//导出镜像
[root@admin /etc/ceph]#rbd export myrbd/demon666.img /opt/demon666.img.tar

rbd export <存储池名>/<镜像名称>  <自定义镜像导出文件名>

//导入镜像
#卸载客户端挂载,并取消映射


#清除镜像下的所有快照,并删除镜像
rbd snap purge myrbd/demon666.img
rbd rm <存储池名>/<镜像名称>

rbd ls -l -p myrbd

#导入镜像
rbd import /opt/demon666.img.tar  myrbd/demon666.img
rbd import <镜像之前导出的文件路径> <存储池名>/<镜像名称>  


rbd ls -l -p myrbd

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis

#在客户端重新映射并挂载

rbd map <存储池>/<镜像> --keyring /etc/ceph/ceph.client.<用户>.keyring --user <用户>

【分布式技术】分布式存储ceph之RBD块存储部署,分布式,ceph,zabbix,数据库,mysql,redis文章来源地址https://www.toymoban.com/news/detail-801625.html

到了这里,关于【分布式技术】分布式存储ceph之RBD块存储部署的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 云原生之深入解析分布式存储系统Ceph的环境部署和实战操作

    ① 什么是 Ceph ? Ceph 是当前非常流行的开源分布式存储系统,具有高扩展性、高性能、高可靠性等优点,同时提供块存储服务(rbd)、对象存储服务(rgw)以及文件系统存储服务(cephfs),Ceph 在存储的时候充分利用存储节点的计算能力,在存储每一个数据时都会通过计算得出该数据

    2024年02月09日
    浏览(45)
  • Kylin v10基于cephadm工具离线部署ceph分布式存储

    ceph:octopus OS:Kylin-Server-V10_U1-Release-Build02-20210824-GFB-x86_64、CentOS Linux release 7.9.2009 Ceph可用于向云平台提供对象存储、块设备服务和文件系统。所有Ceph存储集群部署都从设置每个Ceph节点开始,然后设置网络。 Ceph存储集群要求:至少有一个Ceph Monitor和一个Ceph Manager,并且至少有

    2024年02月14日
    浏览(37)
  • ceph分布式存储

    Ceph是当前非常流行的开源分布式存储系统,具有高扩展性、高性能、高可靠性 等优点,同时提供块存储服务(rbd)、对象存储服务(rgw)以及文件系统存储服务(cephfs),Ceph在存储的时候充分利用存储节点的计算能力,在存储每一个数据时 都会通过计算得出该数据的位置,尽量的分

    2023年04月08日
    浏览(49)
  • 【分布式】ceph存储

    DAS(直接附加存储,是直接接到计算机的主板总线上去的存储) IDE、SATA、SCSI、SAS、USB 接口的磁盘 所谓接口就是一种存储设备驱动下的磁盘设备,提供块级别的存储 NAS(网络附加存储,是通过网络附加到当前主机文件系统之上的存储) NFS、CIFS、FTP 文件系统级别的存储,本

    2024年02月16日
    浏览(45)
  • Ceph 分布式存储

    DAS(直接附加存储,是直接接到计算机的主板总线上去的存储) IDE、SATA、SCSI、SAS、USB 接口的磁盘 所谓接口就是一种存储设备驱动下的磁盘设备,提供块级别的存储 NAS(网络附加存储,是通过网络附加到当前主机文件系统之上的存储) NFS、CIFS、FTP 文件系统级别的存储,本

    2024年02月16日
    浏览(43)
  • Ceph分布式存储笔记

    1、Ceph概念 分布式存储 是指一种独特的系统架构,它由一组网络进行通信、为了完成共同的任务而协调工作的计算机节点组成;分布式系统是为了用廉价的、普通的机器完成单个计算无法完成的计算、存储任务;其目的是利用更多的机器,处理更多的数据。 Ceph是一个统一【

    2023年04月08日
    浏览(55)
  • Ceph分布式存储(1)

    目录 一.ceph分布式存储 Ceph架构(自上往下) OSD的存储引擎: Ceph的存储过程: 二. 基于 ceph-deploy 部署 Ceph 集群 20-40节点上添加3块硬盘,一个网卡: 10节点为admin,20-40为node,50为client: 配置 hosts 解析: 安装常用软件和依赖包: 在 admin 管理节点配置 ssh 免密登录所有节点:

    2024年01月18日
    浏览(48)
  • Ceph分布式存储系统

    Ceph :ceph被称为面向未来的存储还是一个分布式的存储系统,非常灵活,如果需要扩容,只要向ceph集中增加服务器即可。ceph存储数据时采用多副本的方式进行存储,生产环境下,一个文件至少要存三份,ceph默认也是三副本存储。 可以实现的 存储方式 : 块存储:提供像普通

    2024年04月15日
    浏览(46)
  • ceph分布式存储实战

    虚拟机安装ceph集群       部署ceph集群      mon服务器的高可用: # apt install ceph-mon # apt install ceph-mon 1.ceph的组件和功能 2.ceph的数据读写流程 3.使用ceph-deploy安装一个最少三个节点的ceph集群 推荐3个或以上的磁盘作为专用osd 4.测试ceph的rbd使用

    2024年02月09日
    浏览(43)
  • 分布式存储ceph的介绍

    分布式存储 Ceph、TFS、FastDFS、MooseFS(MFS)、GlusterFS(GFS) 存储机制会把数据分散存储到多个节点上,具有高扩展性、高性能、高可用性等优点。 #分布式存储的类型 ●块存储(例如硬盘,一般是一个存储被一个服务器挂载使用,适用于容器或虚拟机存储卷分配、日志存储、文件存

    2024年02月08日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包