lvs负载均衡+高可用


提示:以下是本篇文章正文内容,下面案例可供参考

LVS

LVS(Linux Virtual Server)即Linux虚拟服务器,是一个虚拟的服务器系统,在unix/Linux平台下实现负载均衡集群功能。LVS是一种集群(Cluster)技术,采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。为此,在设计时需要考虑系统的透明性、可伸缩性、高可用性和易管理性。
 根据LVS工作模式的不同,真实服务器会选择不同的方式将用户需要的数据发送到终端用户,LVS工作模式分为NAT(Network Address Translation,网络地址转换)模式、TUN(隧道)模式、以及DR(Direct Routing,直接路由模式:)模式。

LVS使用DR模式实现负载均衡

搭建实验环境:

server----172.20.10.9------充当外部主机client
server1 -----172.20.10.7 --------充当调度器VS
server2 ------172.20.10.6---------充当真实服务器real server
server3 -------172.20.10.8--------充当真实服务器real server

server1与server2与server3均操作如下:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

实验

在这里插入图片描述上述 ipvsadm -ln:查看策略,该策略是在防火墙之后,即数据包经过网卡进来之后。(-ln不进行解析,-l会进行解析)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述LVS调度器的工作机制是在二层数据链路层,通过调度算法,直接将数据包转发到real server2和real server3上,这就是为什么要在一个vlan,因为数据包不能过路由,所以数据包可以在二层链路层直接转发数据包到后端服务器。因为tcp三次握手的原故,如果real server上没有vip,数据包将会被Linux内核丢弃。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。也就是将IP地址映射为MAC地址的协议
在这里插入图片描述
如何实现负载均衡?
在real server上配置安装arptables

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

两个问题

如果调度器server 1 上面也安装了httpd,且开启服务。那么server 1 与real server 2 与real server 3 上均设置了 172.20.10.5,最终外部主机访问 curl 172.20.10.5,相应的还是server 2 和server 3
因为,数据包达到 lvs 时,lvs始终在INPUT链路上监听。如果目标地址是虚拟IP 172.20.10.5,就会将数据包定向到 lvs 策略上,按照策略进行转发。

防火墙firewalld / iptables的优先级比 lvs 的优先级高 从网卡进来的数据包都经过火墙过滤,如果数据包进不来,那么lvs策略也无法生效

lvs+keeplived

server----172.20.10.9------充当外部主机client
server1 -----172.20.10.7 --------充当调度器VS
server2 ------172.20.10.6---------充当真实服务器real server
server3 -------172.20.10.8--------充当真实服务器real server
server4 -----172.20.10.10 --------充当调度器VS的备用机

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

负载均衡测试

访问 172.20.10.5,看到页面在两个 real server 上切换表示成功!
也可以通过 ipvsadm -Lnc 查看详细连接情况!

在这里插入图片描述

故障切换测试

任意关闭 realserver 上的 httpd 服务,Keepalived 监控模块是否能及时发现,然后屏蔽故障节点,同时将服务转移到正常节点来执行。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

高可用测试

停止 master 上的 keepalived 服务,看 backup 是否接管。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值