Chinaunix首页 | 论坛 | 博客
  • 博客访问: 17440
  • 博文数量: 5
  • 博客积分: 125
  • 博客等级: 入伍新兵
  • 技术积分: 65
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-20 11:29
文章分类
文章存档

2012年(5)

我的朋友

分类: LINUX

2012-07-18 20:34:39

测试目的:当DRBD设备盘出现故障时,新盘替换坏盘是否状态正常,数据是否正确

声明:磁盘损坏,需关闭服务器电源,再进行替换磁盘操作。否则会对磁盘造成损害

测试1

替换前

替换后

备注

DRBD正常运行,模拟数据盘损坏,降为从机,关闭服务器电源

将一块做过RAID0的同容量的磁盘替换原来坏掉的磁盘,重新引导会有磁盘错误信息(跳过),进入RAID管理界面,这时RAID卷组为1  of  3,此时发现第三个卷组没有盘标,故删除该卷。此时发现第二个卷组statusInactive,故激活该卷,然后重新启动该服务器

启动成功后,DRBD会自动建立主从关系

drbd状态:

cs:Connected ro:Secondary/Primary ds:Diskless/UpToDate

 

测试2

替换前

替换后

备注

DRBD正常运行,模拟数据盘损坏,降为从机,关闭服务器电源

将一块裸盘(没有任何RAID)替换原来坏掉的磁盘,重新引导会有磁盘错误信息(跳过),进入RAID管理界面,这时RAID卷组为1  of  2,此时发现第二个卷组没有盘标,故删除该卷。将新盘做RAID0卷,然后重新启动该服务器

启动成功后,DRBD会自动建立主从关系

drbd状态:

cs:Connected ro:Secondary/Primary ds:Diskless/UpToDate

 

 

drbd已经建立好主从关系且磁盘状态Diskless/UpToDate

这时DRBD被称为运行在diskless模式这种diskless运行模式会影响性能,但是服务将继续运行不受影响实际上数据的读写都是发生在对端(不是本地)。

解决方案:

ds状态为Diskless的服务器上执行:

drbdadm disconnect r0               //r0可以替换成all或者其他资源名称

drbdadm create-md r0               //建立DRBD块设备

drbdadm connect r0

查看DRBD状态:

[root@mysql-secondary ~]# cat /proc/drbd

version: 8.3.4 (api:88/proto:86-91)

GIT-hash: 70a645ae080411c87b4482a135847d69dc90a6a2 build by root@mysql-secondary, 2011-11-29 15:02:12

 0: cs:SyncTarget ro:Secondary/Primary ds:Inconsistent/UpToDate C r----

    ns:0 nr:244735648 dw:244727456 dr:0 al:0 bm:14936 lo:257 pe:29451 ua:256 ap:0 ep:1 wo:b oos:47255148

         [>....................] sync'ed:  0.1% (285004/285136)M

         finish: 0:09:55 speed: 79,268 (89,872) K/sec

同步完成,恢复到正常状态

[root@mysql-secondary ~]# cat /proc/drbd

version: 8.3.4 (api:88/proto:86-91)

GIT-hash: 70a645ae080411c87b4482a135847d69dc90a6a2 build by root@mysql-secondary, 2011-11-29 15:02:12

 0: cs:Connected ro:Secondary/Primary ds:UpToDate/UpToDate C r----

ns:0 nr:291982604 dw:291982604 dr:0 al:0 bm:17822 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0

 

注:DRBD数据盘损坏时,会自动降为从机,所以不考虑主机磁盘损坏或者备机磁盘损坏,主备机只是人为的定义

阅读(4013) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~