Linux Virtual Server(LVS)概述

Linux Virtual Server(LVS)概述

前言

负载均衡

负载均衡 (Load Balance) 提供一种廉价(横向拓展)、透明(后端方案细节透明)的方式,来拓展网络设备和服务器的负载、贷款、吞吐量、可用性和可扩展性。
负载均衡器是一个网络设备,它可以将传入的网络流量分发到多个后端服务器上,以实现负载均衡。负载均衡器可以通过多种方式来实现,包括硬件负载均衡器、软件负载均衡器和 DNS 负载均衡器。

LVS是什么

Linux Virtual Server (LVS) 是一个开源的负载均衡解决方案,它是一个基于 Linux 内核的负载均衡器。
LVS 通过将传入的网络流量分发到多个后端服务器上,以实现负载均衡。LVS 通过多种方式来实现负载均衡,包括 NAT、DR 和 TUN 模式。

为什么要不用Nginx

  • Nginx 是一个高性能的 HTTP 和反向代理服务器,它可以主要用来实现网络模型7层的负载均衡。

    • 网络模型7层代理,就是针对于域名、目录结构,请求体(Header, Content)等信息进行负载决策。
    • 应用层Nginx对网络稳定性的依赖非常小,已经由应用层逻辑做了隔离和保护,具备更好的容忍度。
  • LVS 是一个基于 Linux 内核的负载均衡器,它可以实现网络模型4层的负载均衡。

    • 网络模型4层,决定了LVS不需要额外的网络协议解析和封装。

为什么还要用LVS?

当Nginx没法满足你的需求的时候:

  • 极高并发:
    LVS 能处理上百万的并发连接,适合大规模流量分发。只要流量
  • 网络稳定性较好的数据中心:
    如果网络环境非常稳定,LVS 的性能和效率远胜 Nginx。
  • 需要 4 层负载均衡的场景:
    如数据库、视频流服务或其他基于 TCP/UDP 的服务,LVS 是最佳选择

LVS 概述

LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,Linux 虚拟服务器 (LVS) 是一组集成的软件组件,用于在一组真实服务器之间平衡IP 负载。LVS 在一对配置相同的计算机上运行:一台是活动 LVS 路由器,另一台是备份 LVS 路由器。该项目在1998年5月由章文嵩博士组织成立,是中国国内最早出现的自由软件项目之一。

官网: http://www.linuxvirtualserver.org/index.html

基本配置

图 1.1 “基本 LVS 配置”显示了由两层组成的简单 LVS 配置。

  • 第一层有两个 LVS 路由器 — 一个主路由器和一个备份路由器。每个 LVS 路由器都有两个网络接口,一个接口在 Internet 上,一个接口在专用网络上,这使它们能够调节两个网络之间的流量。
  • 在两层模型中,活动路由器使用网络地址转换或NAT将来自 Internet 的流量引导到第二层上数量可变的真实服务器,这些真实服务器反过来提供必要的服务。因此,此示例中的真实服务器连接到专用的专用网络段,并通过活动 LVS 路由器来回传递所有公共流量。对于外界来说,这些服务器看起来像一个实体。

1.1 基本 LVS 配置

客户端通过虚拟IP地址(VIP)访问主路由器,当发生故障需要主备切换时候,VIP会迁移到备机上。

备份路由器充当备用系统的角色。当心跳中断或异常时,备机将启动故障迁移,通过ARP欺骗技术,接管故障机的VIP。

  • 后端服务器的数据交换:
    由于 LVS 中没有内置组件来在真实服务器之间共享相同的数据,因此管理员有两个基本选择:
    • 在真实服务器池中同步数据
    • 在拓扑中添加第三层以实现共享数据访问

二层模型更适用于ServerLess场景。对于需要频繁更改数据的解决方案,则需要添加第三层以实现共享数据访问。

posted @ 2025-01-03 18:23  YiyangHuang  阅读(176)  评论(0)    收藏  举报