欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

LVS-nat模式-原理介绍

程序员文章站 2022-05-25 14:45:22
集群,为解决某个特定问题将多台计算机组合起来形成的单个系统lvs-nat:本质是多目标IP的DNAT,通过将请求报文中的目标地址和目标端口修改为某挑出的RS的RIP和PORT实现转发lvs集群类型中的术语:VS:Virtual Server,Director Server(DS)Dispatcher... ......


集群,为解决某个特定问题将多台计算机组合起来形成的单个系统

lvs-nat:

本质是多目标ip的dnat,通过将请求报文中的目标地址和目标端口修改为某挑出的rs的rip和port实现转发

lvs集群类型中的术语:

vs:virtual server,director server(ds)
dispatcher(调度器),load balancer
rs:real server(lvs), upstream server(nginx)
backend server(haproxy)
cip:client ip
vip: virtual serve ip vs外网的ip
dip: director ip vs内网的ip
rip: real server ip

lvs-nat模式工作流程图:

LVS-nat模式-原理介绍

个人理解:

1、当客户端发起链接请求,访问web服务器,首先到达最近的路由器,中间串过层层路由关卡,来到了lvs服务器,

2、经过iptables表规则筛选,发现是给它自己的,而它自己本机没有web服务,就把请求目标变更为rip,源不变

3、通过路由表postrouting把变更后的请求报文发给rip

4、rs中有个rip收到后,开始回应,发送回应报文,源rip,目标cip,经过postrouting回到lvs调度器

5、在请求报文中做了转换,回应报文也要转回去,所有到达lvs调度器,更改回应源,源vip,目标cip,经过prerouting到达最近的路由

6、穿过层层路由大军到了客户端

nat模式注意事项:

(1)rip和dip应在同一个ip网络,且应使用私网地址;rs的网关要指向dip

(2)请求报文和响应报文都必须经由director转发,director易于成为系统瓶颈

(3)支持端口映射,可修改请求报文的目标port

(4)vs必须是linux系统,rs可以是任意os系统

nat模式-优点:

(1)安全

(2)目标地址不仅可以替换,端口号也参与替换

(3)可以实现不同网段的数据请求

nat模式-缺点:

因为在 vs/nat 中请求和响应报文都需要通过负载调度器,响应报文实体内容多大,导致压力倍增,伸缩能力有限, 当服务器结点数目升到 20 时,调度器本身有可能成为系统的新瓶颈,次模式影响了性能发挥。


结语:后续更精彩

也可移步

谢谢