HeartBeat+LVS+Ldirectord高可用负载均衡解决方案

简介:

HeartBeat+LVS+Ldirectord高可用负载均衡解决方案 

1、通过Heartbeat来实现HA群集,已达到实时监控主Director的运行状态,一旦主状态死掉,处于备份状态的Director立即激活为主状态,实现高可用性。

2、通过了ldirectord实时监控Director后方的real server的运行状态,一旦real server的相关服务死掉,或者网卡坏掉的话,Director将不会再将客户的请求定向到该real server上。

3、LVSDR

拓扑如下:

Server1ip192.168.2.100   接口lo:0vip192.168.2.1

Server2ip192.168.2.200   接口lo:0vip192.168.2.1

Directoreth0ip192.168.2.10

            Eth1ip192.168.3.1

Directoreth0ip192.168.2.20

            Eth1ip192.168.3.2

Vip 192.168.2.1

Director1的配置

1、分别配置ip地址及主机名

Lo:0接口ip地址的配置

修改Director的主机名

Hostname  director1  及编辑/etc/sysconfig/network

hosts文件如下:

其他的略

2、安装heartbeat所需的软件以实现HA如下:

  heartbeat-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 --nogpgcheck

yum localinstall -y heartbeat-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 --nogpgcheck

3、将authkeys  haresources  ha.cf这三个文件拷贝到/etc/ha.d/目录下,并依次编辑如下:

cd /usr/share/doc/heartbeat-2.1.4/

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

cd /etc/ha.d/

vim ha.cf

 bcast  eth1    ---指明心跳探测接口

 node  Director1

 node  Director2

vim authkeys 

auth 3

3 md5 0b8e3683637d469bd73abc7e19e2156c  --md5验证 (后边的md5密文随意只要两个Director的一样)

chmod 600 authkeys

vim haresources

Director1  192.168.2.1/24/eth0  ldirectord::ldirectord.cf   --Director1 是指明处于主状态的director192.168.2.1 vip ldirectordheartbeat控制的服务 ,ldirectord.cf ldirectord要调用的参数。  

4、ldirectord.cf拷贝到/etc/ha.d/目录下

cd /usr/share/doc/heartbeat-ldirectord-2.1.4/

cp ldirectord.cf /etc/ha.d/

cd /etc/ha.d/

vim ldirectord.cf 修改如下:

Fallback=127.0.0.1:80 --real server都死掉的话,vip指向本机

persistent=600    ---这个是持久连接

checktype=negotiate  --检测类型 negotiate,表示DR发送请求,realserver恢复特定字符串才表示服务正常;connect,表示DR能够连线realserver即正常。 

Ldirectord通过访问含有OK内容的.web.html这个web页面来达到监测后方的real server 的,当后方的server死掉或这是web服务停止,自然就就访问不到.web.html这个页面了。

5、确保ipvsadm没有规则,并处于stop状态和开机不启动

ipvsadm -C

service ipvsadm save

service ipvsadm stop

chkconfig ipvsadm off

如果是才按装ipvsadm执行一下service ipvsadm save就可以了

Director2的配置(2--5步)完全相同,(略)

Real server1的配置

1、安装httpd,配置好web服务

2、/var/www/html/目录下新建上述的.web.html文件

cd /var/www/html/

touch .web.html

echo "OK" >.web.html 

3、配置arp_ignorearp_announce参数禁用arp广播响应

echo "net.ipv4.conf.eth0.arp_ignore = 1" >>/etc/sysctl.conf 

echo "net.ipv4.conf.eth0.arp_announce = 2" >>/etc/sysctl.conf

sysctl  -p

4、配置路由

route add  -host 192.168.2.1 dev eth0

5、开启httpd服务

Real server2的配置与Real server1的配置一样

director上依次启动heartbeat

Director1上增加了eth0:0接口如下:

规则也已启用

Director2上并没有这些,因为它是处于备份状态的

假如后方的一个serverhttpd服务停了,主Director就访问不到.web.html这个页面了,就会将删除到该server的定向规则。

只是权重变为了“0”,并没有将这条规则删除,需要将静默模式改为no如下:

