LVS-DR负载均衡RIP和VIP在不同网络的实现

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
简介:

2503a0288e717dad285e8c34223acc87.png-wh_

实验前准备

均已关闭防火墙

centos7:

systemctl stopfirewalld

centos6:

serviceiptables stop

 

均已禁用SELinux

setenforce 0

 

web1、web2准备apache服务

web1和web2:

yum installhttpd -y

web1:

echo192.168.142.132 >/var/www/html/index.html

service httpdstart

web2:

echo192.168.142.130 >/var/www/html/index.html

systemctlstart httpd

 

网络拓扑在VMware中配置网段


442551a3a5e41078059fb7f01bacbda3.png-wh_

客户端

2044974b1d2c014326496c62847adf1f.png-wh_


路由端

b0dbd638ad60961d6d241c316d4eeb23.png-wh_



lvs server

c7a705382d25cc832cd82d4d41ef75af.png-wh_

web1同web2

e77e4f6cae6f74436b74cd53da9e4ef2.png-wh_ 


 

一.实验环境介绍

web1为centos6.9

其余均为centos7.3

二.地址规划

如图所示:

VIP使用172.18.0.0/16网络

RIP使用192.168.142.0/24网络

 

1.Real Server的RIP的规划:

eth0-->RS1:192.168.142.132/24

ens33-->RS2:192.168.142.130/24

 

2.Direcotr的LVSServer的地址规划:

ens33-->DIP:192.168.142.129/24

ens33:0-->VIP:172.18.253.53/16

 

3.客户端IP规划:

ens33-->192.168.244.128/24

4.路由:

ens33-->192.168.244.129/24

ens37-->172.18.253.251/16

ens38-->192.168.142.133/24

.   DR模型实现负载均衡的工作原理

     NAT模型的实现方式,因为进出的每个数据包都要经过DirectorServer,当集群系统负载过大的时候Director Server将会成为整个集群系统的瓶颈,那么DR模型就避免了这样的情况发生,DR模型在只有请求的时候才会经过Director Server, 回应的数据包由RealServer 直接响应用户不需要经过Director Server,其实三种模型中最常用的也就是RIPVIP在不同网络的DR模型了,下面来说DR模型具体是怎么实现负载均衡的,根据上图,

1.首先客户端用户用CIP请求VIP

2.根据上图可以看到,不管是DirectorServer还是Real Server上都需要配置VIP,那么当用户请求到达我们的集群网络的前端路由器的时候,请求数据包的源地址为CIP目标地址为VIP,此时路由器会发广播问谁是VIP,那么我们集群中所有的节点都配置有VIP,此时谁先响应路由器那么路由器就会将用户请求发给谁,这样一来我们的集群系统是不是没有意义了,那我们可以在网关路由器上配置静态路由指定VIP就是Director Server,或者使用一种机制不让Real Server 接收来自网络中的ARP地址解析请求,这样一来用户的请求数据包都会经过DirectorServre

3.当DirectorServer收到用户的请求后根据此前设定好的调度算法结果来确定将请求负载到某台Real Server上去,假如说此时根据调度算法的结果,会将请求负载到Real Server 1上面去,此时Director Server 会将数据帧中的目标MAC地址修改为RealServer1MAC地址,然后再将数据帧发送出去;

4.当Real Server1 收到一个源地址为CIP目标地址为VIP的数据包时,RealServer1发现目标地址为VIP,VIP是自己,于是接受数据包并给予处理,Real Server1处理完请求后,会将一个源地址为VIP目标地址为CIP的数据包发出去,此时的响应请求就不会再经过DirectorServer,而是直接响应给用户;

四.架构实现

 

1.客户端配置

[root@www ~]#route adddefault gw 192.168.244.129

[root@www ~]# route -n

Kernel IP routing table

Destination    Gateway         Genmask         Flags Metric Ref    Use Iface

0.0.0.0      192.168.244.129      255.255.255.0  UG    0      0     0 ens33

192.168.244.0   0.0.0.0         255.255.255.0   U    0      0     0 ens33


2.路由配置

echo 1>/proc/sys/net/ipv4/ip_forward #开启路由转发功能


3.lvs配置

DIP设置:

[root@lvs network-scripts]# pwd

/etc/sysconfig/network-scripts

[root@lvs network-scripts]# cat ifcfg-ens33

DEVICE="eth0"

BOOTPROTO="static"

ONBOOT="yes"

TYPE="Ethernet"

IPADDR=192.168.142.129

NETMASK=255.255.255.0

GATEWAY=172.18.253.251


VIP设置:

(1).不同网络:

[root@lvs network-scripts]#ifconfig ens33:0 172.18.253.53/16 up

(2).同一网络的只广播给自己;本实验不需要设置广播

[root@lvs network-scripts]#ifconfigens33:0 172.18.253.53 netmask255.255.255.255 broadcast 172.18.253.53 up

 

配置路由:

[root@node1 network-scripts]#route add -host 172.18.253.53 dev lo:0 

[root@lvs network-scripts]#route add default gw 192.168.142.133 dev ens33

4.Real Server设置:

web1的网卡的ip配置:

[root@node1 network-scripts]# pwd

/etc/sysconfig/network-scripts

[root@node1 network-scripts]# cat ifcfg-ens33

DEVICE="eth0"

BOOTPROTO="static"

ONBOOT="yes"

TYPE="Ethernet"

