一、Drbd介绍

  Distributed Replicated Block Device(DRBD)是基于块设备在不同的高可用服务器之间同步和镜像数据的软件,通过它可以实现在网络中两台服务器这间基于块设备级别实时或异步镜像或同步复制,其实就类似于rsync+inotify这样的架构项目软件。只不过DRBD是基于文件系统底层的,即block层级同步,而rsync+inotify是在文件系统之上的实际物理文件的同步,因此,drbc的效率更高,效果更好。

  提示:所指的块设备可以是磁盘分区,LVM逻辑卷,或整块磁盘等。相当于raid1功能(适合多小文件同步),但DRBC的同步不能基于目录。

二、Drbd工作原理

 1、原理图

 2、DRBD同步的三种模式

  DRBD有实时和异步两种同步模式:

  1)实时同步模式:

  仅仅当数据写入到本地磁盘和远端服务器磁盘都成功后才会返回成功写入。DRBD服务的协议C级别就是这种实时同步模式,可以防止本地和远端数据丢失和不一致,此种模式是在生产环境中最常用的模式。

  2)异步同步模式:

  当数据写入到本地服务器成功后就返回成功写入,不管无端服务器是否写入成功。

  例如:当数据写入到本地服务器以及发送到本地的TCP BUUFER后返回成功写入,这是DRBC服务的协议A级别工作模式,当数据写入到本地服务器以及发送到远端节点后,返回成功写入,这是DRBC服务的协议B级别工作模式

3、DRBC双节点访问

  1)一般公主节点可以提供业务访问 

   备节点不能提供数据访问,但是备节点的DRBD服务是正常的,数据也会保持实时同步,但是不能对应的设备及分区,也就是没法同时提供服务。这是由文件系统的特性决定的。

  2)如何让备节点也可以提供业务访问?

   特殊的文件系统如GFS,OCFS2可以实现主主模式,或通过挂载到LVM来实现。

4、DRBC常用应用模式 

  单主模式:即主备模式,为典型的带数据同步的高可用性集群方案。

  复主模式:需要采用共享cluster文件系统,如GFS和OCFS2,用于需要从2个节点并发访问数据的场合,需要特别配置。

5、DRBD裂脑

  当心跳线路出现暂时性故障时,会导致两端都各自提升为Primary.当两端再次连通时,需手工处理这种情况。

  DRBD提供处理裂脑的两种方式:

  1)自动处理方式:/etc/drbd.conf

  2)手动处理方式

三、DRBD安装

1、环境准备

1)两台虚拟机,分别有三块网卡

  外网:eth0

内网:eth1

数据传输心跳线:eth3

2)分别添加两块同等大小的磁盘并分区

3)虚拟机分别为DBRD_01,DRBD_02做如下操作

  DRBD_01:  

  a) 添加hosts指向对方的主机名

  b) 添加路由,去往DRBD_02主机的心跳线网卡eth3

c) 格式化磁盘,分两个区,一个存放数据,一个存放DRBD的meta数据,这个分区记住不能创建文件系统,由DRBD自动处理相应的文件系统存放。

  d) 格式化存放数据的分区,并挂载即可。

  DRBD_0-2:

  操作同DRBD_01

待续 …………

