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

环境

 
  • 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. python面试题,print写在for循环内和外的区别

    1.统计列表中正数和负数的数量a = [1,3,5,7,0,-1,-9,-4,-5,8]b = []c = []for i in a : if i>0: b.append(i) elif i&l ...

  2. vue 倒计时 iOS无效

    vue实现的倒计时在苹果手机上无效,原因是因为后台返回的时间格式是'2019-1-29 17:13:04',而苹果手机只能解析这种时间格式'YYYY/MM/DD HH:mm:ss',修改后测试成功的代 ...

  3. 总结数据科学家常用的Python库

    概述 这篇文章中,我们挑选了24个用于数据科学的Python库. 这些库有着不同的数据科学功能,例如数据收集,数据清理,数据探索,建模等,接下来我们会分类介绍. 您觉得我们还应该包含哪些Python库 ...

  4. [Azure Devops] 使用 Azure Boards 管理工作

    1. 什么是 Azure Boards 通过 Azure Boards 网络服务,团队可以管理其软件项目.它提供了丰富的功能,包括 Scrum 和看板的本地支持.可定制的仪表板和集成报告.这些工具可以 ...

  5. ch1_5_1统计最大最小元素的平均比较次数

    public class ch1_5_1统计最大最小元素的平均比较次数 { public static void main(String[] args) { // TODO Auto-generate ...

  6. 前端富文本编辑器vue + tinymce

    之前有项目需要用到富文本编辑器,在网上找了好几个后,最终选择了这个功能强大,扩展性强的tinymce tinymce中文文档地址(不全):http://tinymce.ax-z.cn/ tinymce ...

  7. 学会使用 Mysql show processlist 排查问题

    mysql show full processlist 查看当前线程处理情况 事发现场 每次执行看到的结果应该都有变化,因为是实时的,所以我定义为:"事发现场",每次执行就相当于现 ...

  8. 【JVM进阶之路】十:JVM调优总结

    1.调优原则 JVM调优听起来很高大上,但是要认识到,JVM调优应该是Java性能优化的最后一颗子弹. 比较认可廖雪峰老师的观点,要认识到JVM调优不是常规手段,性能问题一般第一选择是优化程序,最后的 ...

  9. 201871030118-雷云云 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告

    项目 内容 课程班级博客 班级链接 这个作业要求链接 作业链接 我的课程学习目标 (1)体验软件项目开发中的两人合作,练习结对编程(2)掌握Github协作开发程序的操作方法(3)学习遗传算法 这个作 ...

  10. Dynamics CRM产生公共签名,避免每次插件换环境重新输入签名密钥账号密码

    在Dynamcs CRM项目维护交接过程中,我们经常会使用其他合作者的插件代码.但是每次拿到别人代码编译的时候插件密钥都要重新输入密钥的账号密码.而且如果密钥都是的话比较麻烦.所以这里就针对这个问题做 ...