Heartbeat+ldirectord实现Web与DNS的高可用性

实验环境

vmware workstation 虚拟机

四台linux虚拟机均使用RedHat 5.4 内核版本号为:2.6.18-164.el5

使用192.168.10.0

实验拓扑

Heartbeat+ldirectord实现Web与DNS的高可用性

实验配置

分发器上 a.abc.com与分发器上 b.abc.com 的操作相同,如下:

设置本地的dns指向

[root@a ha.d]# vim /etc/resolv.conf

nameserver 192.168.10.101

修改服务器的名称

[root@a ha.d]# hostname  a.abc.com

[root@a ha.d]# vim /etc/sysconfig/network

3 HOSTNAME=a.abc.com

安装heartbeat相关的软件

[root@a ~]# ls  *.rpm
heartbeat-2.1.4-9.el5.i386.rpm
heartbeat-devel-2.1.4-9.el5.i386.rpm
heartbeat-gui-2.1.4-9.el5.i386.rpm
heartbeat-ldirectord-2.1.4-9.el5.i386.rpm
heartbeat-pils-2.1.4-10.el5.i386.rpm
heartbeat-stonith-2.1.4-10.el5.i386.rpm
libnet-1.1.4-3.el5.i386.rpm
perl-MailTools-1.77-1.el5.noarch.rpm

yum localinstall  *.rpm  -y --nogpgcheck

cp  /usr/share/doc/heartbeat-2.1.4/authkeys  /etc/ha.d/

cp  /usr/share/doc/heartbeat-2.1.4/ha.cf    /etc/ha.d/
cp  /usr/share/doc/heartbeat-2.1.4/haresources  /etc/ha.d/

设置分发器的验证方式及口令

[root@a ~]# cd /etc/ha.d

[root@a ha.d]# vim authkeys

27 auth 3
28 3 md5 123456

[root@a ha.d]# chmod 600 authkeys

定义群集中的节点及探测网卡

[root@a ha.d]# vim ha.cf

95 bcast  eth0

214 node    a.abc.com
215 node    b.abc.com

定义群集中的资源及默认主节点

[root@a ha.d]# vim haresources

45 a.abc.com IPaddr::192.168.10.101/24/eth0/192.168.10.255 ldirectord::ldirectord.cf

[root@a ha.d]# vim ldirectord.cf

12 checktimeout=3  #检测的超时时间
13 checkinterval=1  #时间间隔

15 autoreload=yes #自动加载配置

21 quiescent=no  #静态模式

24 virtual=192.168.10.101:80  #数据包的访问目标地址及端口
25        real=192.168.10.200:80 gate #内部的真正的服务器
26        real=192.168.10.201:80 gate #内部的真正的服务器

29        service=http  #测试使用的服务类型
30        request=".test.html"  #测试的请求网页
31        receive="ok"  #请求的匹配内容

33        scheduler=rr  #调度算法

36        protocol=tcp  #连接的类型
37        checktype=negotiate  #使用的探测手段,发送基于该服务的数据请求检测服务的可用性

319 virtual=192.168.10.101:53  #数据包的访问目标地址及端口
320        real=192.168.10.200:53 gate #内部的真正的服务器

321        real=192.168.10.201:53 gate #内部的真正的服务器

323        service=dns  #测试使用的服务类型
324        scheduler=rr #调度算法

327        protocol=udp  #连接的类型
328        checktype=connect  #使用的探测手段,与服器之间建立tcp/ip连接

然后从新启动heartbeat

使用命令 “service heartbeat restart”

后方的web与dns服务器的配置

web1.abc.com与web2.abc.com服务器上的配置:如下以web1.abc.com站点为例

[root@web1 ~]# hostname web1.abc.com

[root@web1 ~]# vim /etc/sysconfig/network 
  3 HOSTNAME=web1.abc.com

[root@web1 ~]# mount  /dev/cdrom  /mnt/cdrom/

[root@web1 ~]# cd /mnt/cdrom/Server/

[root@web1 Server]# rpm -ivh bind-9.3.6-4.P1.el5.i386.rpm bind-chroot-9.3.6-4.P1.el5.i386.rpm caching-nameserver-9.3.6-4.P1.el5.i386.rpm httpd-2.2.3-31.el5.i386.rpm

[root@web1 ~]# echo "ok" > /var/www/html/.test.html

[root@web1 ~]# echo "web1" > /var/www/html/index.html

相关推荐