ha+drbd实战

环境:

OS: redhat5.3

Kernel: 2.6.18-128.el5

Libnet: 1.1.5

Heartbeat: 2.0.4

Drbd: 8.3.10

IP:

ip1:192.168.10.80,ip2:192.168.10.81,vip:192.168.10.98

1. 在安装HA之前 需要先安装libnet 这个包:

tar -zxvf libnet-1.1.5.tar.gz && cd libnet-1.1.5 && ./configure && make && make install

2.安装HA:

tar -zxvf heartbeat-2.0.4.tar.gz && cd heartbeat-2.0.4

./ConfigureMe configure && make (cc1: warnings being treated as errors 解决:find . -name "Makefile" -exec sed -i 's/-Werror//' {} \;)

make install

 

cp doc/ha.cf /etc/ha.d/ && cp doc/haresources /etc/ha.d/ && cp doc/authkeys /etc/ha.d/

 

3.authkeys 配置:

 

chmod 600 authkeys  主节点和从节点间数据校验用的

vi /etc/ha.d/authkeys

   auth 3 

   #1 crc

   #2 sha1 HI!

   3 md5 Hello!

4. haresources配置:

 

vi /etc/ha.d/haresources在配置文件中添加如下一行:

  master 192.168.10.98 drbddisk::r0 Filesystem::/dev/drbd0::/export::ext3

 

  master                 定义master为heartbeat的主机

  192.168.10.98          定义对外服务的IP地址,这个IP自动在主从机之间切换

  drbddisk::r0           定义使用的drbd资源

  Filesystem::/dev/drbd0::/export::ext3     调用Filesystem脚本定义挂载文件系统== mount -t ext3 /dev/drbd0 /export

5.ha.cf配置:

 

vi /etc/ha.d/ha.cf

#debugfile /var/log/ha-debug的注释去掉

#keepalive 2    去注释

#deadtime 15    去注释

#warntime 10    去注释把10改成5

#initdead 120   去注释

#udpport 694    去注释

#bcast eth0    #Linux   去注释

#watchdog /dev/watchdog  去注释也可以不打开

#node den3    把den3改成master  这里要注要它是主节点名称下面的是副节点名称,一定要与uname -n一致.

#node dathy   把dathy改成slave

#ping 192.168.10.254 去注释改:ping 192.168.10.254

#hopfudge 1 去注释  它就是集群中活跃节点的数量

6.安装drbd:

 

./configure --sysconfdir=/etc --with-km --with-heartbeat

make && make install

depmod /lib/modules/`uname -r`/kernels/drivers/blocks/drbd.ko

更改drbd配置文件(主从服务器相同) 准备drbd要使用的分区 ,该分区最好是干净的分区,我在虚拟机中重新划分了一个分区/dev/sdb1作为drbd使用

 

# vi /etc/drbd.conf 

resource r0 {

  protocol C;

  startup {

    degr-wfc-timeout 120;

     }

  disk {

    on-io-error   detach;

      }

  net {

  }

  syncer {

    rate 10M;

  }

  on master{

//master为主服务器的主机名   一定要与uname -n 一样

    device     /dev/drbd0;

    disk       /dev/sdb1;

    address    192.168.10.80:7788;

    meta-disk  internal;

  }

  on slave{

//slave为从服务器的主机名 一定要与uname -n 一样

    device    /dev/drbd0;

    disk      /dev/sdb1;

    address   192.168.10.81:7788;

    meta-disk internal;

  }

}

drbdadm create-md r0 创建resource r0  (注意hostname, resources里的name 应和`uname -n`一样)

 /etc/init.d/drbd start 

 drbdadm primary r0  主(从上 drdadm secondary r0) (drbdsetup /dev/drbd0 primary -o)

 可以用cat /proc/drbd查看数据同步的进度

 mkfs.ext3 /dev/drbd0    格式化drbd分区

 mount /dev/drbd0 /mnt   挂载分区已使用(只在master做这两步操作即可)

 

 

 

 

 

 

 

 

你可能感兴趣的:(职场,HA,drbd,休闲)