drbd

一,什么是drbd

基于块设备在不同的高可用服务器之间同步和镜像数据的软件,块设备可以是磁盘分区,LVM逻辑卷或整块磁盘,相当于网络之间的RAID 1

二,同步模式

  1)实时同步模式

    数据写入到本地磁盘和远端所有服务器磁盘都成功后才会返回成功写入,这是drdb服务的协议C

  2)异步同步模式

当数据写入到本地磁盘后就返回成功写入,不管远端服务器是否写入成功。是drdb服务的协议AB

三,3种同步复制协议

  1)协议A:异步复制协议,本地写成功后立即返回,数据放在发送buffer中,可能丢失。

2)协议B:内存同步(半同步)复制协议。本地写成功并将数据发送到对方后立即返回,如果双机掉电,数据可能丢失。

3)协议C:同步复制协议,本地和对方服务器磁盘都写成功确认后返回成功,如果单机掉电或单机磁盘损坏,数据不会丢失。

四,drdb的安装,两台都一样(环境和上一篇的heartbeat一样)

1)创建分区

/dev/sdb1 存储设备(ext42G

/dev/sdb2 meta分区(ext4 1G

2)安装drbd

yum install gcc kernel-devel kernel-headers flex 备注:kernel-develkernel-headrs要和系统的内核版本一致

    mkdir -p /usr/local/drbd/var/run/drbd

tar -zxvf drbd-8.4.4.tar.gz

cd drbd-8.4.4

./configure --prefix=/usr/local/drbd --with-km --with-heartbeat--sysconfdir=/etc

备注:

--with-km                         enable kernel module

-         -with-heatbeat                     enable heartbeat integration

make KDIR=/usr/src/kernels/3.10.0-123.el7.x86_64

make install

modprobe drbd 加载到内核模块

lsmod | grep drbd

六,drbd的配置(两台一样)

   1,配置文件

   /etc/drbd.conf

#include"drbd.d/global_common.conf";

include "drbd.d/*.res";

common {

       syncer {

              rate 500M;

              verify-alg crc32c;

               }

       net {

               protocol C;

           }

}

   2/etc/drbd.d/r0.res

global {

       usage-count no;

}

 

resource r0 {

   onfamily1 {

  device /dev/drbd0;

  disk /dev/sdb1;

  address 192.168.44.21:7788

  meta-disk /dev/sdb2[0];

              }

   onfamily2 {

  device /dev/drbd0;

  disk /dev/sdb1

  address 192.168.44.22:7788

  meta-disk /dev/sdb2[0];

              }

}

 

2,启动过程

1drbdadm --create-md r0 创建资源

出现如下创建成功

Device'0' is configured!

Command'drbdmeta 0 v08 /dev/sdb1 internal apply-al' terminated with exit code 20

(2)drbdadm up r0 启动资源

(3)drbdadm -- --overwrite-data-of-peerprimary r0 将主节点设置为主

主节点出现  Connected ro: Primary / Secondaryds:UpToDate/UpToDate

备节点出现  Connected ro:Secondary/Primaryds:UpToDate/UpToDate

即为成功同步,且主备都配置好

  3,测试挂载及数据同步

1mount /dev/drbd0 /datatest  挂载磁盘

2cat /proc/drbd查看同步状态

(3) 查看备节点数据:

     在主节点上drbdadm secondary all

     在备节点上drbdadm primary all 

                drbdadm down r0

                mount /dev/sdb1 /mnt 查看数据

     若直接drbdadm down r01次会出现Command 'drbdsetup down r0' terminated with exit code 11的错误,测试第2次之后不会出现这样的问题

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值