1. 集群:集群(cluster )就是一组计算机,它们作为一个整体向用户提供一组网络资源,单个计算机系统就是一个集群节点(node)。

2. 集群种类:

<1>. 负载均衡集群(Load Balance),简称LB集群

<2>. 高可用集群(High Availability),简称HA集群

<3>. 高性能计算(High Perfermance Computing)集群,简称HPC集群

2.1 负载均衡(LB)实现手段:

  • 硬件:F5负载均衡器
  • 软件:LVS(4层, 传输层) - Nginx(7层,应用层)

LVS(4层)模式:

/VS/NAT

LVS-VS/DR

/VS/TUN

LVS: Linux Virtual Server  是Linux 虚拟服务器,是一个虚拟的服务器集群系统,是中国国内最早出现自由软件项目之一。

中文站点:http://zh.linuxvirtualserver.org

LVS 集群采用三层机构:

-A 负载调度器(分发器) (Load balancer):

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

-B 服务器池(server pool):

是一组真正执行客户请求的服务器,执行的服务有WEB , MAIL, FTP, DNS 等。

-C 共享存储(shared storage):

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

LVS负载均衡有三种包转发方式:

NAT(网络地址映射)

IP Tunneling(IP隧道)

Direct Routing(直接路由)

不同的转发模式决定了不同的集群(cluster)的网络结构

(1). NAT(网络地址映射)——通过网络地址转换

NAT方式可支持任何的操作系统,以及私有网络,并且只需要一个Internet IP地址,但是整个系统性能受到限制,因为执行NAT每次需要重写包,

有一定的延迟;另外,大部分应用有80%的数据是从服务器流向客户机,也就是用户请求非常短,而服务器的回应非常大,对负载均衡器形成很大的压力,

成为了新的瓶颈。

(2). IP Tunneling(IP隧道)

director(分发器)分配请求到不同的real server, real server 处理请求后直接回应给用户,这样director负载均衡器仅处理客户机与服务器的一半连接。

IP Tunneling 技术极大的提高了director的调度处理能力,同时也极大的提高了系统能容纳的最大节点数,可以超过100个节点。real server 可以在任何

LAN或WAN上运行,这意味着允许地理上的分布,这在灾难恢复中有重大的意思,服务器必须拥有正式的IP地址用于与客户机直接通信,并且所有服务器必须

支持IP隧道协议。

(3). Direct Routing(直接路由)

与IP Tunneling 类似,负载均衡器仅处理一半的连接,避免了新的性能瓶颈,同样增加了系统的可伸缩性。Direct Routing 与 IP Tunneling相比,没有IP

封装的开销,但由于采用物理层(修改MAC地址)技术,所有服务器都必须在一个物理网段。

LVS NAT 模式工作原理:

客户端访问调度器时,调度器通过网络地址转换,调度器重写请求报文的目标地址,根据预设的调度算法,将请求分派给后端的真实服务器;

真实服务器的响应报文通过调度器时,报文的源地址被重写,再返回给客户,完成整个负载调度过程。

如图:

步骤1: 客户端访问VIP1的站点:

步骤2: 客户端访问调度器时,调度器通过网络地址转换,调度器重写请求报文目标地址,根据预设的调度算法,将请求分派给后端真实服务器。

步骤3: 真实服务器的响应报文通过调度器时,报文的源地址被重写,在返回给客户端,完成整个负载调度的过程。

