redhat上安装DRDB

来源:互联网 发布:唇语软件 编辑:程序博客网 时间:2024/05/16 10:50
1. 编译 drbd, 安装 drbd.ko 

tar -zxvf drbd-8.3.6.tar.gz
cd drbd-8.3.6
./configure --prefix=/usr/local/drbd  --with-km
make

make install
ln -s /usr/local/drbd/etc/drbd.conf /etc/drbd.conf
ln -s /usr/local/drbd/etc/drbd.conf /usr/local/etc/drbd.conf
ln -s /usr/local/drbd/etc/rc.d/init.d/drbd /etc/init.d/drbd



chkconfig --add drbd
chkconfig --level 35 drbd on
执行之后:
drbd.ko被安装到/lib/modules/$KernelVersion/kernel/drivers/block下.
drbd相关工具(drbdadm,drbdsetup)被安装到/sbin下.
并会在/etc/init.d/下建立drbd启动脚本.


2. 修改主机名

 /etc/hosts,  /etc/sysconfig/network

  重启网络生效 /etc/rc.d/init.d/network restart 

3. 准备磁盘,划分分区

  
  省略

  创建 drbd 虚拟设备:

   mknod /dev/drbd0 b 147 0
   mknod /dev/drbd1 b 147 1


4.  drbd.conf 配置文件

# You can find an example in  /usr/share/doc/drbd.../drbd.conf.example
#include "drbd.d/global_common.conf";
#include "drbd.d/*.res";


  # 是否参加DRBD使用者统计.默认是yes
       global { usage-count yes; }
       # 设置主备节点同步时的网络速率最大值,单位是字节.
       common { syncer { rate 20M; } }
       # 一个DRBD设备(即:/dev/drbdX),叫做一个"资源".里面包含一个DRBD设备的主备节点的
       # 相关信息.
       #
       resource r0 {
            # 使用协议C.表示收到远程主机的写入确认后,则认为写入完成.
            protocol C;
            net {
                 # 设置主备机之间通信使用的信息算法.
                 cram-hmac-alg sha1;
                 shared-secret "FooFunFactory";
            }
            # 每个主机的说明以"on"开头,后面是主机名.在后面的{}中为这个主机的配置.
            on lzg {
                 # /dev/drbd1使用的磁盘分区是/dev/hdb1
                 device    /dev/drbd1;
                 disk      /dev/sdc5;
                 # 设置DRBD的监听端口,用于与另一台主机通信
                 address    192.168.1.116:7898;
                 meta-disk  internal;
            }
            on linux-hanxin {
                 device    /dev/drbd1;
                 disk      /dev/sdc5;
                 address   192.168.1.102:7898;
                 meta-disk  internal;
            }


5.  定义资源

# drbdadm create-md r0        //r0为配置文件中定义的资源名

 根据提示,输入yes即可,会往分区写入 metadata数据,如果原分区有数据,切忌小心, 先要将数据拷贝出来后再做其他操作     

有必要时可以低格分区
dd if=/dev/zero bs=1M count=1 of=/dev/sda3


6. 资源配置成功后,可以启动 dbrd服务

/etc/init.d/drbd start


查看状态
cat /proc/drbd
or /etc/init.d/drbd status
1: 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:2007644


7. 开始同步

drbdadm -- --overwrite-data-of-peer primary all


8.  测试

1) 在主机上执行
格式化块设备(只需要格式化主机上的drbd0)
# mkfs.ext3 /dev/drbd0
挂载
# mount /dev/drbd0 /test

2)  切换
在主机执行
# umount /test
# drbdadm secondary r0 (all)

在备机执行
#drbdadm primary r0 (all)
#mount /dev/drbd0 /test
原创粉丝点击