负载均衡 LVS 工作模型(二)|学习笔记

本文涉及的产品
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
简介: 快速学习负载均衡 LVS 工作模型

发者学堂课程【LVS 负载均衡实战负载均衡 LVS 工作模型学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/553/detail/7632


负载均衡 LVS 工作模型(二)


三、lvs 集群的类型

lvs: ipvsadm/ipvs

ipvsadm :用户空间的命令行工具,规则管理器

用于管理集群服务及RealServer

ipvs :工作于内核空间netfilter日的INPUT钩子上的框架

IPVS的框架示意图:

image.png

/**

*最大的方框表示lvs服务器

*用户发送请求首先会到达prerouting,再交由路由表

*(route)检查,检查完毕后交由input转发,当input转*发完毕后也就到达了本地进程,响应完毕后到达output,

*output与forward最终都会汇总到route路由表,经过*路由表审核后,还会经过postrouting。Lvs在route与*input之间的位置进行工作。在此可以截取错误指令发给route。

**/

lvs集群的类型:

lvs-nat :修改请求报文的目标IP,多目标IP的DNAT

lvs-dr:操纵封装新的MAC地址

//注:重点掌握lvs-nat,lvs-dr两种集群模式

lvs-tun:在原请求IP报文之外新加一个IP首部

lvs-fullnat :修改请求报文的源和目标IP

//注:了解lvs-tun,lvs-fullnat两种集群模式的原理即可。

LVS/NAT的体系结构如下图:

NAT的工作原理:

image.png

/**

*lvs服务器上存在两个地址,一个是vip,用于连接外网,

*另一个是 DIP用于连接内网。两台RS服务器的地址不同。

*客户端的ip地址是 CIP。客户端(浏览器)的地址是原地*址,目标是vip,DEST是TCP的80端口。

*DNAT 的工作原理就是将用户发送的请求转发到某个固*定的端口上,原地址不变,端口不变,目标替换成需要转*发成的服务器(RIP1)。数据报文在经过内部的网络之后

*到达了后端的RS1,后端在回应数据报文时,原地址变成*了RIP1 80/TCP,目标地址则变成了CIP XXXXX

数据*报文在返回的时候应该走原路径而不是另辟蹊径,此时所*有被替换的地址都应被替换回去。这种模式存在的问题是*lvs服务器负载压力过大。

后端服务器与lvs服务器之间*可以存在路由器,但是一般情况下不会加路由器,中间一*般是交互机

**/

/**

*user 客户端通过客户端发请求到达 lvs,lvs 收到请求后的原地址理*论上应该是客户端的地址,目标地址是 vip,这时的lvs服务器需要

*将其进行转换到内部去,转换的过程地址会发生转变,类似于 DNAT

*的工作原理。

**/

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
应用服务中间件 API nginx
一个超长时间的http api 的 nginx 超时错误 java.io.IOException: unexpected end of stream on Connection
一个长时间的http api 的 nginx 超时错误 直接访问IP是OK的。但是经过了中间一台域名机子,配置了nginx (基本上所有的超时时间timeout配置项都配置了足够的时间)的proxy_pass到这个IP上。
7755 0
|
10月前
|
机器学习/深度学习 编解码
1975 年至 2020 年全球居住人口估计值以 5 年为间隔,2025 年和 2030 年的人口预测值
该数据集描述了1975年至2020年全球居住人口的空间分布,以5年为间隔提供估计值,并预测2025年和2030年的人口分布。数据来自CIESIN GPWv4.11,基于普查数据分解到网格单元,结合GHSL全球建成区地表图层。分辨率为100米,支持研究和应用。项目由欧盟委员会和联合研究中心支持。
548 8
|
安全 Linux Shell
用户和组高级操作
本文介绍了Linux系统中用户和组管理的基本操作,包括使用`usermod`命令修改用户属性、使用`passwd`和`usermod`命令禁用和恢复用户账户、使用`userdel`命令删除用户账户、使用`groupadd`、`groupdel`和`groupmod`命令管理组群,以及使用`gpasswd`命令为组群添加用户。此外,还介绍了`su`和`sudo`命令的使用方法,帮助用户在不同身份之间切换。
199 5
|
JavaScript Java 测试技术
基于微信小程序的小说阅读系统+vue.js附带文章和源代码设计说明文档ppt
基于微信小程序的小说阅读系统+vue.js附带文章和源代码设计说明文档ppt
358 1
|
安全 算法 编译器
【C++ 基础知识】进一步了解 C++ 中 操纵符std::endl 的原理
【C++ 基础知识】进一步了解 C++ 中 操纵符std::endl 的原理
740 0
|
人工智能 自然语言处理 安全
ChatGPT 之言情作家:第十二章到第十九章
ChatGPT 之言情作家:第十二章到第十九章
296 0
|
缓存 NoSQL Java
springboot中集成redis,二次封装成工具类
springboot中集成redis,二次封装成工具类
|
供应链 监控 物联网
未来交织:新兴技术趋势与应用探索
随着科技的迅猛发展,一系列新兴技术正逐步走入我们的视野,并开始在各行各业中扮演着越来越重要的角色。本文将深入探讨区块链技术、物联网(IoT)、虚拟现实(VR)等技术的发展趋势,以及它们在不同应用场景中的革新潜力。我们将分析这些技术如何推动商业模式的变革,改善人们的日常生活,并对未来的社会经济结构产生深远影响。
|
数据可视化 数据挖掘
聚类分析 | MATLAB实现GMM高斯分布混合模型的聚类结果可视化
聚类分析 | MATLAB实现GMM高斯分布混合模型的聚类结果可视化
|
编解码 计算机视觉
名声大噪的YOLO迎来YOLOv8,迅速包揽目标检测、实例分割新SOTA(2)
名声大噪的YOLO迎来YOLOv8,迅速包揽目标检测、实例分割新SOTA
471 0