规划图如下

 

heartbeat+Web负载均衡,健康状态检测_第1张图片

本文中的介绍和http://7ings.blog.51cto.com/5121572/954618博文中同样实现Web Lvs DR模型下带健康状态检测的高可用,只是用于实现的软件和方式不同。

这里我们使用heartbeat v2,基于一个图形窗口来进行配置。

1.ipvsadm的配置可以参考我前文中引用的博客

2.带健康状态检测的heartbeat v2 版得安装使用

2.1heartbeat 的安装

   
   
   
   
  1. [root@node1 ~]# yum -y --nogpgcheck install heartbeat-2.1.4-9.el5.i386.rpm \ 
  2. > heartbeat-gui-2.1.4-9.el5.i386.rpm \  
  3. *提供图形配置窗口的包 
  4. > heartbeat-ldirectord-2.1.4-9.el5.i386.rpm \ 
  5. > perl-MailTools-1.77-1.el5.noarch.rpm \ 
  6. *上面得两个包,用于实现监控RS的健康状态 
  7. > heartbeat-pils-2.1.4-10.el5.i386.rpm \ 
  8. > heartbeat-stonith-2.1.4-10.el5.i386.rpm \ 
  9. > libnet-1.1.4-3.el5.i386.rpm  

2.2配置文件中的配置

1)提供配置文件

   
   
   
   
  1. # cd /usr/share/doc/heartbeat-2.1.4/ 
  2. # cp ha.cf authkeys haresources /etc/ha.d 
  3. *heartbeat 需要的配置文件 
  4. # cd /usr/share/doc/heartbeat-ldirectord-2.1.4/ 
  5. # cp ldirectord.cf /etc/ha.d 
  6. *ldirectord 资源需要的配置文件 

2)配置文件的修改

   
   
   
   
  1. #vim authkeys 
  2. auth 1 
  3. 1 md5 SFADASDWFGQE 
  4. #chmod 600 authkeys 
  5. *节点验证身份的文件,修改权限,必须为600或400 
  6. #vim ha.cf 
  7. bcast eth0 
  8. *从这个借口发起广播 
  9. ping 172.16.0.1 
  10. *ping的IP不要指定为节点自己的ip,通过ping这个ip实现仲裁 
  11. node node1.7ing.com 
  12. node node11.7ing.com 
  13. *添加我们的俩个节点 
  14. crm on 
  15. *开启 crm 
  16. #vim ldirectord.cf 
  17. quiescent=yes 
  18. # Sample for an http virtual service 
  19. virtual=172.16.99.1:80 
  20.         real=172.16.98.2:80 gate 
  21.         real=17.16.98.3:80 gate 
  22.         fallback=127.0.0.1:80 gate 
  23.         service=http 
  24.         request="index.html" 
  25.         receive="ok" 
  26.    # virtualhost=some.domain.com.au 
  27.         scheduler=rr 
  28.         #persistent=600 
  29.         #netmask=255.255.255.255 
  30.         protocol=tcp 
  31.         checktype=negotiate 
  32.         checkport=80 
  33.   # request="index.h 
  34. #scp -p authkeys ha.cf haresource ldirectord.cf node11:/etc/ha.d

  35. *复制配置文件到另一节点,节省配置

  36. #service heartbeat start

    #ssh node11 'service heartbeat start'

3)RS的配置

#echo 'ok' >> /var/www/html/index.html

添加网页中用于状态检测的信息

4)为登录图形界面的用户设置密码为redhat

   
   
   
   
  1. # passwd hacluster 
  2. Changing password for user hacluster. 
  3. New UNIX password:  
  4. BAD PASSWORD: it is based on a dictionary word 
  5. Retype new UNIX password:  
  6. passwd: all authentication tokens updated successfully. 
  7. #hb_gui &
  8. *开启图形配置界面,后台运行

2.3图像界面中的配置

1)由于3个资源必须在一个节点上我们可以将他们定义为组

heartbeat+Web负载均衡,健康状态检测_第2张图片

    右键点击Resource,选择添加资源,类型为组,选择ok,接下来

 

heartbeat+Web负载均衡,健康状态检测_第3张图片

   定义组的名字,点击ok,直接进入组中,就可以定义组的第一个资源。

2)首先vip资源的定义

heartbeat+Web负载均衡,健康状态检测_第4张图片

   点击Add Parameter,对资源属性进行定义,我们做的是lvs的高可用,所以lvs_support 添加上,是ip地址支持LVS。

   点击Add按钮就完成了一个资源的定义。

3)ipvsadm资源的定义

   在Resourse 下就会显示我们的组了,组中已经有一个我们定义的vip资源了,右键点击组,添加我们的新资源。

 

heartbeat+Web负载均衡,健康状态检测_第5张图片

     使用lsb,直接Add即可,但是要保证你的两个节点上有下面两个文件:

     1)/etc/rc.d/init.d/ipvsadm

     2)/etc/sysconfig/ipvsadm 将我们定义的ipvsadm规则保存在这个文件当中

     两个节点上的文件必须保持一样

4)ld资源的配置

heartbeat+Web负载均衡,健康状态检测_第6张图片

2.4验证下

1)查看资源运行的结果

heartbeat+Web负载均衡,健康状态检测_第7张图片

2)变换节点,右键node1,有一个standby的选项

 

heartbeat+Web负载均衡,健康状态检测_第8张图片

 资源都跑到node11上去了