美文网首页读书
架构设计之:LVS 三种模式

架构设计之:LVS 三种模式

作者: 简书的猪队友 | 来源:发表于2022-05-20 13:56 被阅读0次

    LVS三种模式

    ● NAT:网络地址转换模式
    ● DR:直接路由模式
    ● TUN:隧道模式

    LVS/NAT

    流程

    1. 客户端App先通过DNS寻址取得暴露在公网的LVS的IP,再发送web http请求。
    2. LVS收到网络报文后,直接转发给后端服务集群。
    3. 后端服务集群处理业务逻辑的请求,再把对应的网络报文发送给LVS。
    4. LVS把报文发给客户端App。

    优点
    是最简单的部署,因为无需在网络地址上做映射和开发,仅仅是一个转发器。

    不足
    LVS会成为整个应用集群的性能瓶颈。源请求和对应的响应都会发给LVS,包发送后还要维护映射信息和socket连接,当网络异常时,单台的LVS设备可能无法承载压力。

    LVS/NAT
    参考

    DR

    流程

    1. 客户端App先通过DNS寻址取得暴露在公网的LVS的IP,再发送web http请求。
    2. LVS收到网络报文后,
      2.1 不改变源IP,只改变目标IP为后端服务集群IP。
      2.2 把源mac地址改为LVS的mac地址,把目标mac地址改为后端服务集群的mac地址。
    3. 后端服务集群处理完响应请求,准备回报发送报文时,发现源IP是客户端App,因此直接把报文返回给客户端。

    优点
    对于请求,LVS设备只管请求的转发,当客户端App网络包收上来后,就可以断开与客户端App的连接。
    对于响应,后端服务集群处理完请求直接与客户端App发生响应处理。
    对于连接,可以省掉维护两端socket连接的时间。

    不足
    LVS设备要和后端服务集群处于同一个机房中才能使用mac地址转化协议,以使源IP地址和源mac地址可以不在同一个层级上。

    LVS/DR
    参考

    TUN

    流程

    1. 客户端App先通过DNS寻址取得暴露在公网的LVS的IP,再发送web http请求。
    2. LVS做两次头的封装,即保持原来的IP包不变,在外层再封装一层包,源IP为LVS的IP,目标IP为后端服务集群的IP。
    3. 后端服务集群将IP包解开,解析出内层的IP包。
    4. 后端服务集群处理完报文请求,根据内层IP把报文直接传给客户端App。

    优点
    LVS和后端服务集群不需要在同一个机房内。

    不足
    后端服务集群必须支持隧道模式。

    LVS/TUN
    参考

    总结

    使用最多的是LVS/DR模式,因为在局域网中才能保证系统的吞吐量,没有必要为了跨机房而使用隧道模式,除非原先就是跨机房部署。

    相关文章

      网友评论

        本文标题:架构设计之:LVS 三种模式

        本文链接:https://www.haomeiwen.com/subject/isffprtx.html