vim ldirectord.cf

quiescent=no

重启heartbeat 定向到停止httpd服务的规则被删除了如下:

!!!



本文转自 abc16810 51CTO博客,原文链接:http://blog.51cto.com/abc16810/1107946

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
负载均衡 前端开发 JavaScript
LVS-DR模式、keepalived、Nginx与Tomcat合作,打造动静分离,高效负载均衡与高可用性
为了采用这样的架构,你需要对LVS-DR、Keepalived、Nginx与Tomcat有一定的理解和掌握,同时也需要投入一些时间去研究和配置,但是一旦你把它运行起来,你将会发现,这一切都是值得的。
497 11
|
负载均衡 算法 关系型数据库
大数据新视界--大数据大厂之MySQL数据库课程设计:MySQL集群架构负载均衡故障排除与解决方案
本文深入探讨 MySQL 集群架构负载均衡的常见故障及排除方法。涵盖请求分配不均、节点无法响应、负载均衡器故障等现象,介绍多种负载均衡算法及故障排除步骤,包括检查负载均衡器状态、调整算法、诊断修复节点故障等。还阐述了预防措施与确保系统稳定性的方法,如定期监控维护、备份恢复策略、团队协作与知识管理等。为确保 MySQL 数据库系统高可用性提供全面指导。
|
负载均衡 网络协议 Linux
LVS,软负载均衡
LVS(Linux Virtual Server)是一项广泛应用的负载均衡技术,由章文嵩博士于1998年发起,自Linux 2.4.24版本起成为官方内核的一部分。LVS通过四层负载均衡技术实现高性能、高可用的服务器集群,支持多种调度算法和工作模式(如D-NAT、full-NAT、IP隧道、DR),适用于HTTP、数据库等应用。相比7层负载均衡器(如Nginx、HAProxy),LVS具有更高的并发处理能力和更低的资源消耗,适合大规模流量分发。本期文章详细介绍了LVS的工作原理、优势与不足,并对比了常见的负载均衡产品,帮助读者根据具体需求选择合适的解决方案。
2627 6
LVS,软负载均衡
|
存储 负载均衡 NoSQL
搭建高可用及负载均衡的Redis
通过本文介绍的高可用及负载均衡Redis架构,可以有效提升Redis服务的可靠性和性能。主从复制、哨兵模式、Redis集群以及负载均衡技术的结合,使得Redis系统在应对高并发和数据一致性方面表现出色。这些配置和技术不仅适用于小型应用,也能够支持大规模企业级应用的需求。希望本文能够为您的Redis部署提供实用指导和参考。
980 9
|
负载均衡 算法 Linux
LVS+Keepalived:实现高效软负载均衡的利器
本文介绍了如何使用LVS(Linux Virtual Server)和Keepalived搭建高可用负载均衡集群。LVS通过不同调度算法将请求转发给后端服务器,而Keepalived基于VRRP协议实现服务高可用,避免IP单点故障。具体步骤包括环境准备、安装配置ipvsadm和Keepalived、启动服务及测试。文中还详细解释了配置文件中的关键参数,并提供了故障转移测试方法。最后,文章简要对比了软件、硬件和云负载均衡方案的特点,帮助读者选择合适的负载均衡策略。
2149 4
|
运维 负载均衡 网络协议
LVS+Keepalived 负载均衡
LVS+Keepalived 负载均衡
537 8
LVS+Keepalived 负载均衡
|
域名解析 运维 负载均衡
LVS+Keepalived 负载均衡(二)28-1
【8月更文挑战第28天】LVS+Keepalived 负载均衡 配置 LVS VIP
374 6
|
负载均衡 网络协议
使用LVS搭建集群实现负载均衡(二)安装使用
【8月更文挑战第8天】使用LVS搭建集群实现负载均衡(二)安装使用
343 5
|
存储 负载均衡 算法
使用LVS搭建集群实现负载均衡(一)
【8月更文挑战第8天】使用LVS搭建集群实现负载均衡
824 5
|
负载均衡 NoSQL 应用服务中间件
搭建高可用及负载均衡的Redis
【7月更文挑战第10天】
946 1