企业集群平台架构设计与实现lvs篇2|学习笔记

本文涉及的产品
应用型负载均衡 ALB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
简介: 快速学习企业集群平台架构设计与实现lvs篇2

开发者学堂课程【企业集群平台架构设计与实现:lvs/haproxy/keepalived:企业集群平台架构设计与实现lvs篇2】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/391/detail/5010


企业集群平台架构设计与实现lvs篇2


内容介绍:

一、NAT/FULL NAT

二、IP TUNNEL模式

一、NAT/FULL NAT

接下来我们来看一下第二种模式,这个模式应用很多:

1.NAT模式

结构图:

请求是经过互联网之后,第一步请求转向到服务器上,之后他把请求通过负载调度算法分配到后端任意的算法,后端接收到请求之后,再把数据经过交换机返回到负载均衡器,最后再返回到客户端。所有的请求都是经过LB服务器进来,再通过LB服务器返回出去

1.png

NAT模式∶即 Virtual Server via Network Address Translation,也就是网络各地址翻译技术实现虚拟服务器。当用户请求到达调度器时,调度器将请求报文的目标地址(即虚拟 IP 地址)改写成选定的 Real Server 地址,同时将报文的目标端口也改成选定的 Real Server的相应端口,最后将报文请求发送到选定的 RealServer。在服务器端得到数据后,Real Server 将数据返回给用户时,需要再次经过负载调度器将报文的源地址和源端口改成虚拟 IP 地址和相应端口, 然后把数据发送给用户,完成整个负载调度过程。

下面是 NAT模式 IP包调度过程图∶

首先还是客户端发送请求,客户端对应的IP是CIP,Lb服务器对应的IP为DIP,发动相应请求之后,源IP保持不变,变得是目的IP地址,由原来的VIP,修改成RIP,即后端Realserver某一台服务器IP地址。修改完后,接再来操作和刚才一样,当接收到这包之后就会对包产生一个响应请求,响应完了之后对包做一个转发,转发格式把自己IP地址当作源IP地址,把目标IP地址当作VIP地址,端口还是保持不变,为80端口,然后把请求返回到LB负载均衡器上。第二块在做转发请求时对目的IP地址做了修改,负载均衡器对目的地址和源IP以及端口修改,回源地址把数据再次传回到LB负载均衡器上。

实现一个正常的链接通信,还需要把发送的源地址改成VIP地址,目的地址修改为CIP地址,所有的IP包进出操作都要经过负载均衡器,后端把请求返回给负载均衡器后,还会修改目的源地址。

流转环节最多的时负载均衡器,这种模式下LB工作是非常高的,当然他也有自己的好处,前端访问的端口通过映射的方法,外网映射到80端口,终端修改的是IP地址,对网络是没有要求的,不在一个网段也没有关系,只要能够互相通信即可,没有限制这两个一定要在一个网段

2.png

原理图简述∶

(1)客户端请求数据,目标IP为 VIP

(2)请求数据到达 LB 服务器,LB 根据调度算法将目的地址修改为 RIP 地址及对应端口(此RIP 地址是根据调度算法得出的。)并在连接 HASH 表中记录下这个连接。

(3)数据包从 LB 服务器到达 RS 服务器 webserver,然后 webserver 进行响应。Webserver的网关必须是 LB,然后将数据返回给 LB 服务器。

(4)收到 RS 的返回后的数据,根据连接 HASH表修改源地址为 VIP、目标地址为 aP,及对应端口 80.然后数据就从 LB 出发到达客户端。

(5)客户端收到的就只能看到 VIP\DIP信息。

2.NAT模式优缺点

最主要的缺点所有的请求都要经过LB返回,那么他的负载是很高的,也称为整个系统的故障点和屏障,在整体上来说他的性能是比较地下的。

最主要的有点是对IP地址没有限制,我们可以在一个服务器上配置公网地址即可,每台服务器上server服务器网关地址必须配置为LB内网IP地址

支持端口转发,用户请求的服务器端口可以不一致

NAT技术将请求的报文和响应的报文都需要通过 LB 进行地址改写,因此网站访问量比较大的时候 LB 负载均衡调度器有比较大的瓶颈,一般要求最多之能 10-20台节点

