lvs-nat简单描述

简单罗列基础命令,只分享我的想法!

介绍Linux Cluster中lvs-nat和相应的负载均衡搭建方法。

  • lvs介绍

lvs是章文嵩发明的根据目标地址和端口做出转发与否决策,并根据相应调度算法做出决策的Linux Cluster。不像Nginx等基于应用层协议依靠socket来实现负载均衡,受限于端口的数量。

  • lvs-nat类型说明

RIP:Real IP,应用服务器的ip。

VIP:DirectorVirtual IP,面向客户端的ip。

DIP:Director IP,面向后面应用服务器通信的IP。

类似于DNAT, 但支持多目标转发;

它通过修改请求报文的目标地址为根据调度算法所挑选出的某RS的RIP来进行转发;

架构特性:

(1) RS应该使用私有地址,即RIP应该为私有地址;各RS的网关必须指向DIP;

(2) 请求和响应报文都经由Director转发;高负载场景中,Director易于成为系统瓶颈;

(3) 支持端口映射;

(4) RS可以使用任意类型的OS;

(5) RS的RIP必须与Director的DIP在同一网络;

三、算法说明

静态方法:仅根据算法本身实现调度;

RR: round-robin, 轮询;轮叫、轮调、轮流;

WRR:weighted round-robin, 加权轮询;

SH:Source ip Hashing,源地址哈希;把来自同一个地址请求,统统定向至此前选定的RS;

DH:Destination ip Hashing, 目标地址哈希;把访问同一个目标地址的请求,统统定向至此前选定的某RS;

动态方法:根据算法及后端RS当前的负载状况实现调度;

LC: least connection算法

Overhead=Active*256+Inactive

WLC: weighted least connection算法

Overhead=(Active*256+Inactive)/weight

SED:Shorted Expection Delay算法

Overhead=(Active+1)*256/weight

NQ:Never Queue算法

LBLC:Local-Based Least Connection,动态方式的DH算法;

LBLCR:Replicated LBLC,算法

四、配置

Rictor配置:

yum install ipvsadm -y
Ipvsadm –A –t 192.168.0.22:80 –s rr
Ipvsadm –a –t 192.168.0.22:80 –r 192.168.64.3 –m
Ipvsadm –a –t 192.168.0.22:80 –r 192.168.64.3 –m
echo 1 > /proc/sys/net/ipv4/ip_forward

另外两台测试机需要安装httpd,并把网关指向192.168.64.2然后开启服务即可,实验图如下图:

图1

五、利用ab对http://192.168.0.22/index.html做测试,查看rr的效果。

ab –c 100 –n 11000 http://192.168.0.22/index.html,你也可以通过物理机的浏览器查看rr这个算法的效果,不过因为缓存的关系,效果不是特别的好,建议使用ab。

效果如下:

图2

下一次,简单描述lvs-dr的使用说明,之后会对lvs和VMware的网络做总体的描述。

时间: 2024-10-28 20:13:31

lvs-nat简单描述的相关文章

linux lvs集群nat模式(比上一篇的lvs nat实用)

这是一篇以apcache服务为例介绍lvs的nat模式配合keepalived实现的方案.实验拓扑图如下所示,虚线上面的大图可以看成是虚线下面"服务器群"的放大版: 本实验共用到4台linux虚拟服务器,其中两台rhel5.6作为主从HA(keepalived)服务器,另外两台rhel4.6模拟Apache服务器--用两台Apache服务器模拟多台Apache服务器. 实验原理是,用Apache服务器为代表模拟实际用到的服务器,用两台Apache模拟多台Apache,所有的Apache

LVS/NAT/DR/TUN三种模式

集群简介 计算机集群简称集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作.在某种意义上,他们可以被看作是一台计算机.集群系统中的单个计算机通常称为节点,通常通过局域网连接,但也有其它的可能连接方式.集群计算机通常用来改进单个计算机的计算速度和/或可靠性.一般情况下集群计算机比单个计算机,比如工作站或超级计算机性能价格比要高得多. 集群就是一组独立的计算机,通过网络连接组合成一个组合来共同完一个任务LVS在企业架构中的位置: 以上的架构只是众多企业里

