测试当主节点发生故障后,如何切换到备节点,当主节点恢复后,又是如何恢复双机数据同步的?

环境

 
  • DRBD
  • linux
  • VMware Workstation 9

步骤

 
  1. 1

    模拟生产环境配置

    1)环境

    实验环境:两台linux CentOS 6.4 32bit 虚拟机

    计算机名: n101 和 n102

    IP地址:192.168.118.101(n101)  192.168.118.102 (n102)

    2) DRBD配置(n101与n102配置一致)

    # cat /etc/drbd.d/r1.re
    
    resource r1
    {
    startup {
    wfc-timeout 30;
    outdated-wfc-timeout 20;
    degr-wfc-timeout 30;
    }
    net {
    cram-hmac-alg sha1;
    shared-secret sync_disk;
    }
    syncer {
    rate 100M;
    verify-alg sha1;
    }
    on n101 {
    device /dev/drbd0;
    disk /dev/sdb1;
    address 192.168.118.101:7789;
    meta-disk internal;
    }
    on n102 {
    device /dev/drbd0;
    disk /dev/sdb1;
    address 192.168.118.102:7789;
    meta-disk internal;
    }
    }
    #end

    3) 当前DRBD状态

  2. 2

    模拟n101系统损坏

    需要重新安装linux操作系统,重新配置DRBD(这里我直接还原n101到刚安装好系统时的状态)

    第一步:模拟n101系统损坏(这里重启系统并还原系统)

    1)还原系统

  3. 3

    2 ) 查看n102 drbd状态

    PS:下图显示n101,即Primary已经不可识别

  4. 4

    将n102设置为Primary,并挂载到/home/r1

    如下图,n102的数据正常、完整

  5. 5

    恢复n101,并配置drbd

    1)    将n102的drbd相关配置拷贝至n101

    2)    同步n102数据,直至同步完成

  6. 6

    验证n101数据完整

    1)    查看是否同步完成

    如下图,数据同步已经完成

  7. 7

    停止n102对/home/r1 进行写操作,并将n102设置为Secondary

    END

备注

 
  • 当DRBD的Primary(n101)发生故障(系统损坏),变为不可用状态时,需要将Secondary主机设置为Primary,并挂载到相 应目录继续工作,原Secondary(n102)数据不会丢失。恢复n101时,只需要将n101重新配置DRBD 与n102相同的资源(如r1)并作 为n102的Secondary,将n102的数据同步过来即可完成恢复。

Linux DRBD 主节点(Primary) 故障恢复测试的更多相关文章

  1. 推荐一个linux下的web压力测试工具神器webbench

    推荐一个linux下的web压力测试工具神器webbench2014-04-30 09:35:29   来源:   评论:0 点击:880 用多了apache的ab工具之后你就会发现ab存在很多问题, ...

  2. kali Linux下wifi密码安全测试(1)虚拟机下usb无线网卡的挂载 【转】

    转自:http://blog.chinaunix.net/uid-26349264-id-4455634.html 目录 kali Linux下wifi密码安全测试(1)虚拟机下usb无线网卡的挂载 ...

  3. LINUX系统下MySQL 压力测试工具super smack

    摘要:1.源文件下载地址:http://vegan.net/tony/supersmack/2.安装:注意在编译时,可以先把对应的libmysqlclient.so.*拷贝到/usr/lib3.测试: ...

  4. Linux网络编程组播测试代码

    Linux网络编程组播测试代码 (转载)   组播客户端代码如下: #include <sys/types.h>#include <sys/socket.h>#include ...

  5. linux下libnet编程 亲自测试可用

    linux下libnet编程 亲自测试可用 亲自测试  如果build包的时候 只要把类型改了 就能改成相应的协议. 0x0800 ip 0x0806 arp 0x86DD    IPv6 0x86e ...

  6. 基于linux下的NIST数字测试包安装过程

    基于linux下的NIST数字测试包安装过程 1. 首先解决windows文件不能粘贴到Ubuntu的问题 选择利用VMware Tools进行解决 打开虚拟机VMware Workstation,启 ...

  7. Linux内存带宽的一些测试笔记

    Linux内存带宽的一些测试笔记 首页 所有文章 2014年10月 GNU/Linux系统  2014-10-21 13:20  GNU/LINUX系统 内存带宽 1k 字  669 次 最近要测一下 ...

  8. Web渗透测试使用Kali Linux(一)渗透测试概要及环境部署

    渗透测试是利用已经发现的漏洞,采用恶意黑客的惯用手段来尝试对漏洞进行攻击. Kali Linux是BackTrack的进化版,是Linux的衍生版本,专门开发用作渗透测试,其中提供了很多的渗透测试工具 ...

  9. Linux常用C函数---字符测试篇

    函数讲解部分参考http://net.pku.edu.cn/~yhf/linux_c/ isalnum(测试字符是否为英文或数字) 相关函数 isalpha,isdigit,islower,isupp ...

