DR:BD-->网络RAID

 DRBD(Distributed Replicated Block Device)分布式块设备“网络 RAID”

1、DRBD:一种块设备,可以被用于高可用(HA)中,它类似于网络RAID-1功能,当数据写入本地文件系统时,数据还会被发送到网络中另一台主机上,以相同形式记录在一个文件系统中。本地(主节点)与远程主机(备节点)的数据可以保证实时同步。
     在高可用(HA)中使用DRBD功能。可以代替使用一个共享磁盘阵,因为数据同步存在于本地主机和远程主机上,切换时,远程主机只要使用它上面的备份数据就可以继续运行服务了。
              +--------+
              |文件系统|
              +--------+
                      |
                      V
             +------------+
             |   块设备层   |
             |(/dev/drbd1)|
             +------------+
             |                  |
             |                  |
             V                  V
    +-----------+   +-------------+
    | 本地硬盘   |   | 远程主机硬盘|
    |(/dev/hdb1)|   | (/dev/hdb1) |
    +-----------+   +-------------+
 
2、本章先实现本地和远程主机之间数据同步
             A                      B
    +-----------+    +-------------+
    | 本地硬盘   |<--| 远程主机硬盘|
    |(/dev/sda1)|-->| (/dev/sda1) |
    +-----------+    +-------------+
主机A:node.a.com   44.44.44.1
主机B: node.b.com   44.44.44.2
DRBD数据同步
2.1、DRBD软件包x2
#rpm -ivh   drbd83-8.3.2-6.el5_3.i386.rpm         kmod-drbd83-xen-8.3.2-6.el5_3.i686.rpm
 
2.2、加载模块
#modprobe drbd    #加载drbd模块
#dmesg | tail      #查看drbd驱动是否加载成功 
 
2.3、分别在A,B主机上修改DRBD配置文件,定义节点
#cp   /usr/share/doc/drbd83-8.3.2/drbd.conf   /etc/       #拷贝配置文件到/etc目录
# cat /etc/drbd.conf #修改主配置文件
common {
    syncer { rate 80M; } #同步速度,根据实际网络带宽计算
}
resource ab { #自定义的设备名
    protocol C;
    on node.a.com { #主机域名
       device       /dev/drbd0; #drbd设备
       disk          /dev/sda; #同步的设备名
       address      44.44.44.1:7788; #主机IP和端口号,drbd使用的是7788端口
       meta-disk internal;
    }
 
    on node.b..com {
       device      /dev/drbd0;
       disk         /dev/sda;
       address    44.44.44.2:7788;
       meta-disk internal;
    }
}
 
2.4、A、B主机执行drbd设备初始化
#debdadm   create-md    ab
  --==   Thank you for participating in the global usage survey   ==--
  The server's response is:
 
  Writing meta data...
  initializing activity log
  NOT initialized bitmap
  New drbd meta data block successfully created...
 
2.5、A、B主机启动drbd服务
#/etc/init.d/drbd start
 
#cat /proc/drbd #查看drbd设备主从
  version: 8.3.2 (api:88/proto:86-90)
  GIT-hash: dd7985327f146f33b86d4bff 5ca8c94234ce840e build by [email protected],   2009-08-29 14:02:36
    0: cs:Connected ro:Secondary/Secondary ds:Inconsistent/Inconsistent C r----
       ns:0 nr:0 dw:0 dr:0 al:0 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:4999808
 
注:
以上命令查看会发现两个机器 都是secondary (从)            ds:Inconsistent/Inconsistent  
首次同步数据时(primary的数据同步到secondary上!!!)
          |
          V  
要提升哪个机器,则在哪个机器 上敲如下命令!
# drbdsetup    /dev/drbd0    primary    -o
          |
          V
可以看到首次数据从   primary同步到secondary的过程
 
#watch -n 0.1 cat /proc/drbd    #在A、B主机可以看到两台设备在同步数据
 
3、设置DRBD主从状态,并测试数据同步
只有状态为Primary,才可以挂载并读写
状态为secondary,不可以挂载,更不可以读,写
当前node.a.com的状态是Primary,我们来进行使用,可以看数据会被同步到node.b.com(secondary)
# mkfs.ext3 /dev/drbd0 #格式化分区
# mount /dev/drbd0   /mnt #挂载设备
# cd /mnt
#echo abcde > aa #生成aa文件
 
3.1、接着去secondary上看是否有数据
必须先把node.a.com降级(之前先umount )为secondary
然后把node.b.com升级为primary
然后在node.b.com挂载/dev/drbd0设备,看是否有数据
 
4、完成
 

你可能感兴趣的:(职场,raid,休闲,RAID卡)