LVS的工作原理

LB Load Balancing:解决方案

硬件:

F5 BIG-IP

思杰 Citrix Netscaler

A10 A10

Array 

Redware

软件:lvs

 linux Virtual Server 作者章文嵩博士

ipvs相当于netfilter,工作在内核中,将用户转发

   框架,需要依赖以规则完成转发

   ipvs集群服务

     定义一个或多个后端的服务器

ipvsadm

LVS:四层交换、四层路由(据说并发400w,F5 600w)

VIP:

keepalived

CIP   client IP

Director:负载均衡器

real server

DIP:跟real server交互

RIP

CIP<–>VIP–DIP<–>RIP

LVS类型:

NAT:–>(DNAT)

DR

TUN

FULLNAT

LVS的工作原理

blob.png

LVS NAT的模型

blob.png

LVS NAT的特性

1.RS的应该使用私有地址

2.RS的网关必须指向DIP

3.RIP和DIP必须在同一网段内

4.请求和响应的报文都得经过Director,在高负载场景中,Director很可能成为性能瓶颈

5.支持端口映射

6.RS可以使用任意支持集群服务的OS

blob.png

LVS DR类型

1.让前段路由将请求发往VIP时,只能是Dirctor上的VIP

解决方案

1.静态地址绑定

未必有路由器的配置权限

Director调用时静态地址绑定将难以使用

    2.arptables

    3.修改linux内核参数,将RS上的VIP配置在lo接口的别名上,限制linux仅对对应接口的ARP请求做相应

LVS DR类型的特性

1.RS可以使用私有地址,还可以使用公网地址,此时可以直接通过互联网连入RS,以实现配置、监控等

2.RS的网关一定不能指向DIP

3.RS跟Dirctory要在同一物理网络内(不能有路由器分隔)

4.请求报文经过Director,但响应报文一定不经过Director

5.不支持端口映射

6.RS可以使用大多数的操作系统

blob.png

LVS TUN类型:IP隧道

  1.RIP,DIP,VIP都得是公网地址

  2.RS的网关不会指向也不可能指向DIP

  3.请求报文经过Director,但响应报文一定不经过Director

  4.不支持端口映射

  5.RS的OS必须得支持隧道功能

总结:最常用的还是LVS的DR模式,在线上已经部署过很多次了

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

(0)
令狐冲令狐冲
上一篇 2016-12-07 11:58
下一篇 2016-12-07 16:38

相关推荐

  • ELK 日志分析实例

    网海过客www.chinasa.net ELK 日志分析实例一、ELK-web日志分析二、ELK-MySQL 慢查询日志分析三、ELK-SSH登陆日志分析四、ELK-vsftpd 日志分析 一、ELK-web日志分析 通过logstash grok正则将web日志过滤出来,输出到Elasticsearch 搜索引擎里,通过Kibana前端展示。  …

    Linux干货 2016-06-03
  • 简单易懂的CentOS启动流程

    在使用Linux操作系统时,我们只需要按下电源键,等待一会儿,登录终端就呈现在我们眼前,在这段时间内,操作系统究竟做了哪些事情? 先上一张流程梗概图,你会对启动流程有个大致的了解 启动流程详解 POST加电自检   主板在接通电源后,系统首先由POST程序来对CPU、主板、内存、硬盘子系统、显示子系统串并行接口、键盘、CD-ROm光驱等硬件进行检测 读取MB…

    Linux干货 2016-09-11
  • N26第六周博客作业

    请详细总结vim编辑器的使用并完成以下练习题 1、               复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#…

    Linux干货 2017-03-13
  • Linux终端类型

    Linux系统的终端主要包括控制台终端、控制终端、串口终端、伪终端、虚拟终端。 1、控制台终端(/dev/console)    在Unix系统中,计算机显示器通常被称为控制台终端。Console与虚拟终端相关联,内核将信息送到控制台终端上(/dev/console), 通过与console相关联的虚拟终端将信息显示到屏幕上。不管当前正在…

    Linux干货 2016-10-19
  • Nginx及其相关配置详解(二)

    与套接字相关的配置: 1、server { … }  #配置一个虚拟主机;         Default:—         Context:http server { # 配…

    2017-07-14
  • CentOS上配置rsyslog客户端用以远程记录日志

    rsyslog是一个开源工具,被广泛用于Linux系统以通过TCP/UDP协议转发或接收日志消息。rsyslog守护进程可以被配置成两种环境,一种是配置成日志收集服务器,rsyslog进程可以从网络中收集其它主机上的日志数据,这些主机会将日志配置为发送到另外的远程服务器。rsyslog的另外一个用法,就是可以配置为客户端,用来过滤和发送内部日志消息到本地文件…

    Linux干货 2015-02-14