Linux负载均衡利器(LVS)

LVS是什么?

LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。章文嵩博士目前工作于中国国家并行与分布式处理重点实验室,主要从事集群技术、操作系统、对象存储与数据库的研究。

LVS集群采用IP负载均衡技术和基于内容请求分发技术。调度器具有很好的吞吐率,将请求均衡地转移到不同的服务器上执行,且调度器自动屏蔽掉服务器的故障,从而将一组服务器构成一个高性能的、高可用的虚拟服务器。整个服务器集群的结构对客户是透明的,而且无需修改客户端和服务器端的程序。为此,在设计时需要考虑系统的透明性、可伸缩性、高可用性和易管理性。

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

LVS的体系结构

一般来说,LVS集群采用三层结构:

1、负载调度器(load balancer),它是整个集群对外面的前端机,负责将客户的请求发送到一组服务器上执行,而客户认为服务是来自一个IP地址(我们可称之为虚拟IP地址)上的。

2、服务器池(server pool),是一组真正执行客户请求的服务器,执行的服务有WEB、MAIL、FTP和DNS等。

3、共享存储(shared storage),它为服务器池提供一个共享的存储区,这样很容易使得服务器池拥有相同的内容,提供相同的服务。

其体系结构如图所示:

image

LVS的目标

  • 使用集群技术和Linux操作系统实现一个高性能、高可用的服务器

  • 很好的可伸缩性(Scalability)

  • 很好的可靠性(Reliability)

  • 很好的可管理性(Manageability)

LVS的优点

  • 开源,免费

  • 在网上能找到一些相关技术资源

  • 具有软件负载均衡的一些优点

LVS的缺点

  • 最核心的就是没有可靠的支持服务,没有人对其结果负责;

  • 功能比较简单,支持复杂应用的负载均衡能力较差,如算法较少等;

  • 开启隧道方式需重编译内核;

  • 配置复杂;

  • 主要应用于LINUX,目前没有专门用于WINDOWS的版本,不过可以通过配置,使windows成为LVS集群中的real server(win2003、win2008中)。

推荐阅读

面经:史上最全Java多线程面试题及答案

面经:史上最全阿里高级Java面试题

面经:史上最全Spring面试题

教程:最全Spring Boot全套视频教程

书籍:进阶Java架构师必看的15本书

工具:推荐一款在线创作流程图、思维导图软件

分享Java干货,高并发编程,热门技术教程,微服务及分布式技术,架构设计,区块链技术,人工智能,大数据,Java面试题,以及前沿热门资讯等。

posted @ 2018-04-25 14:09  栈长  阅读(133)  评论(0编辑  收藏  举报