LVS NAT 模型配置实例

LVS 负载均衡 一.系统环境: 系统:Centos 6.5_64位 二.Director和Real Server的配置部署: 1台director server:VIP/外网ip:192.168.121.141 内网ip:172.16.2.31 2台real server:172.16.2.21       172.16.2.24  并且需要设置内网网关为director的内网ip:172.16.2.31 director server 2块网卡配置: 一块172.16.2.31 网卡为桥接模

CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡

一.系统环境 实验拓扑: 实验环境: Vmware 9.01 + Windows 8 x64 企业版+8G内存 虚拟机步骤: 1.安装一台CentOS 6.3 x64主机,内存为1GB,网络为NAT模式,注意检查Vmware中EDIT菜单下Virtual Network Editor中VMnet8 2. 加电,安装系统.基础知识了,不再多说,注意:选择英文而不要选择中文,选择是Basic Server模式,系统名称:LVS-MASTER 3.安装系统后,用root用户登录进去,执行 ifconf

Vmware虚拟机配置LVS/NAT模式遇到的坑。

这两天在研究LVS的负载均衡,先从最简单的LVS/NAT模式开始入手. 最后配置完之后能够相互之间Ping通,并且能够直接访问real服务器提供的web服务,而且防火墙也已经关闭了. 但是通过访问LVS服务器死活访问不了Real服务器,利用tcpdump和iftop监控软件查看了一下,发现握手出现的问题! 先说一下用于测试LVS/NAT模式的一些配置信息吧. [真实] PC的网络: 外网IP:xxx.xxx.xxx.xxx这个是运营商动态分配给我的一个公网IP. 内网IP:192.168.123

LVS nat 是否需要借助iptables 的snat实现负载均衡

先贴图: 这个图用的cisco的路由器.事实结果是不用做snat. 然而lvs的nat 跟这个模型很相似,有人说lvs nat 是多组的dnat,现在我来证实一下 lvs 是否需要开启iptables  snat 来帮助realserver 把数据包做转换. 还是lvs自身来转换数据包结构. 实验所需: lvs配置的关键项我贴出来,我用的keepalived 配置,方便写而且能进行主机存活监测 [[email protected] ~]# cat /proc/sys/net/ipv4/ip_fo

负载均衡之LVS/NAT模式

1.LVS.NAT简介 LVS 是Linux Virtual Server的简称,在实际环境中经常作为B/S结构的网络应用中的负载均衡器来使用,工作在7层网络模型中的网络层,也就是通常说的IP层,由于数据的处理是在Linux内核态完成的,比起在第七层工作的负载均衡设备来说,理论上性能要高一些. NAT 是Network AddressTranslation,网络地址转换的简称,借助于NAT,私有(保留)地址的"内部"网络通过路由器发送数据包时,私有地址被转换成合法的IP地址,一个局域网

LVS的简单示例(一)

LVS的简单示例 1.使用NAT模型的TCP协议类型的lvs服务负载均衡一个php应用,如Discuz!论坛或者phpMyAdmin: 必要条件:三台主机(一个调度器两个服务器) 声明:172.16.1.11作为调度器,192.168.100.2和192.168.100.3作为服务器 第一步:给调度器配置一个网络适配器,配置其IP地址为192.168.100.1 第二步: 服务器配置(Real Server即RS): 配置两个RS的为同一网关: # route add default gw 19

lVS(nat模式)+keepalived搭建

关于网上lvs+keepalived的文章很多,但是多数都是DR模式的方案,对于 nat模式的并不多见,因此,在此写一份nat模式的文章,仅供分享也当笔记保存. 网络拓扑结构: 现在的Linux系统内核都是支持lvs的,所以我们直接可以用yum安装ipvsadm yum 源的替换,将系统的yum源替换成163的yum源 [[email protected] ~]# cd /etc/yum.repos.d/ [[email protected] yum.repos.d]# ls centos-16