文档章节

rbd mirror功能验证

2
 25641463
发布于 2016/09/13 09:22
字数 802
阅读 69
收藏 0

一.环境搭建

     1.创建2个ceph集群。本文将主集群称为local集群,备份集群称为remote集群

     2.将主ceph集群中的ceph.conf和ceph.client.admin.keyring改名为local.conf和local.client.admin.keyring;备份 集群的ceph.conf和ceph.client.admin.keyring 改为remote.conf和remote.client.admin.keyring。

     3.将主集群的local.conf和local.client.admin.keyring拷贝到备份集群的/etc/ceph 。同样,将备份集群的两个remote*文件拷贝到主集群的/etc/ceph。

     4.修改两个集群的rbd特性,在local.conf和remote.conf中设置rbd_default_features=125

二.mirror设置

     5.启动rbd镜像进程,主力--setuser和--setgroup参数需要根据local.conf和remote.conf的组和用户属性来确定。

         主集群执行:rbd-mirror -f --cluster remote --setuser root --setgroup root

         备份集群执行:rbd-mirror -f --cluster local --setuser root --setgroup root

     6.rbd-mirror支持对单个rbd或整个pool进行镜像,这里开启pool名为rbd的池镜像功能。注意,两个集群的rbd或pool的名字必须一致

        主集群执行:rbd --cluster local mirror pool enable rbd pool

        备份集群执行:rbd --cluster remote mirror pool enable rbd pool

     7.增加peer对

        主集群执行: rbd --cluster local mirror pool peer add rbd client.admin@remote

        备份集群执行: rbd --cluster remote mirror pool peer add rbd client.admin@local

  8.查询是否连接好

    主集群执行: rbd --cluster local mirror pool info

        备份集群执行:  rbd --cluster remote mirror pool info

三.验证镜像功能及数据一致性:

    1.在主集群执行 rbd create testrbd --size 40000。备份集群执行rbd --cluster remote ls可以看到创建的镜像。

  2.在主集群上挂载rbd并写入数据

        主集群执行:mkdir /mnt/rbd

                            mkdir /mnt/testrbd

                           rbd-fuse -c /etc/local.conf -p rbd /mnt/rbd

                           mkfs.ext4 /mnt/rbd/testrbd

                           mount /mnt/rbd/testrbd /mnt/testrbd

                           dd if=/dev/zero of=/mnt/testrbd/testfile bs=1M count=1000

                           sync

                           md5sum /mnt/testrbd/testfile

                           umount /mnt/testrbd/

                           umount /mnt/rbd

    3.将主集群pool降级,并升级备份集群pool,再挂载备份集群的rbd查看数据一致性(如果不升级备份集群,无法获取独占锁并使用rbd)。

       主集群执行:rbd --cluster local mirror image demote rbd/testrbd

       备份集群执行:rbd --cluster remote  mirror image promote rbd/testrbd

                           rbd-fuse -c /etc/remote.conf -p rbd /mnt/rbd

                           mount /mnt/rbd/testrbd /mnt/testrbd

                            md5sum /mnt/testrbd/testfile

四.其他有用的命令

    1.关闭pool的镜像功能 

    rbd --cluster local mirror pool disable rbd

    rbd --cluster remote mirror pool disable rbd

  2.删除peer关系

    先用rbd-mirror查看UUID

             rbd --cluster local mirror pool info

             rbd --cluster remote mirror pool info

       然后删除peer关系

            rbd --cluster local mirror pool peer remove image-pool remote-uuid号

            rbd --cluster remote mirror pool peer remove image-pool local-uuid号

五.性能及稳定性测试相关

     1.测试没开mirror功能及开mirror功能的性能是否有区别。

        由于集群规模较小,测试过程中没发现rbd mirror开启与关闭对读写性能有影响。

     2.测试开启mirror功能后持续写入数据是否对集群有影响。

        测试没发现异常现象。

© 著作权归作者所有

共有 人打赏支持
2
粉丝 7
博文 15
码字总数 8009
作品 0
沈阳
高级程序员
私信 提问
rbd-mirror动手实践

rbd-mirror是jewel版本新加入的一个特性,目的是在不同的ceph集群中同步rbd设备上的数据。 rbd-mirror的内部实现如下图所示: 在两个相互独立的ceph集群中分别多了一个守护进程rbd-mirror,该...

linuxhunter
2016/05/31
658
0
从传统运维到云运维演进历程之软件定义存储(五)下

上篇文章讲到了Ceph在灾备方面有三大神兵利器:故障域、RBD异地灾备、RGW异地灾备。那么本文讲述下剩下的两大利器RBD异地灾备和RGW异地灾备 关卡五:Ceph灾备神兵利器-RBD Mirroring & RGW异...

Devin
2016/12/20
0
0
Ceph v10.2.0 Jewel 发布,分布式文件系统

Ceph v10.2.0 Jewel 发布了,Ceph是加州大学Santa Cruz分校的Sage Weil(DreamHost的联合创始人)专为博士论文设计的新一代自由软件分布式文件系统。自2007年毕业之后,Sage开始全职投入到C...

oschina
2016/04/22
2.5K
8
Ceph v10.2.1 发布,分布式存储系统

Ceph v10.2.1 发布了,该版本主要包括一些初始化功能的修复,以及RBD, RGW, 和 CephFS相关的修复,以下是发布说明: cephfs: CephFSVolumeClient should isolate volumes by RADOS namespace...

oschina
2016/05/19
1K
5
ceph(jewel版)编译

一、在github下载ceph源码: git clone --recursive https://github.com/ceph/ceph.git 下载ceph的其他子模块,否则在编译过程中会出现缺少库 git submodule update --force --init --recurs...

zrz11
2016/11/02
22
0

没有更多内容

加载失败,请刷新页面

加载更多

Windows 上安装 Scala

在安装 Scala 之前需要先安装 Java 环境,具体安装的详细方法就不在这里描述了。 您可以自行搜索我们网站中的内容获得其他网站的帮助来获得如何安装 Java 环境的方法。 接下来,我们可以从 ...

honeymose
24分钟前
0
0
数据库篇多表操作

第1章 多表操作 实际开发中,一个项目通常需要很多张表才能完成。例如:一个商城项目就需要分类表(category)、商品表(products)、订单表(orders)等多张表。且这些表的数据之间存在一定的关系...

stars永恒
今天
2
0
nginx日志自动切割

1.日志配置(Nginx 日志) access.log----记录哪些用户,哪些页面以及用户浏览器,IP等访问信息;error.log------记录服务器错误的日志 #配置日志存储路径:location / {      a...

em_aaron
昨天
3
0
java 反射

基本概念 RTTI,即Run-Time Type Identification,运行时类型识别。RTTI能在运行时就能够自动识别每个编译时已知的类型。   要想理解反射的原理,首先要了解什么是类型信息。Java让我们在运...

细节探索者
昨天
2
0
推荐转载连接

https://www.cnblogs.com/ysocean/p/7409779.html#_label0

小橙子的曼曼
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部