Lvs-DR+Heartbeat+ldirectord+web实现高可用性群集 推荐
2013-10-21 16:10
696 查看
Lvs-DR+Heartbeat+ldirectord高可用性群集
Heartbeat 四个层次 1)messaging layer 心跳探测测 /etc/ha.d/ha.cf 2)ccm 成员管理 /etc/ha.d/authkeys 3)crm 群集资源管理 /etc/ha.d/haresources 控制脚本 4.)resources
首先请保证各个节点之间的物理连通性。试验目的:实现HA高可用性群集系统,LSA-DR直接路由进行负载均衡以及Directory和RealServer的健康探测。一、配置Directory1:1、确保director能够相互解析到对方的DNS需要编辑vim /etc/hosts.
2.配置director1的本地主机名[root@node1 ~]# vim /etc/sysconfig/network
3.配置eth0地址,及eth1来作为两个director之间的心跳探测.
4挂载本地光盘,配置本地YUM
5.安装Heartbeat的软件包 heartbeat-2.1.4-9.el5.i386.rpmheartbeat-devel-2.1.4-9.el5.i386.rpmheartbeat-gui-2.1.4-9.el5.i386.rpmheartbeat-ldirectord-2.1.4-9.el5.i386.rpmheartbeat-pils-2.1.4-10.el5.i386.rpmheartbeat-stonith-2.1.4-10.el5.i386.rpmlibnet-1.1.4-3.el5.i386.rpmperl-MailTools-1.77-1.el5.noarch.rpm //下载地址:http://yunpan.cn/QbFZ4REqCjP8w[root@node1 ~]# cd Heartbeat //存放Heartbeat的软件包目录[root@node1 heartbeat]# #yum localinstall *.rpm --nopgpcheck
6配置Heartbeat服务① 从模版中拷贝配置文件到Heartbeat对应的/etc/目录下[root@node1 heartbeat]# # cd /usr/share/doc/heartbeat-2.1.4/[root@node1 heartbeat]# # cp ha.cf /etc/ha.d/[root@node1 heartbeat]# # cp haresources /etc/ha.d/[root@node1 heartbeat]# # cp authkeys /etc/ha.d/
② 编辑Directory的心跳探测配置文件ha.cf[root@node1 ha.d]# vim ha.cf 第一层
③ 配置验证密钥(位了实现双方身份验证)[root@node1 ha.d]# vim authkeys 第二层
[root@node1 ha.d]# chmod 600 /etc/ha.d/authkeys//注意:如果不修改权限的话,启动Heartbeat就会出错。④ 编辑Heartbeat资源管理器:(用于管理Directory上的服务,如web,ftp,多个资源之间需要用“::来分隔”)[root@node1 ha.d]# vim haresources 第三层
安装ipvsadm服务:注意在前面,使用yum安装所有的rpm时,其中一个软件包heartbeat-ldirectord.rpm会依赖与ipvsadm,所以ipvsadm也就安装了。如果无法确定是否安装,可以使用命令查看:[root@node1 heartbeat]# # rpm -qa |grep ipvsadm[root@node1 ~]# rpm -ivh /mnt/cdrom/Cluster/ipvsadm-1.24-10.i386.rpm
⑤ 配置ipvs转发表
//保存ipvs规则[root@node1 ~]# service ipvsadm save[root@node1 ~]# chkconfig --list ipvsadm//禁止ipvs开机自动起来[root@node1 ~]# chkconfig ipvsadm on//将ipvsadm的控制脚本复制到heartbeat资源管理目录,为了使heartbeat能对ipvsadm进行控制[root@node1 ~]# cp /etc/init.d/ipvsadm /etc/ha.d/resource.d/ 第四层[root@node1 ~]# service heartbeat start//启动heartbeat服务//通过查看日志文件,来观察heartbeat运行状况
//ifconfig来观察现在的VIP地址192.168.2.100是否在node1上
二、配置动态的ipvs规则表以及Directory之间的健康探测 在前面的试验中,我们使用的手动添加Directory的ipvs规则表。这样在Directory中的ipvsadm中就好永久保存,可是有的时候后方的RealServer可能会出现宕机,如果使用的轮询机制的话,Directory会轮流的将用户的请求转发给后方的RealServer,可是某个Server此时不能工作。这样以来,效率就会大大降低。为了实现ipvs规则表的动态更新(当某个Server宕机后,Directory会主动删除该Server的规则,当它又恢复之后,主动添加这个规则),我们可以使用Heartbeat中的一个插件ldirectord服务。[root@node1 ~]# rpm -ivh heartbeat-ldirectord-2.1.4-9.el5.i386.rpm ① 删除手动添加的ipvsadm规则条目[root@node1 heartbeat]# rm /etc/sysconfig/ipvsadm②关闭heartbeat服务:[root@Directory1 heartbeat]# service heartbeat stop③拷贝ldirectord的控制脚本到heartbeat资源控制目录中[root@node1 ~]# cp /usr/share/doc/heartbeat-ldirectord-2.1.4/ldirectord.cf /etc/ha.d/(相当于ldirectord的配置文件)[root@node1 ~]# vim /etc/ha.d/ldirectord.cf
//注:静默模式指的是不管后方有没有apache服务器ipvs链表都会显示后方服务器链表,这里我们需要把静默模式更改为no,[root@node1 ha.d]# vim haresources
[root@node1 ha.d]# chkconfig ldirectord off
三、配置Directory2说明:Directory2上的配置和Directory1基本一样。需要注意的地方是:①Directory2的主机名②Directory2的本地DNS③Directory2上不用配置eth0:01、编辑Heartbeat资源管理器:[root@Directory2]# vim /etc/ha.d/haresources
2、安装完Heartbeat后,启用Heartbeat服务:[root@Directory2]# service heartbeat start[root@Directory2]# ipvsadm -ln
//Directory2处于备份状态,所以ipvs中虽然配置了转发规则,但是目前并未启用。
四、配置apache服务器
1、安装httpd[root@Server1]# mkdir /mnt/cdrom[root@Server1]# mount /dev/cdrom /mnt/cdrom[root@Server1]# rpm -ivh /mnt/cdrom/Server/httpd-2.2.3-31.el5.i386.rpm2、创建Server1测试页面;[root@Server1]# cd /var/www/html[root@Server1 html]# echo “Server1”>index.html3、启动httpd服务:[root@Server1]# service httpd start4、探测页面[root@localhost ~]# vim /var/www/html/.test.html写入OK
五、配置apache2服务器
说明:Server2的配置和Server1的配置基本相同。[root@Server2]# cd /var/www/html[root@Server2 html]# echo “Server2”>index.html[root@Server1]# service httpd start探测页面[root@localhost ~]# vim /var/www/html/.test.html写入OK
测试:图30
//注:如果探测页面没有探测出后方服务器,则ipvs链表是无法显示后方服务器地址
Heartbeat 四个层次 1)messaging layer 心跳探测测 /etc/ha.d/ha.cf 2)ccm 成员管理 /etc/ha.d/authkeys 3)crm 群集资源管理 /etc/ha.d/haresources 控制脚本 4.)resources
首先请保证各个节点之间的物理连通性。试验目的:实现HA高可用性群集系统,LSA-DR直接路由进行负载均衡以及Directory和RealServer的健康探测。一、配置Directory1:1、确保director能够相互解析到对方的DNS需要编辑vim /etc/hosts.
2.配置director1的本地主机名[root@node1 ~]# vim /etc/sysconfig/network
3.配置eth0地址,及eth1来作为两个director之间的心跳探测.
4挂载本地光盘,配置本地YUM
5.安装Heartbeat的软件包 heartbeat-2.1.4-9.el5.i386.rpmheartbeat-devel-2.1.4-9.el5.i386.rpmheartbeat-gui-2.1.4-9.el5.i386.rpmheartbeat-ldirectord-2.1.4-9.el5.i386.rpmheartbeat-pils-2.1.4-10.el5.i386.rpmheartbeat-stonith-2.1.4-10.el5.i386.rpmlibnet-1.1.4-3.el5.i386.rpmperl-MailTools-1.77-1.el5.noarch.rpm //下载地址:http://yunpan.cn/QbFZ4REqCjP8w[root@node1 ~]# cd Heartbeat //存放Heartbeat的软件包目录[root@node1 heartbeat]# #yum localinstall *.rpm --nopgpcheck
6配置Heartbeat服务① 从模版中拷贝配置文件到Heartbeat对应的/etc/目录下[root@node1 heartbeat]# # cd /usr/share/doc/heartbeat-2.1.4/[root@node1 heartbeat]# # cp ha.cf /etc/ha.d/[root@node1 heartbeat]# # cp haresources /etc/ha.d/[root@node1 heartbeat]# # cp authkeys /etc/ha.d/
② 编辑Directory的心跳探测配置文件ha.cf[root@node1 ha.d]# vim ha.cf 第一层
③ 配置验证密钥(位了实现双方身份验证)[root@node1 ha.d]# vim authkeys 第二层
[root@node1 ha.d]# chmod 600 /etc/ha.d/authkeys//注意:如果不修改权限的话,启动Heartbeat就会出错。④ 编辑Heartbeat资源管理器:(用于管理Directory上的服务,如web,ftp,多个资源之间需要用“::来分隔”)[root@node1 ha.d]# vim haresources 第三层
安装ipvsadm服务:注意在前面,使用yum安装所有的rpm时,其中一个软件包heartbeat-ldirectord.rpm会依赖与ipvsadm,所以ipvsadm也就安装了。如果无法确定是否安装,可以使用命令查看:[root@node1 heartbeat]# # rpm -qa |grep ipvsadm[root@node1 ~]# rpm -ivh /mnt/cdrom/Cluster/ipvsadm-1.24-10.i386.rpm
⑤ 配置ipvs转发表
//保存ipvs规则[root@node1 ~]# service ipvsadm save[root@node1 ~]# chkconfig --list ipvsadm//禁止ipvs开机自动起来[root@node1 ~]# chkconfig ipvsadm on//将ipvsadm的控制脚本复制到heartbeat资源管理目录,为了使heartbeat能对ipvsadm进行控制[root@node1 ~]# cp /etc/init.d/ipvsadm /etc/ha.d/resource.d/ 第四层[root@node1 ~]# service heartbeat start//启动heartbeat服务//通过查看日志文件,来观察heartbeat运行状况
//ifconfig来观察现在的VIP地址192.168.2.100是否在node1上
二、配置动态的ipvs规则表以及Directory之间的健康探测 在前面的试验中,我们使用的手动添加Directory的ipvs规则表。这样在Directory中的ipvsadm中就好永久保存,可是有的时候后方的RealServer可能会出现宕机,如果使用的轮询机制的话,Directory会轮流的将用户的请求转发给后方的RealServer,可是某个Server此时不能工作。这样以来,效率就会大大降低。为了实现ipvs规则表的动态更新(当某个Server宕机后,Directory会主动删除该Server的规则,当它又恢复之后,主动添加这个规则),我们可以使用Heartbeat中的一个插件ldirectord服务。[root@node1 ~]# rpm -ivh heartbeat-ldirectord-2.1.4-9.el5.i386.rpm ① 删除手动添加的ipvsadm规则条目[root@node1 heartbeat]# rm /etc/sysconfig/ipvsadm②关闭heartbeat服务:[root@Directory1 heartbeat]# service heartbeat stop③拷贝ldirectord的控制脚本到heartbeat资源控制目录中[root@node1 ~]# cp /usr/share/doc/heartbeat-ldirectord-2.1.4/ldirectord.cf /etc/ha.d/(相当于ldirectord的配置文件)[root@node1 ~]# vim /etc/ha.d/ldirectord.cf
//注:静默模式指的是不管后方有没有apache服务器ipvs链表都会显示后方服务器链表,这里我们需要把静默模式更改为no,[root@node1 ha.d]# vim haresources
[root@node1 ha.d]# chkconfig ldirectord off
三、配置Directory2说明:Directory2上的配置和Directory1基本一样。需要注意的地方是:①Directory2的主机名②Directory2的本地DNS③Directory2上不用配置eth0:01、编辑Heartbeat资源管理器:[root@Directory2]# vim /etc/ha.d/haresources
2、安装完Heartbeat后,启用Heartbeat服务:[root@Directory2]# service heartbeat start[root@Directory2]# ipvsadm -ln
//Directory2处于备份状态,所以ipvs中虽然配置了转发规则,但是目前并未启用。
四、配置apache服务器
1、安装httpd[root@Server1]# mkdir /mnt/cdrom[root@Server1]# mount /dev/cdrom /mnt/cdrom[root@Server1]# rpm -ivh /mnt/cdrom/Server/httpd-2.2.3-31.el5.i386.rpm2、创建Server1测试页面;[root@Server1]# cd /var/www/html[root@Server1 html]# echo “Server1”>index.html3、启动httpd服务:[root@Server1]# service httpd start4、探测页面[root@localhost ~]# vim /var/www/html/.test.html写入OK
五、配置apache2服务器
说明:Server2的配置和Server1的配置基本相同。[root@Server2]# cd /var/www/html[root@Server2 html]# echo “Server2”>index.html[root@Server1]# service httpd start探测页面[root@localhost ~]# vim /var/www/html/.test.html写入OK
测试:图30
//注:如果探测页面没有探测出后方服务器,则ipvs链表是无法显示后方服务器地址
相关文章推荐
- ubuntu server 10.4 下LVS-DR+heartbeat +Ldirectord实现web服务高可性负载均衡实验
- 基于lvs的DR模型搭建高可用的web服务,并部署wordpress,(附有脚本实现健康状态检测的代码) 推荐
- IPVS-DR+heartbeat+ldirectord实现高可用负载均衡集群 推荐
- LVS+Heartbeat+ldirectord构建高可用负载均衡群集(DR模式)
- 手把手让你实现开源企业级web高并发解决方案(lvs+heartbeat+varnish+nginx+eAccelerator+memcached)续 推荐
- 基于heartbeat v2和heartbeat-ldirectord实现LVS(DR)中Director的高可用
- HA 高可用性群集--(heartbeat,LVA-DR,ldirectord)
- LVS之高可用性群集实现 推荐
- keepalived+nginx+lvs 实现web群集高可用性
- Clvm+iscsi&GFS整合lvs-dr+Heartbeat+ldirectory实现高可用性负载均衡集群(上)
- Clvm+iscsi&GFS整合lvs-dr+Heartbeat+ldirectory实现高可用性负载均衡集群(下)
- Heartbeat-ldirectord+LVS-DR实现Director高可用
- HA(heartbeat)主备模式实现lvs群集的高可用性
- 利用LVS+heartbeat实现高可用性群集
- heartbeat+heartbeat-gui+ldirectord+httpd实现lvs(DR)-Director高可用集群服务
- 基于heartbeat v2和heartbeat-ldirectord实现LVS(DR)中Director的高可用
- 基于LVS-DR的WEB服务的负载均衡实现
- LVS(DR)+ldirectord 实现负载平衡
- Heartbeat+Ldirectord+LVS+FreeNas实现HA和LB群集
- haproxy+keepalived实现web集群的高可用性 推荐