第十七周 作业–结合图形描述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不再是瓶颈,

  缺点

  ①:DirectRealServer 要在同一网段

          

   

  

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

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

相关推荐

  • N23_第六周

    1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;:%s/^[[:blank:]]\+.*/\0#/g 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符;:%s/^[[:space:]]\+/…

    Linux干货 2017-02-28
  • 文件管理

    compress:压缩命令 -d:解压缩(=uncompress) -c:结果输出到标准输出,不删除原文件 -v:显示详情 zcat:不解压文件查看内容   gzip:压缩命令 -d:解压缩 -c:结果输出到标准输出,不删除原文件 -#:1-9代表压缩比,默认为6 zcat:不解压文件查看内容   bzip2:压缩命令 -k:保留原文件 …

    Linux干货 2016-08-18
  • Linux网络属性管理

    Linux网络属性管理 linux的网络配置方法有多种,而且随发行版及版本而略微不同。我目前的测试环境为CentOS6和CentOS7。 常用的网络配置命令或方法有:ifconfig,route,netstat,ip,ss,nmcli,配置文件。 首先:命令方法介绍 一、命令简介 ifconfig:是个比较传统的命令,可以配置网络接口的启用及关闭,IP地址等…

    系统运维 2016-05-29
  • inode的理解

    一、inode是什么 理解inode,要从文件储存说起。 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。 操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个"块"(block)。这种由多个扇区组成的&q…

    Linux干货 2017-01-16
  • 计划任务cron

        cron是一个在类Unix操作系统上的任务计划程序。它可以让用户在指定时间段周期性地运行命令或者shell脚本,通常被用在系统的自动化维护或者管理。          crontab 的基本格式是: <分钟> <小…

    Linux干货 2017-07-03
  • 高级文件文件系统管理之btrfs系统

    一.概述 btrfs文件系统:     技术预览版     btrfs (B-tree,Butter FS,Better FS),GPL,Oracle,2007,CoW     ext3/ext4,xfs 核心特性:  &nbsp…

    Linux干货 2016-09-11

评论列表(1条)

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

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