您的位置:首页 > 运维架构 > 网站架构

LVS+Keepalived实现高可用负载均衡

2013-09-27 12:35 323 查看

如需转载请看作者声明,本文转载http://502245466.blog.51cto.com/7559397/1302343;
概述
随着近年来互联网的快速发展;而众多需要提供给用户访问的WEB服务器,必须保证每天24小时不间断的提供服务,随着访问量的增加,又有哪些好的WEB构架能实现高可用负载均衡,而且又是免费的呢?答案是肯定是有了,而这种架构就是LVS+Keepalived

Keepalived简介
什么是Keepalived:keepalived可以实现服务的高可用或热备,用来防止单点故障的问题;而Keepalived的核心VRRP协议,VRRP协议主要实现了在路由器或三层交换机处的冗余;Keepalived就是使用VRRP协议来实现高可用的;下面一起来看一下Keepalived的原理图:


Keepalived启动后会有三个进程:
父进程:内存管理,子进程管理
子进程:VRRP子进程
子进程:healthchecker子进程
由上图可知:两个子进程都被系统WatchDog看管,两个子进程各自复杂自己的事,healthchecker子进程复杂检查各自服务器的健康程度,例如HTTP,LVS等,如果healthchecker子进程检查到MASTER上服务不可用了,就会通知本机上的VRRP子进程,让他删除通告,并且去掉虚拟IP,转换为BACKUP状态环境介绍:


系统版本:CentOS6_x86_64LVS_DR模式:WEB1与WEB2服务器的网关不能设置为LVS调度器一、安装配置LVS+Keepalived1、在Master与Backup服务器上分别安装Ipvsadm、Keepalived软件包、这里使用的是rpm包安装方式
2、修改Master的主配置文件
3、将Master服务器上的主配置文件拷贝到Backup服务器稍作修改
4、启动两台服务器上的Keepalived服务并设置为开机自启动
5、开启Master与Backup服务器的路由转发功能
二、安装Httpd并设置好Realserver1、为后端服务器WEB1安装Httpd服务并启动服务,这里使用的rpm包安装
2、访问测试WEB1服务器

3、为后端服务器WEB2安装Httpd服务并启动服务,这里使用的rpm包安装
4、访问测试WEB2服务器

5、为两台Realserver提供Sysv格式的脚本来自动修改内核参数与虚拟IP并运行脚本
三、验证服务

1、查看当前Master服务器的IP地址及LVS规则
2、访问测试服务器是否正常提供服务








由上可知,使用的是rr调度算法,在访问测试时可能需要多访问几次或换个浏览器来测试访问
3、模拟Master服务器出现故障,将Master主机上的Keepalived服务停止,查看Backup服务器是否接管所有服务
4、再次访问测试服务器是否正常提供服务






5、假如Master服务器修复好已重新上线,则虚拟IP地址与LVS规则会重新配置到Master服务器上而在Backup服务器上删除
6、如果后端Realserver出现故障,则LVS规则会清除相应Realserver的规则

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  lvs+keepalive