1 简介
负载均衡的基本功能为根据配置规则进行流量分发,提高整个系统并发度和可靠性。负载均衡整机系统规格是确定的,特别是像带宽这种受限于硬件网卡的规格,当多个客户的负载均衡器在同一负载均衡设备上面运行时会出现资源争抢的问题。为了保证对每个客户提供承诺的带宽值,需要对每个负载均衡器进行流量限速处理。
2 LVS+Nginx负载均衡流量模型
本文中所述负载均衡使用LVS+Nginx实现,LVS完成四层流量转发,Nginx完成七层流量分发。LVS和Nginx分别在各自网络命名空间下运行,相互之间可以通过各自网络命名空间下macvlan虚拟网卡通信。为了提高负载均衡转发能力和可靠性,每个LVS配置两个Nginx后端,同时LVS自身采用主备方式工作。

业务流程图
LVS采用VS/DR(Virtual Server via Direct Routing),即用直接路由技术实现虚拟服务器。具体的报文转发方法为VS/DR通过改写请求报文的MAC地址,将请求发送到Real Server,而Real Server将响应直接返回给客户。这种方式是三种负载调度机制中性能最高的,但是必须要求Director Server与Real Server都有一块网卡连在同一物理网段上。

流量模型图
3 Linux TC说明
对LVS+Nginx负载均衡进行流量限速处理有两种方法:第一种是修改LVS内核模块,增加流量限速处理功能

本文介绍了如何在LVS+Nginx负载均衡环境中实施流量限速,以确保各客户带宽资源的公平分配。通过Linux TC命令在LVS和Nginx的网络命名空间下进行配置,实现入口和出口流量的限制。首先,概述了负载均衡的基本功能和LVS+Nginx的流量模型。然后详细讲解了Linux TC的工作原理,包括QDISC、CLASS和FILTER。接着,提供了详细的配置步骤,包括入口限速和出口限速,并对出流量限速进行了优化,确保流量统一控制。最后总结了该限速方案的灵活性和适用场景。
最低0.47元/天 解锁文章
608

被折叠的 条评论
为什么被折叠?