Drbd 安装配置的更多相关文章

  1. DRBD安装配置、工作原理及故障恢复

    一.DRBD简介 DRBD的全称为:Distributed ReplicatedBlock Device(DRBD)分布式块设备复制,DRBD是由内核模块和相关脚本而构成,用以构建高可用性的集群.其实 ...

  2. Centos6下DRBD的安装配置

    导读 Distributed Replicated Block Device(DRBD)是一个用软件实现的.无共享的.服务器之间镜像块设备内容的存储复制解决方案.数据镜像:实时.透明.同步(所有服务器 ...

  3. CentOS7 yum安装配置 drbd-84-utils (外部模式)

    1 安装环境介绍 1.1 系统环境 内核:3.10.0-862.el7.x86_64  版本:CentOS Linux release 7.5.1804 (Core) 主服务器:hostname = ...

  4. Hive安装配置指北(含Hive Metastore详解)

    个人主页: http://www.linbingdong.com 本文介绍Hive安装配置的整个过程,包括MySQL.Hive及Metastore的安装配置,并分析了Metastore三种配置方式的区 ...

  5. Hive on Spark安装配置详解(都是坑啊)

    个人主页:http://www.linbingdong.com 简书地址:http://www.jianshu.com/p/a7f75b868568 简介 本文主要记录如何安装配置Hive on Sp ...

  6. ADFS3.0与SharePoint2013安装配置(原创)

    现在越来越多的企业使用ADFS作为单点登录,我希望今天的内容能帮助大家了解如何配置ADFS和SharePoint 2013.安装配置SharePoint2013这块就不做具体描述了,今天主要讲一下怎么 ...

  7. Hadoop的学习--安装配置与使用

    安装配置 系统:Ubuntu14.04 java:1.7.0_75 相关资料 官网 下载地址 官网文档 安装 我们需要关闭掉防火墙,命令如下: sudo ufw disable 下载2.6.5的版本, ...

  8. redis的安装配置

    主要讲下redis的安装配置,以及以服务的方式启动redis 1.下载最新版本的redis-3.0.7  到http://redis.io/download中下载最新版的redis-3.0.7 下载后 ...

  9. Windows环境下的NodeJS+NPM+Bower安装配置

    npm作为一个NodeJS的模块管理,之前我由于没有系统地看资料所以导致安装配置模块的时候走了一大段弯路,所以现在很有必要列出来记录下.我们要先配置npm的全局模块的存放路径以及cache的路径,例如 ...

随机推荐

  1. Android实例-操作sqlite数据之自建导航(XE8+小米2)

    相关资料: 源文:http://blog.sina.com.cn/s/blog_77691fb90101g9hh.html help://embarcadero.rs_xe5/rad/Mobile_T ...

  2. A Tour of Go Exercise: Maps

    Implement WordCount. It should return a map of the counts of each “word” in the string s. The wc.Tes ...

  3. 第十一章、认识与学习 BASH 管线命令 (pipe)

    管线命令使用『 | 』界定符号 [root@www ~]# ls -al /etc | less 管线命令『 | 』仅能处理经由前面一个命令传来的正确信息,也就是 standard output 的信 ...

  4. NoInstall_Mysql

    安装卸载一直是mysql比较头疼的问题,前几天得知可以用绿色版的mysql,解决了这一难题.

  5. 使用Genymotion调试出现错误INSTALL_FAILED_CPU_ABI_INCOMPATI

    转载:http://my.oschina.net/u/242764/blog/375909 当我们安装好Genymotion后,把Android运用部署到上面调试时,console控制台会报错:Ins ...

  6. Java NIO 备忘

    $.backlog:可以把它简单理解为一个 listening socket 的请求连接队列的限制.当队列中的连接请求达到队列限制时,kernel 会拒绝信的连接请求.只有当应用程序通过 accept ...

  7. SQLite使用教程8 Insert 语句

    http://www.runoob.com/sqlite/sqlite-insert.html SQLite Insert 语句 SQLite 的 INSERT INTO 语句用于向数据库的某个表中添 ...

  8. Asp.Net Core- 配置组件详解

    我们之前写的配置都是放置在配置文件Web.config或者app.config中,.net core提供了全新的配置方式,可以直接写在内存中或者写在文件中. .Net Core的配置API主要体现在3 ...

  9. Android Intent入门

    http://www.cnblogs.com/leipei2352/archive/2011/08/09/2132096.html http://blog.csdn.net/xiazdong/arti ...

  10. [AngularJS] Using AngularJS interceptors with $http

    Sometimes you might need to modify HTTP requests and responses. This could be for a variety of reaso ...