Heartbeat群集的搭建与LVS的结合

时间:2021-10-12 03:07:02

HA的简介:

HA:High Availability Cluster 高可用性群集 高可用集群是指一组通过硬件和软件连接起来的独立计算机,它们在用户面前表现为一个单一系统,在这样的一组计算机系统内部的一个或者多个节点停止工作,服务会从故障节点切换到正常工作的节点上运行,不会引起服务中断。从这个定义可以看出,集群必须检测节点和服务何时失效,何时恢复为可用。这个任务通常由一组被称为“心跳”的代码完成。在Linux-HA里这个功能由一个叫做heartbeat的程序完成。 Heartbeat 项目是 Linux-HA 工程的一个组成部分,它实现了一个高可用集群系统。心跳服务和集群通信是高可用集群的两个关键组件,在 Heartbeat 项目里,由 heartbeat 模块实现了这两个功能。 heartbeat (Linux-HA)的工作原理:heartbeat最核心的包括两个部分,心跳监测部分和资源接管部分,心跳监测可以通过网络链路和串口进行,而且支持冗 余链路,它们之间相互发送报文来告诉对方自己当前的状态,如果在指定的时间内未受到对方发送的报文,那么就认为对方失效,这时需启动资源接管模块来接管运 行在对方主机上的资源或者服务。[ 应用案例一(web服务器的高可用性)

Heartbeat群集的搭建与LVS的结合 

Web1上的基本配置:

vim /etc/sysconfig/network   修改主机名称 HOSTNAME=web1.a.com 修改主机名hostname web1.a.com .vim /etc/hosts 声明相关信息 192.168.100.22   web1.a.com 192.168.100.33 web2.a.com 挂载光盘mount /dev/cdrom /mnt/cdrom/ yum install -y httpd 安装apache cd /var/www/html 进入目录 echo "web1.a.com" >index.html 编写网页显示文本 service httpd start 启动apache yum localinstall -y heartbeat-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   --nogpgcheck 安装heartbeat相关软件包      --nogpgcheck用来回避所需要的加密密匙 cd /etc/ha.d/ 进入生成目录可以查看相关文件 cd /usr/share/doc/heartbeat-2.1.4/ cp ha.cf /etc/ha.d/ cp haresources /etc/ha.d/ cp authkeys /etc/ha.d/ cd /etc/ha.d/ 切换目录 vim ha.cf 修改文件定义心跳探测机制 在96行增加bcast   eth1     //利用广播来实行 214 node    web1.a.com 215 node    web2.a.com dd if=/dev/random bs=512 count=1 |openssl md5 产生一组随机值,通过MD5加密值 vim authkeys 编辑文件 auth 3 3 md5 b0e2cec91e71fd451e8aa053f949b8ba   增加内容并把产生的MD5值写入 chmod 600 authkeys 更改文件的权限 vim haresources 编辑文件 在45行添加web1.a.com 192.168.100.22/24/eth0/192.168.100.255 httpd 待到web2的heartbeat安装完成后,把已经编写好的配置文件拷贝到web2上的合适位置 scp ha.cf web2.a.com:/etc/ha.d/ scp haresources web2.a.com:/etc/ha.d/ scp authkeys web2.a.com:/etc/ha.d/ scp /etc/init.d/httpd web2.a.com:/etc/ha.d/resource.d/ service heartbeat start 启动heartbeat服务 Web2上的配置与Web1基本相同,安装heartbeat时scp web1.a.com:/root/heartbeat/* .rpm ./ 利用此命令可以把web1的相关文件都拷贝到本机器安装heartbeat相关软件包 双方的heartbeat都正确启动后可以查看机器web1的虚拟网卡自动增加地址为192.168.100.100,表明确认接点web1为主要节点

Heartbeat群集的搭建与LVS的结合 

Lvs与heartbeat的结合使用Heartbeat群集的搭建与LVS的结合 yum remove httpd 卸载apache yum install ipvsadm 安装ipvs ipvsadm -A -t 192.168.100.100:80 -s rr 添加规则 ipvsadm -a -t 192.168.100.100:80 -r 192.168.100.200 –g ipvsadm -a -t 192.168.100.100:80 -r 192.168.100.201 –g service ipvsadm save 保存规则 scp /etc/sysconfig/ipvsadm web2.a.com:/etc/sysconfig/ 把规则文件拷贝给web2 cd /etc/ha.d/ vim haresources 修改45行web1.a.com 192.168.100.22/24/eth0/192.168.100.255 ipvsadm cp /etc/init.d/ipvsadm resource.d/ scp haresources web2.a.com:/etc/ha.d/ scp /etc/init.d/ipvsadm web2.a.com:/etc/ha.d/resource.d/ 把修改好的文件拷贝到web2的相关位置 service heartbeat start 两边都启动heartbeat cd /usr/lib/heartbeat/ ./hb_standby 在web1上执行此命令,可在web2上查看新增虚拟vip网卡 ./hb_takeover 在web1上执行此命令,web2上的虚拟vip消失,web1上的虚拟vip网卡重新获得 外部网络访问的地址都是192.168.100.100 Rs-1与Rs-2与上篇博客配置基本相同

本文出自 “孙恩涛的浅薄” 博客,请务必保留此出处http://sunentao.blog.51cto.com/5628536/1025552