第十七周 作业–结合图形描述lvs原理

    LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。

 

Lvs有三种模式分别是lvs-nat、lvs-dr、lvs-tun。下面分别介绍lvs-nat、lvs-dr:

 

1. lvs-nat

 

图片.png 

 

①用户发送请求到达VIP

  此时  源IP:是用户IP

      目标IP:  是vip

 

②direct 根据设定的算法在后端realserver 中选取一台主机进行处理。

  此时  源IP: 是 用户IP

       目标IP:是 RealServer IP

   在连接HASH表中会记录这个连接

 

③RealServer 处理完成后进行响应,RealServer的 GW必须是direct的DIP地址。

  此时  源IP: 是RealServer IP

       目标IP:  是用户IP

 

④LB 收到RealServer的响应后根据Hash表 把RealServer IP 修改成VIP 进行响应。

  此时  源IP: 是VIP

       目标IP: 是用户IP

 

Lvs  nat优点:

   ① 可以把用户访问的端口,映射到后端不同的端口

   ② 对后端服务器无要求

   缺点:

   ① 流量大了direct可能成为瓶颈

 

Lvs-dr

 

图片.png 

 

  ① 用户发送请求到达 Direct ,Direct 根据设定的算法选择RealServer 进行相应。

     Direct 把请求包发送给后端RealServer时会把【目标 MAC地址】修改为RealServer的MAC的地址

  ② 当 RealServer 接收到direct 转发过来的 数据包时发现 目标地址是VIP,而VIP正好是自己,便接受数据并进行处理。

  ③处理完成后发送到局域网里,此时源IP 是VIP,源MAC地址是RealServer 的IP, 目标IP是客户端IP,目标MAC是客户端MAC

Lvs dr 优点:

  ①:RealServer 节点多,Direct不再是瓶颈,

  缺点

  ①:Direct和RealServer 要在同一网段

          

   

  

原创文章,作者:sky,如若转载,请注明出处:http://www.178linux.com/62923

赞 (0)
skysky
上一篇 2016-12-06 22:34
下一篇 2016-12-07 11:43

相关推荐

  • Apache、nginx 、lighttpd性能比较

    1. web服务器简介 1. lighttpd      Lighttpd是一个德国人领导的开源软件,其根本的目的是提供一个专门针对高性能网站,安全、快速、兼容性好并且灵活的Web server环境         Lighttpd是一个具有非常低的…

    Linux干货 2015-04-10
  • shell 脚本 【上】

    shell 脚本编程 【上】 程序就是指令加上数据组合而成 程序编程风格:  过程式:以指令为中心,数据服务于指令  象式:以数据为中心,指令服务于数据  编程语言:  低级:汇编  高级:  编译:高级语言–>编译器–>目标代码 java,C#  解释…

    Linux干货 2016-08-15
  • 马哥教育网络21期+第九周练习博客

    马哥教育网络21期+第九周练习博客 1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; [root@localhost bin]# cat 1.sh  #!/bin/bash # while&nbsp…

    Linux干货 2016-09-05
  • vsphere虚拟机下的Linux在线移除硬盘后的报错处理(基于LVM)

    1)故障描述( vmware虚拟机,在线移除一块被设置为pv格式的硬盘后,提示unknown device错误): 说明:/dev/sdb1 /dev/sdc1 /dev/sdd1是组成/dev/vg_test/lvm_test的PV,这里我们模拟/dev/sdd1硬盘被直接断电了 [root@docker mnt]# pvdisplay…

    Linux干货 2016-07-29
  • N26-第一周作业

    1、计算机主要由硬件部分和软件部分组成。     硬件部分:         (1)、CPU:包括运算器、控制器、寄存器、缓存。CPU的核心部件是运算器和控制器,它的功能主要是解释计算机指令以及处理计算机软件中的数据。         (2…

    Linux干货 2016-12-27
  • sed命令用法详解

    1.sed运行原理         sed(stream editor)是一个行处理器。处理时,把当前处理的行放到“模式空间中”,处理完毕后,把该行输出到屏幕,接着处理下一行;这样不断重复,直到末行;此时文件本身内容并没有改变 2.sed用途    …

    Linux干货 2016-08-15

评论列表(1条)

  • 马哥教育
    马哥教育 2016-12-09 20:46

    最好列出一些应用的时注意 的关键点就更好了