未加星标

LVS

字体大小 | |
[系统(linux) 所属分类 系统(linux) | 发布者 店小二03 | 时间 2017 | 作者 红领巾 ] 0人收藏点击收藏
LVS

概述

LVS工作类型

LVS NAT

LVS DR(默认)

Direct Routing带来的问题

限制响应模型的内核参数

LVS TUN

LVS FULLNAT

scheduling-method

静态调度算法

动态调度算法

CentOS 7 中的ipvs组件

安装ipvsadm程序

主要文件

ipvsadm命令

配置集群服务

NAT方法示例

DR方法示例

通用的Real Server配置

负载均衡http服务

负载均衡mysql服务

负载均衡FWM捆绑的服务

lvs persistence(持久连接)

规则保存与恢复

附录

DR方法的Director配置脚本

DR方法的Real Server配置脚本

linux Virtual Server 传输层的包转发工具,通过VS对RS的调度实现负载均衡:

VS:Virtual Server(Director、Dispatcher、Balancer);

RS:Real Server(upstream server,backend server);

LVS工作在传输层,主要根据目标端口进行分发,相当于4层交换机,不受应用层套接字和端口的数量的限制,而是直接把报文转发给后端服务器,并发量极高。支持TCP、UPD、ESP、AH、SCTP等协议报文的转发。相同功能的模拟传输层进行任务调度的应用还用:nginx(stream)、haproxy(mod tcp)等。

相比较而言:

Nginx作为反向代理服务器实现负载均衡时工作应用层,因此只能 模拟传输层 进行任务调度,主要根据 请求模型的分类 进行分发,例如把SELECT语句分发至一台MySQL服务器,php请求分发至fpm服务器等。这类应用层的均衡调度器主要有:nginx(upstream)、httpd(balance)、haproxy(mod http)、ats、perlbal、mysql-proxy等。

在与客户端通信的过程中常常涉及到会话追踪的需求,比如用户在不同的终端上完成的一次购物行为等待。但是http协议本身是无状态的,服务器与客户端如何实现会话追踪,尤其是集群服务如何实现Session保持成为一大问题。集群服务的Session保持方案主要由以下3种:

Session Stick:Source IP or Cookie实现在单台服务器时间最基本的Session保持;

Session replication:Session Cluster实现在多台服务器之间复制所有Session;

Session Server:由独立的Session服务器实现Session同步和共享;

LVS工作类型

LVS有两部分组成:ipvsadm/ipvs,分别是用户空间的规则定义和Real Server管理工具;内核空间的调度分发组件;

ipvsadm:用户空间的规则定义和Real Server管理工具;

ipvs:工作于内核空间的Netfilter的INPUT Function之上,请求报文经路由到达用户空间进程之前,ipvs改变了报文的流向直接转给POSTROUTING,并根据 调度算法 选择一个Real Server,并对请求报文做相应的修改之后转发给Real Server。 Director与Real Server之间的packet-forwarding-method有4种 :

lvs-nat:修改请求报文的目标IP,报文的收发都由Director完成

lvs-dr:封装新的MAC地址,响应报文有Real Server直接响应给客户端

lvs-tun:在原请求报文中新加一个IP首部,远程

lvs-fullnat:同时修改请求报文的源和目标IP

LVS NAT

多目标的DNAT,通过修改请求报文的目标IP地址和PORT实现以Director为网关的调度与分发,正是因为RS的网关为Director,所以无需修改源IP,且Director和RS必须通过交换机相连接。可概括为以下特点:

RIP和DIP属于同一网络,且使用私网地址,Real Server的网关必须指向DIP(保证响应报文经由Director);

请求和响应文本都经由Director;在高负载场景中,Director很可能成为系统性能瓶颈;

Director主机为Linux系统,Real Server可以是任意支持集群服务的OS;

支持端口映射;

LVS DR(默认)

Direct Routing 直接路由,对请求报文封装一个MAC地址,根据调度算法广播发送给其中一台Real Server,并且由Real Server直接响应客户端请求。可概括为以下特点:

Real Server的RIP可使用私网地址,也可使用公网地址,但Director与Real Server直接不能经过路由

Real Server与Directory通过物理交换机连接

本文系统(linux)相关术语:linux系统 鸟哥的linux私房菜 linux命令大全 linux操作系统

主题: 服务器负载均衡算法LVLinuxSQLMySQLNginxUTFU
分页:12
转载请注明
本文标题:LVS
本站链接:http://www.codesec.net/view/529644.html
分享请点击:


1.凡CodeSecTeam转载的文章,均出自其它媒体或其他官网介绍,目的在于传递更多的信息,并不代表本站赞同其观点和其真实性负责;
2.转载的文章仅代表原创作者观点,与本站无关。其原创性以及文中陈述文字和内容未经本站证实,本站对该文以及其中全部或者部分内容、文字的真实性、完整性、及时性,不作出任何保证或承若;
3.如本站转载稿涉及版权等问题,请作者及时联系本站,我们会及时处理。
登录后可拥有收藏文章、关注作者等权限...
技术大类 技术大类 | 系统(linux) | 评论(0) | 阅读(92)