linux利用lvs+Keepalived实现负载均衡
Posted 黄阿码
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux利用lvs+Keepalived实现负载均衡相关的知识,希望对你有一定的参考价值。
负载均衡:两台(一主一备) LVS + Keepalived+三台HTTP服务器
这是我的第一台HTTP服务器【这里使用的是现成lnmp,然后复制出三台一模一样的】
在每台(HTTP服务器)真实服务器网上上添加LO:0接口,并设置虚拟IP在此接口上
记住:./etc/rc.d/init.d/functions这句脚本是没有任何的空格的,网上有出现空格的,百分百是复制出错
这样还会出现另外一个错误
这时候需要在脚本最前边写上让其变成执行脚本:
#chkconfig:
2345
10
90
#description :realserver ....
也就是:
至于什么意思,自己搜,我这里就不做啰嗦
如图所示:
开始搭建负载均衡
LVS中提供了八种不同的调度算法
详情请参考:http://blog.csdn.net/u014649204/article/details/25115039
1:轮叫调度(Round-Robin Scheduling)
2: 加权轮叫调度(Weighted Round-Robin Scheduling)
3:最小连接调度(Least-Connection Scheduling)
4:加权最小连接调度(Weighted Least-Connection Scheduling)
5:基于局部性的最少链接(Locality-Based Least Connections Scheduling)
6:带复制的基于局部性最少链接(Locality-Based Least Connections with Replication Scheduling)
7:目标地址散列调度(Destination Hashing Scheduling)
8:源地址散列调度(Source Hashing Scheduling)
9:最短预期延时调度(Shortest Expected Delay Scheduling)
10:不排队调度(Never Queue Scheduling)
对应: rr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq
LVS负载均衡主机:
先看一下CentOs内核,如果内核是2.6版本以后,那么LVS虚拟机已经存在于内核中。
说一下什么是Keepalived?
keepalived的作用是检测web服务器的状态,如果有一台web服务器死机或者工作出现故障,keepalived将会检测到,并将有故障的web服务器从系统中剔除,当web服务器工作正常之后,keepalived自动将web服务器加入到集群中,这些工作都会自动完成
我们用yum install keepalived
安装完成之后,使用rpm -ql 命令,查看一下Keepalived的安装信息
根据提示信息里Keepalived的配置文件路径,覆盖配置文件,写入以下命令。详细说明在最后说明。
配置文件位置:/
然后启动Keepalived服务,有时候虽然提示启动成功,但是未必,因为Keepalive并没有对配置文件的校验功能,最好查看一下日志。
日志这里我就不说了,因为其他教程都是这样的,我这里使用的是ipvadm,使用说明我放在这
简易使用方式,如图
这里能够观测到三台http的访问状况
启动成功之后,浏览器访问192.168.159.128观察变化,这里分别是192.168.159.130/131/132
然后我们试着关掉一台HTTP服务器,观察访问发现,其他两台仍然可以正常访问,然后再启动一下刚才关闭的服务器,又恢复了之前。
这里很多朋友肯定会出现一个ping得通却无法访问的问题,我们需要注意防火墙的问题,所以我们需要在各自的HTTP机器将主机:192.168.159.128的80端口开通【如果粗暴点就关闭防火墙吧】
#iptables -A PREROUTING -t nat -p tcp -d 192.168.159.128 --dport 80 -j REDIRECT
接下来做负载均衡备用机
配置完成之后,然后试着关掉主机,继续访问192.168.159.128,一切正常,主机开机之后,主机继续当主机,备机继续待命
最后还出现一个问题,就是当所有的HTTP机器都service realserver start后会出现无法访问的情况,但所有的都使用了service realserver stop后却可以完美访问,自然切换,有类似问题的网友如果知道解决问题,烦请告知我,我继续完善该博文
OK!完美!结束!
以上是关于linux利用lvs+Keepalived实现负载均衡的主要内容,如果未能解决你的问题,请参考以下文章