drbd的编译安装配置_编译安装配置
 
node1:
      新建一个空闲分区:/dev/sda5
       vi /etc/sysconfig/network-scripts/ifcfg-eth0
        修改内容为下面几行:DEVICE=eth0
                            BOOTPROTO=static
                            HWADDR=00:0C:29:77:F8:D2
                            IPADDR=192.168.0.2
                            NETMASK=255.255.255.0
                            ONBOOT=yes
          vi /etc/sysconfig/network           
              
              修改内容为下面几行   
                            NETWORKING=yes
                            NETWORKING_IPV6=no
                            HOSTNAME=node1.a.org                  
             hostname node1.a.org
          vi /etc/hosts
          添加:192.168.0.2  node1.a.org node1
                192.168.0.3  node1.a.org node2
scp  /etc/hosts  192.168.0.3:/etc
    下载源码包:drbd-8.3.10.tar.gz 
     tar xf drbd-8.3.10.tar.gz
     cd drbd-8.3.10
     ./configure
     make rpm
     make km-rpm
  
     cd /usr/src/redhat/RPMS/i386/
     rpm -ivh drbd*
     modprobe drbd//重读模块
     lsmod | grep drbd//查看模块是否存在
     vi /etc/drbd.d/global_common.conf添加global {
        usage-count no;
        # minor-count dialog-refresh disable-ip-verification
}
common {
        protocol C;
        handlers {
                pri-on-incon-degr "/usr/lib/drbd/notify-pri-on-incon-degr.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
                pri-lost-after-sb "/usr/lib/drbd/notify-pri-lost-after-sb.sh; /usr/lib/drbd/notify-emergency-reboot.sh; echo b > /proc/sysrq-trigger ; reboot -f";
                local-io-error "/usr/lib/drbd/notify-io-error.sh; /usr/lib/drbd/notify-emergency-shutdown.sh; echo o > /proc/sysrq-trigger ; halt -f";
                # fence-peer "/usr/lib/drbd/crm-fence-peer.sh";
                # split-brain "/usr/lib/drbd/notify-split-brain.sh root";
                # out-of-sync "/usr/lib/drbd/notify-out-of-sync.sh root";
                # before-resync-target "/usr/lib/drbd/snapshot-resync-target-lvm.sh -p 15 -- -c 16k";
                # after-resync-target /usr/lib/drbd/unsnapshot-resync-target-lvm.sh;
        }
        startup {
                wfc-timeout 120;
                degr-wfc-timeout 120;
        }
        disk {
                on-io-error detach;
        fencing resource-only;
        }
        net {
        cram-hmac-alg "sha1";
         shared-secret "mydrbdlab";
        }
        syncer {
                rate 100M;
        }
}
 
3、定义一个资源/etc/drbd.d/web.res,内容如下:
resource web {
  on node1.a.org {
    device    /dev/drbd0;
    disk      /dev/sda5;
    address   192.168.0.2:7789;    meta-disk internal;
  }
  on node2.a.org {
    device    /dev/drbd0;
    disk      /dev/sda5;
    address   192.168.0.3:7789;
    meta-disk internal;
  }
}
scp /etc/drbd.d/global_common.conf /etc/drbd.d/web.res node2:/etc/drbd.d/
初始化:
      drbdadm create-md web
启动服务:/etc/init.d/drbd start

node2:新建一个空闲分区:/dev/sda5
         vi /etc/sysconfig/network-scripts/ifcfg-eth0
        修改内容为下面几行:DEVICE=eth0
                            BOOTPROTO=static
                            HWADDR=00:0C:29:77:F8:D2
                            IPADDR=192.168.0.3
                            NETMASK=255.255.255.0
                            ONBOOT=yes
           vi /etc/sysconfig/network           
              
              修改内容为下面几行   
                            NETWORKING=yes
                            NETWORKING_IPV6=no
                            HOSTNAME=node2.a.org                  
           hostname node2.a.org
  下载源码包:drbd-8.3.10.tar.gz 
     tar xf drbd-8.3.10.tar.gz
     cd drbd-8.3.10
     ./configure
     make rpm
     make km-rpm
 
     cd /usr/src/redhat/RPMS/i386/
     rpm -ivh drbd*
     modprobe drbd//重读模块
     lsmod | grep drbd//查看模块是否存在
 初始化:
   
drbdadm create-md web
启动服务:/etc/init.d/drbd start
###########################node1##########################
把当前节点设置为主节点:drbdadm -- --overwrite-data-of-peer primary web
查看同步状态:当node2也启动后,
drbd的编译安装配置_职场_02
创建文件系统: mke2fs -j /dev/drbd0//这几步只能在主节点上进行
              mkdir /mnt/drbd
              mount /dev/drbd0  /mnt/drbd
 
对主Primary/Secondary模型的drbd服务来讲,在某个时刻只能有一个节点为Primary,因此,要切换两个节点的角色,只能在先将原有的Primary节点设置为Secondary后,才能原来的Secondary节点设置为Primary:  
   Node1:
# cp -r /etc/drbd.* /mnt/drbd 
# umount /mnt/drbd
# drbdadm secondary web
cat /proc/drbd//查看状态
##########################node1#################################
Node2:
# drbdadm primary web
# drbd-overview
  0:web  Connected Primary/Secondary UpToDate/UpToDate C r----
# mkdir /mnt/drbd
# mount /dev/drbd0 /mnt/drbd
cat /proc/drbd//查看状态