只需要在 LB 上配置一个公网IP地址就可以了。

每台内部的 realserver 服务器的网关地址必须是调度器 LB 的内网地址。

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

3.FULL NAT模式

在NAT模式的基础上又升级的一种模式,基本上和NAT模式是一样的。

FULNAT模式把源IP也进行修改了,当用户请求到LB负载均衡器,不但修改目标IP地址,把源IP修改为DIP,DIP和VIP是有区分的,最大的变化即修改IP.

目标IP重新改为DIP,才可发到LB负载均衡器,不但把目标IP做了修改变化,还能把源IP进行修改

整体性能来说,FULNAT模式比NAT模式低10%,他的工作量比NAT模式大,源IP的修改很繁琐

4.FULNAT模式注意事项

FULL NAT 模式也不需要 LBIP 和 realserverip在同一个网段;

FULL NAT 跟 nat 相比的优点是∶保证 RS 回包一定能够回到 LVS;因为源地址就是 ⅣS-> 不确定

FULL NAT 因为要更新 sorce ip 所以性能正常比 NAT模式下降 10%


二、IP TUNNEL模式

1.图解:

前端把用户发送请求,还是到LB服务器上,根据自身负载均衡器调度算法,把请求发送到后端,把数据包封装好到IP隧道,把数据发送到后端,后端server接到请求之后,进行处理数据,处理完成之后直接把数据直接后端服务器返回给用户。

3.png

2.TUN ∶

即 Virtual Server via IP Tunneling 也就是通过 IP 隧道技术实现虚拟服务器。在 VS/TUN 方式中,调度器采用 IP 隧道技术将用户请求转发到某个 Real Server,而这个 Real Server 将直接响应用户的请求,不再经过前端调度器。此外,对 Real Server 的地域位置没有要求,可以和 Director Server 位于同一个网段,也可以在独立的一个网络中。因此,在 TUN方式中,调度器将只处理用户的报文请求,从而使集群系统的吞吐量得到提高。

3.基于IP隧道模式:

负载均衡器首先将IP包结构进行改变,在IP封装一个IP包头,根据调度算法经过IP隧道,随机分到后端节点。根据隧道协议来实现,通过协议形式,请求过来后接收包,把相对于的隧道包头详细去掉,去掉后又变成源IP和目标IP,没有做任何修改。实现机制不同,在网络结构上,负载均衡器和server不要求两个服务器在同一个网段。

4.png

它和 NAT模式不同的是,它在 LB 和 RS 之间的传输不用改写IP 地址。而是把客户请求包封装在一个 IP tunnel 里面,然后发送给 RS 节点服务器,节点服务器接收到之后解开 1P tunnel 后,进行响应处理。并且直接把包通过自己的外网地址发送给客户不用经过 LB 服务器。

原理图过程简述

客户请求数据包,目标地址 VIP发送到 LB 上。

LB 接收到客户请求包,进行IP Tunnel 封装。即在原有的包头加上 IP Tunnel 的包头。然后会根据 LVS 设置的 LB 算法选择一个合适的realserver;并把 dient 发送的 package 包装到一个新的IP 包里面;新的 1P包的 dst是 realserver 的 IP。

RS 节点服务器根据 1P Tunnel 包头信息收到请求包,realserver 收到这个padkage 后判断dst ip 是目 □,然同解粉H来的】 package 中 dst 是 VIP;会和测手们1的【网-后上是经线邦定了VIp 的ip地址;如果绑定了就会处理这个包,如果没有直接丢掉。我们一般在 realserver上面 lo∶O 绑定了 VIP的 ip地址,就可以处理得到客户的请求包并进行响应处理。

响应处理完毕之后,RS 服务器使用自己的公网线路将这个响应数据包发送给客户端。源1P 地址是VIP 地址。

4.注意事项

优点:

不受网络限制,不要求在统一网段,实现比较灵活,可横向拓展

缺点:

隧道模式对网络管理有差别,传输方式性能很低

TUNNEL 模式必须在所有的 realserver 机器上面绑定 VIP的 IP地址