IPADDR=192.168.142.132

NETMASK=255.255.255.0

GATEWAY=172.18.253.251


需要指定网关:

[root@node1 network-scripts]#route add default gw 192.168.142.133

RS上配置内核参数,抑制ARP 

[root@node1 network-scripts]#echo 2 >/proc/sys/net/ipv4/conf/all/arp_announce

[root@node1 network-scripts]#echo 2 >/proc/sys/net/ipv4/conf/ens33/arp_announce

[root@node1 network-scripts]#echo 1 >/proc/sys/net/ipv4/conf/ens33/arp_ignore

[root@node1 network-scripts]#echo 1 >/proc/sys/net/ipv4/conf/all/arp_ignore

RS上设置VIP地址:

[root@node1 network-scripts]#ifconfig lo:0 172.18.253.53 netmask 255.255.255.255 broadcast 172.18.253.53 up

RS上添加路由:

[root@node1 network-scripts]#route add -host 172.18.253.53 devlo:0 


5.web2的配置:跟web1一致

设置RIP地址: 

#ifconfig eth0 192.168.142.130/24 up

#route add default gw 192.168.142.133

配置arptables:

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

#echo 2 >/proc/sys/net/ipv4/conf/eth0/arp_announce

#echo 1 >/proc/sys/net/ipv4/conf/eth0/arp_ignore

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

设置VIP地址:

#ifconfig lo:0 172.18.253.53 netmask 255.255.255.255 broadcast 172.18.253.53 up

添加路由:

#route add -host 172.18.253.53 dev lo:0


6.LVS Server上定义集群服务:

#ipvsadm  -A -t 172.18.253.53:80 -s rr

#ipvsadm  -a -t  172.18.253.53:80 -r 192.168.142.130 -g

#ipvsadm  -a -t  172.18.253.53:80 -r 192.168.142.132 -g

#systemctl  restart ipvsadm

测试实现http均衡负载

3ff6d8a86e45473e3b605ca738ab4d92.png-wh_ 


另外LVS还可以根据连接类型,比如长连接和短连接,来设置相关超时时间,总之,根据应用场景来选择!



本文转自 工运搬运维 51CTO博客,原文链接:http://blog.51cto.com/13157015/1975162,如需转载请自行联系原作者

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
5月前
|
负载均衡 算法 应用服务中间件
面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
字节跳动面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
113 0
|
5月前
|
缓存 网络协议 安全
【网络工程师】<软考中级>解析协议ARP&路由协议RIP/OSPF/BGP
【1月更文挑战第27天】【网络工程师】<软考中级>解析协议ARP&路由协议RIP/OSPF/BGP
|
2月前
|
负载均衡 网络协议 安全
解析网络流量管理方案:简化基于云的DNS负载均衡
解析网络流量管理方案:简化基于云的DNS负载均衡
65 1
|
3月前
|
缓存 负载均衡 算法
(四)网络编程之请求分发篇:负载均衡静态调度算法、平滑轮询加权、一致性哈希、最小活跃数算法实践!
先如今所有的技术栈中,只要一谈关于高可用、高并发处理相关的实现,必然会牵扯到集群这个话题,也就是部署多台服务器共同对外提供服务,从而做到提升系统吞吐量,优化系统的整体性能以及稳定性等目的。
|
2月前
|
网络协议 算法 网络架构
|
2月前
|
负载均衡 监控 前端开发
在Linux中,如何配置负载均衡器以分配网络流量?
在Linux中,如何配置负载均衡器以分配网络流量?
|
2月前
|
负载均衡 算法 Linux
在Linux中,如何配置负载均衡器以分配网络流量?
在Linux中,如何配置负载均衡器以分配网络流量?
|
3月前
|
网络协议 数据安全/隐私保护 网络架构
网络工程师:RIP常用命令
【7月更文挑战第4天】
82 1
网络工程师:RIP常用命令
|
3月前
|
负载均衡 安全 Cloud Native
云上负载均衡:构建高可用、高性能的网络应用架构
与云原生技术深度融合:随着云原生技术的普及和发展未来的云上负载均衡将更加紧密地与云原生技术相结合。例如与Kubernetes等容器编排平台集成实现自动化的服务发现和路由管理;与Serverless架构结合提供无缝的流量接入和请求处理能力。 安全性能提升:面对日益严峻的网络安全威胁云上负载均衡将更加注重安全性能的提升。通过引入加密传输、访问控制、DDoS防护等安全措施确保网络流量的安全性和隐私性;同时还将建立完善的安全监控和应急响应机制以应对各种安全事件和突发事件。 支持多协议和多场景:未来的云上负载均衡将支持更多种类的网络协议和应用场景以满足不同用户和业务的需求。例如支持HTTP/2、
152 0
|
5月前
|
负载均衡 算法 网络协议
【专栏】网络高可用性和负载均衡关键在于VRRP、VGMP和HRP协议
【4月更文挑战第28天】网络高可用性和负载均衡关键在于VRRP、VGMP和HRP协议。VRRP实现路由器冗余,保证流量转发;VGMP优化多播流量传输,适合多媒体服务;HRP提供无缝故障转移,适用于电信级网络。选择需考虑网络环境和业务需求,VRRP简单易部署,VGMP处理多播流量,HRP适合高稳定性场景。理解协议特点,确保网络最佳性能和可用性。
136 4
下一篇
无影云桌面