LVS
LVS
LVS 有如下的组成部分:
-
Direct Server(以下简称 DS):前端暴露给客户端进行负载均衡的服务器。
-
Virtual Ip 地址(以下简称 VIP):DS 暴露出去的 IP 地址,做为客户端请求的地址。
-
Direct Ip 地址(以下简称 DIP):DS 用于与 Real Server 交互的 IP 地址。
-
Real Server(以下简称 RS):后端真正进行工作的服务器,可以横向扩展。
-
Real IP 地址(以下简称 RIP):RS 的地址。
-
Client IP 地址(以下简称 CIP):Client 的地址。
客户端进行请求时,流程如下:
-
使用 VIP 地址访问 DS,此时的地址二元组为src:CIP,dst:VIP。
-
DS 根据自己的负载均衡算法,选择一个 RS 将请求转发过去,在转发过去的时候,修改请求的源 IP 地址为 DIP 地址,让 RS 看上去认为是 DS 在访问它,此时的地址二元组为<src:DIP,dst:RIP A>。
-
RS 处理并且应答该请求,这个回报的源地址为 RS 的 RIP 地址,目的地址为 DIP 地址,此时的地址二元组为<src:RIP A,dst:DIP>。
-
DS 在收到该应答包之后,将报文应答客户端,此时修改应答报文的源地址为 VIP 地址,目的地址为 CIP 地址,此时的地址二元组为src:VIP,dst:CIP。