LVS 集群工作原理的更多相关文章

  1. keepalive集群工作原理及应用

    author:JevonWei 版权声明:原创作品 集群工作原理 一.集群基础 1.系统的扩展方式 scale up向上扩展:提高单台服务器的性能 scale out向外扩展:多台服务器联合起来满足同 ...

  2. HA下的Spark集群工作原理解密

    实验环境: zookeeper-3.4.6 Spark:1.6.0 简介: 本篇博客将从以下几点组织文章: 一:Spark 构建高可用HA架构 二:动手实战构建高可用HA 三:提交程序测试HA 一:S ...

  3. LVS之1---工作原理

    LVS之1---工作原理 LVS 介绍 LVS:Linux Virtual Server,Linux虚拟服务器,负载调度器,是一个由章文嵩(花名 正明)博士从1998年开始发起的自由软件项目. 软件作 ...

  4. LVS集群之原理及概述(1)

    一. 概述 什么是集群,集群的特点.功能和分类.Linux环境下用哪些开源软件来构建一个功能强而有稳定的集群系统.了解国人内核级负载均衡开源项目linux虚拟服务器,简称LVS. 1.1 定义 集群是 ...

  5. [Elasticsearch] 集群工作 - 第二部分

    本文翻译自Elasticsearch官方指南的life inside a cluster一章. 添加故障转移(Failover)功能 仅仅执行一个节点意味着可能存在着单点失败(Single point ...

  6. LVS系列一、LVS集群-NAT模式

    一. 集群概述 1. 什么是集群? 一组各自相互独立且又相互依赖的,通过高速网络互联的计算机组成的一个计算机组, 以单一的系统模式加以管理, 为用户提供服务, 对用户来说, 用户只会认为对方是一个服务 ...

  7. 使用Kafka的一些简单介绍: 1集群 2原理 3 术语

    目录 第一节 Kafka 集群 Kafka 集群搭建 Kafka 集群快速搭建 第二节 集群管理工具 集群管理工具 集群 Issues 第三节 使用命令操纵集群 第四节 Kafka 术语说明 第五节 ...

  8. LVS集群之工作原理和调度算法(2)

      LVS的工作机制 LVS里Director本身不响应请求,只是接受转发请求到后方,Realservers才是后台真正响应请求. LVS 工作原理基本类似DNAT,又不完全相像,它是一种四层交换,默 ...

  9. 转载-lvs官方文档-LVS集群中的IP负载均衡技术

    章文嵩(wensong@linux-vs.org) 2002 年 4 月 本文在分析服务器集群实现虚拟网络服务的相关技术上,详细描述了LVS集群中实现的三种IP负载均衡技术(VS/NAT.VS/TUN ...

随机推荐

  1. MS-SQL循环、随机数

    ---创建视图 create view myview as select re=rand() --自定义函数:取得指定范围的随机数 create function mydata( @a int, @b ...

  2. Spring, Hibernate and Oracle Stored Procedures

    一篇英文博文,写的是利用hibernate处理存储过程中的游标等等: Motivation: While there are a few resources available online for ...

  3. IPSec方案部署(多业务场景)

    技术点详解—IPSec方案部署 通过前面几期的介绍可以发现IPSec所涉及的参数很多,在具体方案部署过程中有许多灵活选择的地方,本期专栏就专门对IPSec在几种典型环境中的方案部署进行介绍. 一.   ...

  4. [Android Lint] xxx is not translated in xxx 的解决方法

    CLEAN项目即可 转自BLOG http://blog.csdn.net/feng88724/article/details/8835664

  5. java高并发前言

  6. Code Page Identifiers - Copy from Microsoft

    Code Page Identifiers 78 out of 94 rated this helpful - Rate this topic   The following table define ...

  7. js中将字符串转为JSON的三种方式

    1.eval方式解析,恐怕这是最早的解析方式了.如下: function strToJson(str){ var json = eval('(' + str + ')'); return json; ...

  8. Ocelot - .Net Core开源网关

    Ocelot - .Net Core开源网关 作者:markjiang7m2 原文地址:https://www.cnblogs.com/markjiang7m2/p/10857688.html 源码地 ...

  9. servlet之doPost()、doGet()

    1.doGet和doPost方法的具体应用?即在什么时候程序调用doGet方法,什么时候程序执行doPost方法? HttpServlet是从GenericServlet继承而来,因此HttpServ ...

  10. poj 1635 Subway tree systems(树的最小表示)

    Subway tree systems POJ - 1635 题目大意:给出两串含有‘1’和‘0’的字符串,0表示向下搜索,1表示回溯,这样深搜一颗树,深搜完之后问这两棵树是不是同一棵树 /* 在po ...