lvs服务器需要开启web服务么_lvs负载均衡系统(dr模式)部署与验证

aa2495d1dd836e7be97c61b589f48860.png

一、lvs负载均衡简介

LVS(Linux Virtual Server)是最常用的开源负载均衡之一,LVS已经被集成到Linux内核模块,具有性能高的特点。终端互联网用户从外部访问企业的负载均衡服务器,也就是LVS调度器,调度器根据自己预设的算法决定将该请求发送给后端的某台Web服务器。

LVS调度算法非常灵活,常用有以下几种

1.轮询调度

轮询调度(Round Robin),最大的特点就是实现简单。轮询算法适合所有服务器的性能相同,调度器会将收到的请求平均分配到每个真实服务器。

2.加权轮询调度

加权轮询(Weight Round Robin),主要是对轮询算法的一种优化与补充,WRR会考虑到每台服务器的性能,并给每台服务器添加一个权值,权值越高的服务器,将处理更多的请求。

3.最小连接调度

最小连接(Least Connections ),是把新的连接请求分配到当前连接数最小的服务器。

4.加权最小连接调度

加权最少连接(Weight Least Connections),作为最小连接的补充,和wrr一样,可以给服务器分配不同的权值。

5.源地址散列调度

源地址散列调度(Source Hashing ),先根据请求的源IP地址,分配固定的服务器。如果第一次连接的服务器未超载,那么相同的源地址一直连接相同的服务器。

二、lvs的实现。

Lvs的组网模型有nat,dr,tunnel等,其中dr模式的性能较高,本实验以lvs的dr模式为例,来看lvs的实现及原理。

相关概念

Lvs服务器:作为负载均衡节点,负责接收客户端的请求,并进行调度。

真实服务器(realserver):真正处理请求的服务器。

VIP:客户端访问的ip,这个ip在lvs服务器,真实服务器上都存在。其中真实服务器必须配在lo接口上。

352a5c82f07f432811acf60165895831.png

Lvs负载均衡节点的物理网卡地址为192.168.1.236,vip为192.168.1.200

真实服务器节点1物理网卡地址为192.168.1.237,vip为192.168.1.200

真实服务器节点2物理网卡地址为192.168.1.238,vip为192.168.1.200

  1. 实现步骤

在lvs节点安装lvs软件,在真实服务器部署好相同的web服务。

通过shell脚本实现lvs集群的配置

Lvs节点脚本如下

#! /bin/bash

echo 1 > /proc/sys/net/ipv4/ip_forward

ipv=/sbin/ipvsadm

vip=192.168.1.200

rs1=192.168.1.237

rs2=192.168.1.238

ifconfig ens33:0 $vip broadcast $vip netmask 255.255.255.255 up

route add -host $vip dev ens33:0

$ipv -C

$ipv -A -t $vip:80 -s wrr

$ipv -a -t $vip:80 -r $rs1:80 -g -w 1

$ipv -a -t $vip:80 -r $rs2:80 -g -w 1

这里使用dr模式,并使用wrr调度算法,两台服务器的权值均设置为1

真实服务器脚本如下

#! /bin/bash

vip=192.168.1.200

ifconfig lo $vip broadcast $vip netmask 255.255.255.255 up

route add -host $vip lo

echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce

echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore

echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce

真实服务器需要修改网络内核参数,避免真实服务器对vip的arp响应,导致负载均衡系统失效。

三、结果验证

可以通过vip来访问web站点,且根据轮询调度算法将请求合理分配到两台真实服务器。

10001925a30a768a1f635bce6b18e9be.png

原理分析:

在客户端上查看arp表

dea245d5ecde24d28858c60d03e90038.png

Windows 客户端arp表

3182cafba431a3ef0792bcd42b95de27.png

Fedora客户端arp表

可以看到vip对应的mac地址是lvs节点的,但是lvs并未开启web服务,而是将web请求转发到真实服务器,由真实服务器提供web服务

ee00a901f3b126cfa52387c2854a74df.png

下图是真实服务器的抓包记录,可以看出web请求已经转发给真实服务器,然后由真实服务器提供响应服务

73cbd73736d07994a57fbc610ca37861.png

57419eb3d78637e370dd374802b0a466.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值