NAT 把目标地址做了转换;适用于互联网的用户访问局域网的服务器
SNAT 是把原地址做了转换;适用于内网访问互联网

LVS-NAT与LVS-DR的区别:
NAT在请求报文的时候,把目标地址做了转换,而DR是把MAC的地址做了转换
NAT在响应报文的时候要经过LVS;而DR则不用经过LVS
NAT支持端口映射;DR则不行(着重点是MAC地址)
DR下的RS都需要配VIP

lvs负载均衡不均匀_lvs负载均衡不均匀

1.DIP、RIP可以是私网地址
3.请求报文经过LVS,响应不走LVS
5.RS的OS支持隧道功能

tun是隧道的意思

lvs负载均衡不均匀_权重_02


工作原理:在请求报文到达lvs后,会在请求报文中封装一个新的头部,传给RS,接收后这个新的头部又卸掉

lvs负载均衡不均匀_请求报文_03


TUN工作模式下,RS也需要配VIP,因为有路由器隔开了,不要考虑VIP冲突

在响应的时候也不需要经过LVS,同时可以配多个路由器,实现服务器的跨地域、跨机房

lvs负载均衡不均匀_请求报文_04

lvs负载均衡不均匀_NAT_05


这个作为了解

lvs负载均衡不均匀_请求报文_06


DR中LVS和RS只能在一个机房,不能跨路由

因为响应不用经过LVS,所以TUN、DR可以支持更多RS调度算法:

面试:这两种的方法区别就是是否考虑后端RS的压力,静态不考虑(4种方法),动态考虑(6种)

lvs负载均衡不均匀_NAT_07


1.RR轮询:就是平均分配,一个个的分发

2.WRR加权轮询,要考虑RS的性能(例如新旧服务器),加权就是权重,按照一定的比例

3.SH将SIPhash,根据源IP来首次访问的RS,进行绑定

4.DH将VIPhash,是根据上次的访问,RS1有记录,就往RS1分发,提高访问速度,加入RS是缓存服务器,还可以节约带宽

一般用的更多是RR、WRR

lvs负载均衡不均匀_权重_08


1.LC:负载压力越小,连接数越少就往这调度;没考虑到服务器性能问题

2.WLC:第二个在第一个基础上就要考虑到性能问题,加权重;那首次访问就往权重小(性能差)的访问也不合理;

3.SED:解决首次访问后,但有可能因为权重差异大,前期一直往权重大的发,也不合理

4.NQ:解决前期一直往权重大的分发问题,第一轮均匀分配,后续再按照sed算法

5.LBLC:动态的DH算法:正向代理的负载均衡(宽带运营商)

lvs负载均衡不均匀_NAT_09


6.LBLCR:带复制功能的LBLC

一般场景用WLC、最优 NQ,LBLC、LBLCR基本上用在宽带运营商

操作用法:

lvs负载均衡不均匀_权重_10


要到lvs的vip才会分发;测试的话不能用ping去测试,ping不属于tcp协议;curl、http://vip等配LVS需要安装ipvsadm包

lvs负载均衡不均匀_lvs负载均衡不均匀_11