LVS-nat模式-原理介绍
集群,为解决某个特定问题将多台计算机组合起来形成的单个系统
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模式工作流程图:

个人理解:
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 时,调度器本身有可能成为系统的新瓶颈,次模式影响了性能发挥。
结语:后续更精彩
谢谢
LVS-nat模式-原理介绍的更多相关文章
- LVS负载均衡NAT模式原理介绍以及配置实战
LVS基本原理 流程解释: 当用户向负载均衡调度器(Director Server)发起请求,调度器将请求发往至内核空间 PREROUTING 链首先会接收到用户请求,判断目标 IP 确定是本机 IP ...
- 负载均衡集群介绍、LVS介绍、LVS调度算法、LVS NAT模式搭建
7月4日任务 18.6 负载均衡集群介绍18.7 LVS介绍18.8 LVS调度算法18.9/18.10 LVS NAT模式搭建 扩展lvs 三种模式详解 http://www.it165.net/a ...
- Linux centosVMware 负载均衡集群介绍、LVS介绍、LVS调度算法、LVS NAT模式搭建
一.负载均衡集群介绍 主流开源软件LVS.keepalived.haproxy.nginx等 其中LVS属于4层(网络OSI 7层模型),nginx属于7层,haproxy既可以认为是4层,也可以当做 ...
- 负载均衡集群相关、LVS介绍、LVS调度算法、LVS NAT模式搭建
1.负载均衡集群相关 2.LVS的三种模式:NAT.DR .IP tunnel 3. LVS的调度算法(共有8种) 4.LVS NAT模式搭建准备条件: 在分发服务器上安装:yum install ...
- Vmware虚拟机配置LVS/NAT模式遇到的坑。
这两天在研究LVS的负载均衡,先从最简单的LVS/NAT模式开始入手. 最后配置完之后能够相互之间Ping通,并且能够直接访问real服务器提供的web服务,而且防火墙也已经关闭了. 但是通过访问LV ...
- LVS负载均衡IP隧道模式原理介绍以及配置实战
LVS 基本工作原理 当用户向负载均衡调度器(Director Server)发起请求,调度器将请求发往至内核空间 PREROUTING 链首先会接收到用户请求,判断目标 IP 确定是本机 IP,将数 ...
- 负载均衡集群介绍 LVS介绍 LVS调度算法 LVS NAT模式搭建
LVS BAT模式搭建 更改主机名: hostnamectl set-hostname centos7-three bash 准备工作 • 三台机器 • 分发器,也叫调度器(简写为dir) • 内网: ...
- [LVS] 用keepalived实现LVS NAT模式高可用性
默认前提是LVS已经可以正常工作了. 因为是NAT模式,RS的路由要指向LVS的接口地址,所以需要一个统一的后台浮动地址,使得RS都指向这个浮动IP.否则在切换时,会导致RS回包到DOWN掉的LVS上 ...
- LVS NAT模式实践
client:192.168.4.10/24 proxy:192.168.2.5/24 192.168.4.5/24 web1:192.168.4.100/24 web2:192.168.4.200/ ...
随机推荐
- python所有的魔术方法
据说,Python 的对象天生拥有一些神奇的方法,它们总被双下划线所包围,他们是面向对象的 Python 的一切. 他们是可以给你的类增加魔力的特殊方法,如果你的对象实现(重载)了这些方法中的某一个, ...
- [Leetcode]003. Longest Substring Without Repeating Characters
https://leetcode.com/problems/longest-substring-without-repeating-characters/ public class Solution ...
- UVa1471
保留有价值的数字的做法,实际上这道题因为n只有1e5,所以不需要这种优化. #include<bits/stdc++.h> #define inf 0x3f3f3f3f ; using n ...
- JavaScript 中Array数组的几个内置函数
本文章内容均参考<JavaScript高级程序设计第三版> 今天在看JavaScript书籍的时候,看到之前没有了解过的JavaScript中Array的几个内置函数对象,为了之后再开发工 ...
- MiniProfiler NET Core
MiniProfiler 来分析 ASP.NET Core 应用 它会把结果直接放在页面的左下角,随时可以点击查看:这样的话就可以感知出你的程序运行的怎么样:同时这也意味着,在你开发新功能的同时,可以 ...
- [PHP] – 性能优化 – Fcgi进程及PHP解析优化
https://www.abcdocker.com/abcdocker/808------[PHP] – 性能优化 – Fcgi进程及PHP解析优化
- SSH 的端口转发
第一部分 概述 当你在咖啡馆享受免费 WiFi 的时候,有没有想到可能有人正在窃取你的密码及隐私信息?当你发现实验室的防火墙阻止了你的网络应用端口,是不是有苦难言?来看看 SSH 的端口转发功能能给我 ...
- C#字符串变量使用
string由于是引用类型,所以,声明的字符串变量会存储到堆上,而且该变量是不可变的,一旦初始化了该变量,该内存区域中存储的内容将不能更改.在对字符串操作时,是在堆上创建了一个新的字符串变量,并将新的 ...
- bootstrap中container和container-fluid的区别与用法
对bootstrap框架有一定了解的朋友都知道,一般页面布局中的开头会使用到container或container-fluid类,那么它们有什么区别呢?不急!下面为您讲解. 我们先来看看官方对这两个类 ...
- 使用java来压缩图片
使用java来压缩图片,简单几句,清清爽爽 使用0.3的压缩比得到的结果如下(从2.8M压缩到268K,且图片的清晰度看不出明显差别): package carlspringtest; import ...