LVS NAT模式原理及配置详解。

NAT模式优缺点:

因为请求与应答都要经过lvs服务器,所以访问量大的话lvs会形成瓶颈,一般要求10-20台节点。

注:(节点指后面的真实web服务器)

每台节点服务器的网关地址必须是lvs服务器的内网地址。

NAT模式支持对IP地址和端口进行转换。即用户请求的端口和真实服务器的端口可以不一致。


常见的四种算法:

rr      轮询算法,它将请求依次分配给不同的节点,各个节点均摊分配。这种算法简单,但只适合各个节点处理性能差不多的情况。


wrr   加权轮训调度,它将依据不同节点的权值分配任务。权值较高的节点将优先获得任务,并且分配到的连接数将比权值低的节点更多。相同权值的节点得到相同数目的连接数。


lc      最小连接数调度,IPVS表存储了所有活动的连接。Lvs服务器会比较将连接请求发送到当前连接最少的节点。


wlc   加权最小连接数调度,在节点性能差异较大的时候,可以为节点自动调整权重,权重较高的节点承担更大比例的连接。


一张简单的工作原理图。

所有的web与lvs维护一个虚拟ip 俗称vip

LVS NAT模式原理及配置详解。


NAT的特性:
  1> 节点应该使用私有地址;
  2> 节点的网关的必须指向lvs;
  3> 节点IP和lvs服务器IP必须在同一网段内;
  4> 请求和响应的报文都得经过lvs服务器;在高负载场景中,lvs服务器很可能成为系统性能瓶颈;



环境:

lvs:   192.168.1.1  100.1.1.1   

web1:   192.168.1.3

web2:   192.168.1.2

两个网络模仿公网与局域网。

LVS NAT模式原理及配置详解。


lvs服务器:

modprobe ip_vs  #加载ip_vs模块

配置好本地源 

yum install -y ipvsadm  #  安装lvs管理工具

 ipvsadm -A -t 100.1.1.1:80 -s rr #   添加vip

-A:添加虚拟服务器

-t :指定vip及tcp端口

-s:指定算法 

rr:轮询

ipvsadm -a -t 100.1.1.1:80 -r 192.168.1.2:80 -m -w 1   

ipvsadm -a -t 100.1.1.1:80 -r 192.168.1.3:80 -m -w 1

-a :添加节点 

-t :指定vip和端口

-r :指定节点ip及端口

-m:表示使用nat模式

-w:设置权重


 ipvsadm -ln 可以查看当前节点信息

 service ipvsadm save   #保存规则

service ipvsadm restart   #重启服务


web1服务器:

echo "web1">/var/www/html/index.html   #写一个测试页面

service httpd start

把网关设置成lvs内网的ip

关闭防火墙

web2服务器:

echo "web2">/var/www/html/index.html   #写一个测试页面

service httpd start

把网关设置成lvs内网的ip

关闭防火墙

访问100.1.1.1 刷新可以看到web1 web2轮流响应请求  

LVS NAT模式原理及配置详解。


希望对你有所帮助,再见。