随机推荐

  1. 谈谈注册中心 zookeeper 和 eureka中的CP和 AP

    谈谈注册中心 zookeeper 和 eureka中的CP和 AP 前言 在分布式架构中往往伴随CAP的理论.因为分布式的架构,不再使用传统的单机架构,多机为了提供可靠服务所以需要冗余数据因而会存在分 ...

  2. Shell编程中变量用法

    1. 变量替换 语法 说明 ${变量名#匹配规则} 从变量开头进行规则匹配,将符合最短的数据删除 ${变量名##匹配规则} 从变量开头进行规则匹配,将符合最长的数据删除,贪婪匹配 ${变量名%匹配规则 ...

  3. 任务3 PHP配置 1. PHP基础配置

    查看PHP配置文件得位置 #/ucsr/local/php/bin/php -i |grep -i "loaded configuration file" # cp /usr/lo ...

  4. Linux 文件和目录管理

    绝对路径:路径的写法一定由根目录/写起的,例如 /usr/local/mysql 相对路径:和绝对路径相反 不是由根目录/写起的,例如用户首先进入到/home,然后进入test 执行命令:cd /ho ...

  5. Redis的常用淘汰策略以及算法实现

    一.Redis的内存配置 1,Redis配置内存为多少合适? 默认:如果不设置最大内存大小或者设置最大内存大小为0,在64为操作系统下不限制内存大小,在32位操作系统下最多使用3GB内存. 极限情况: ...

  6. Flutter学习简记

    StatefulWidget和StatelessWidget StatefulWidget : 具有可变状态的窗口部件,也就是你在使用应用的时候就可以随时变化,比如我们常见的进度条,随着进度不断变化. ...

  7. [源码解析] 并行分布式框架 Celery 之 worker 启动 (1)

    [源码解析] 并行分布式框架 Celery 之 worker 启动 (1) 目录 [源码解析] 并行分布式框架 Celery 之 worker 启动 (1) 0x00 摘要 0x01 Celery的架 ...

  8. 封装一个postMessage库,进行iframe跨域交互

    这是近期个人在开发chrome插件时的其中一个小总结.还有很多没有总结出来.因为目前插件还在迭代中,(herry菌插件,用于B站C站),属于个人业余的一个小项目.还有很多功能没有实现,以及还需要再看能 ...

  9. 未来直播 “神器”,像素级视频分割是如何实现的 | CVPR 冠军技术解读

    被誉为计算机视觉领域 "奥斯卡" 的 CVPR 刚刚落下帷幕,2021 年首届 "新内容 新交互" 全球视频云创新挑战赛正火热进行中,这两场大赛都不约而同地将关 ...

  10. " "( 双引号) 与 ' '( 单引号) 差在哪?-- Shell十三问<第四问>

    " "( 双引号) 与 ' '( 单引号) 差在哪?-- Shell十三问<第四问> 经过前面两章的学习,应该很清楚当你在 shell prompt 后面敲打键盘.直到 ...