TUNNEL 模式的vip---->re alserver 的包通信通过TUNNEL模式,不管是内网和外网都能通信,所以不需要 lvs vip 跟 realserver 在同一个网段内

TUNNEL 模式 realserver 会把 packet 直接发给 client 不会给 Ivs 了

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
19天前
|
自然语言处理 JavaScript Java
《鸿蒙HarmonyOS应用开发从入门到精通(第2版)》学习笔记——HarmonyOS架构介绍
HarmonyOS采用分层架构设计,从下至上分为内核层、系统服务层、框架层和应用层。内核层支持多内核设计与硬件驱动;系统服务层提供核心能力和服务;框架层支持多语言开发;应用层包括系统及第三方应用,支持跨设备调度,确保一致的用户体验。
137 81
|
3月前
|
分布式计算 Kubernetes Hadoop
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
大数据-82 Spark 集群模式启动、集群架构、集群管理器 Spark的HelloWorld + Hadoop + HDFS
213 6
|
2月前
|
人工智能 云计算 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日~10日在江苏张家港召开的CCF ChinaNet(即中国网络大会)上,众多院士、教授和业界技术领袖齐聚一堂,畅谈网络未来的发展方向,聚焦智算集群网络的创新变革。
阿里云引领智算集群网络架构的新一轮变革
|
2月前
|
负载均衡 Dubbo 算法
集群容错架构设计
集群容错架构设计
37 1
集群容错架构设计
|
30天前
|
存储 负载均衡 监控
揭秘 Elasticsearch 集群架构,解锁大数据处理神器
Elasticsearch 是一个强大的分布式搜索和分析引擎,广泛应用于大数据处理、实时搜索和分析。本文深入探讨了 Elasticsearch 集群的架构和特性,包括高可用性和负载均衡,以及主节点、数据节点、协调节点和 Ingest 节点的角色和功能。
49 0
|
2月前
|
人工智能 运维 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日至10日,CCF ChinaNet(中国网络大会)在江苏张家港召开,众多院士、教授和技术领袖共聚一堂,探讨网络未来发展方向。阿里云研发副总裁蔡德忠发表主题演讲,展望智算技术发展趋势,提出智算网络架构变革的新思路,发布高通量以太网协议和ENode+超节点系统规划,引起广泛关注。阿里云HPN7.0引领智算以太网生态蓬勃发展,成为业界标杆。未来,X10规模的智算集群将面临新的挑战,Ethernet将成为主流方案,推动Scale up与Scale out的融合架构,提升整体系统性能。
|
2月前
|
存储 缓存 NoSQL
【赵渝强老师】Memcached集群的架构
Memcached 是一个高性能的分布式内存对象缓存系统,通过在内存中维护一个巨大的 Hash 表来存储各种格式的数据,如图像、视频、文件及数据库检索结果等。它主要用于减轻数据库压力,提高网站系统的性能。Memcached 不支持数据持久化,因此仅作为缓存技术使用。其数据分布式存储由客户端应用程序实现,而非服务端。
【赵渝强老师】Memcached集群的架构
|
3月前
|
负载均衡 安全 调度
Docker Swarm集群架构
【10月更文挑战第8天】
106 1
|
2月前
|
调度 Docker 容器
【赵渝强老师】Docker Swarm集群的体系架构
Docker Swarm自1.12.0版本起集成至Docker引擎,无需单独安装。它内置服务发现功能,支持跨多服务器或宿主机创建容器,形成集群提供服务。相比之下,Docker Compose仅限于单个宿主机。Docker Swarm采用主从架构,Swarm Manager负责管理和调度集群中的容器资源,用户通过其接口发送指令,Swarm Node根据指令创建容器运行应用。
|
3月前
|
SQL 分布式计算 Hadoop
Hadoop-12-Hive 基本介绍 下载安装配置 MariaDB安装 3台云服务Hadoop集群 架构图 对比SQL HQL
Hadoop-12-Hive 基本介绍 下载安装配置 MariaDB安装 3台云服务Hadoop集群 架构图 对比SQL HQL
109 3

热门文章

最新文章