华为 两条线路负载均衡_说一说负载均衡

本文介绍了网站在面临高并发和单点故障问题时,如何通过负载均衡来解决。从DNS负载均衡利用智能DNS返回离用户最近的服务器,到四层负载均衡在运输层通过LVS进行IP和PORT的修改,再到七层负载均衡在应用层根据请求信息进行负载分配,详细阐述了不同层次的负载均衡策略。此外,还提及了高可用负载均衡通常采用DNS+四层+七层结合的方式,确保服务的稳定性和效率。
摘要由CSDN通过智能技术生成

c4be6f458c7f9f4ddd3ffdbde7601300.png

为什么需要负载均衡

一个网站在创建初期,一般来说都是只有一台服务器对用户提供服务。

80379fac38cf698c8285ef6371726abc.png

从图里可以看出,用户经过互联网直接连接了后端服务器,如果这台服务器什么时候突然 GG 了,用户将无法访问这个网站(单点故障)。

另外业务上升,用户增加,单台服务性能和稳定性都会受到很大的挑战。

b24dc3dbe945a0136bddd851e8f0af67.png

那么要怎么办呢?加机器!扩容!不差钱!

加机器

既然一台服务器不够用,那么就两台,如果还不行,就三台。

5352ac76e441b01dc709fc00dcf680dc.png

这样我们就有了很多台机器了,足够应付用户的请求了。

在这里,我们把用户的访问流量称为负载,而根据转发策略(rules)将负载(访问流量)分配给后端机器的服务便是负载均衡

fee8f2a3ed0a8d72096f9b7df61e323f.png

怎么『均衡』

现在我们研究下怎么『均衡』地给服务器分配访问流量了

  1. DNS 负载均衡
    因为用户在访问我们的服务的时候,需要通过 DNS 查询后端服务器的具体 IP,得益于智能 DNS 之类的新技术方案,我们可以在 DNS 解析的时候,通过线路、地域之类的规则针对性地返回不同的 IP。

4e9c91732ac1bcadd70f294dbdf8bc8f.png


DNS 负载均衡通过用户 IP 进行判断,可以按规则返回一个离用户位置最近的一台服务器作为解析结果,一定程序上保证了服务的速度。所以,CDN 服务一般会使用这个作为第一层调度,保证用户请求的缓存节点一定是最近的。
BUT! 由于 DNS 服务一般是由第三方服务商提供,虽说我们可以配置规则,但我们实际上并不能获知用户拿到的 DNS 解析结果是否符合预期;而我们在增减服务器的时候,需要变更 DNS 配置,各级 DNS 服务器缓存及更新策略并不能达到及时变更的效果。

  1. 四层负载均衡
    四层负载均衡工作在运输层,所以只支持 TCP/UDP 协议,负载均衡设备会将用户请求的 IP 和 PORT 地址进行修改为后端服务器的某一台,同样为了隐藏真实的后端机器信息,会对提出后端服务器返回的数据报文进行修改。在第四层负载均衡时,客户端是直接与后端真实机器建立连接。
    在阿里云或者其他提供 SLB (Server Load Balancer) 服务的平台上面,会出现一些特殊名词:
    i. LVS(Linux Virtual Server Linux虚拟服务器):负载均衡开源软件,主要用于四层负载均衡的搭建。
    ii. VIP(Virtual IP 虚拟 IP):相对于直接与物理网卡绑定的 IP,VIP 是在内网通过 ARP 协议动态映射到某个 MAC 地址上,可以映射到不同的机器上
    iii. RS(Real Server) 后端真实机器,RSIP 则是真实机器的 IP

e623a3e0d9ba349827780ae7744f6425.png


用户通过 DNS 查询得到 VIP 地址,将请求发送给 VIP, 流量就这么到了 LVS 集群0, 再根据 IP+Port 规则将流量打给对应的 RS。
上图中的 LVS 集群1 为 LVS 集群0 的灾备,在集群0故障的情况下,可以通过改变 VIP 映射将流量打到 集群1。

  1. 七层负载均衡
    而在七层负载均衡中,和四层的区别在于,代理集群一般是 NGINX 集群或者 Tengine 集群,因为工作在应用层,负载均衡规则一般是根据请求域名、请求 URL 这类应用信息。

0c33b8603be63c41c86b19dbc7ccd6c0.png


七层负载均衡和四层还有个重要区别是,因为需要得到数据报文的应用层信息,所以负载均衡设备需要和客户端建立连接,拿到规则需要的应用层信息后,再与后端真实机器建立连接,再进行请求。所以四层是只有一个独立连接,而七层是两个独立连接。

高可用负载均衡

对于大公司而言,单一的负载均衡方案已经满足不了需要了,基本都是通过DNS + 四层 + 七层三个全都要!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值