《负载均衡原理与技术实现计算机服务器_计算机-服务器.pdf》由会员分享,可在线阅读,更多相关《负载均衡原理与技术实现计算机服务器_计算机-服务器.pdf(13页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、负载均衡原理与技术实现 负载均衡原理与技术实现 负载均衡(Load Bala nee,简称LB)是一种服务 器或网络设备的集群技术。负载均衡将特定的业 务(网络服务、网络流量等)分担给多个服务器或 网络设备,从而提高了业务处理能力,保证了业 务的高可用性。负载均衡基本概念有:实服务、实服务组、虚服务、调度算法、持续性等,其常 用应用场景主要是服务器负载均衡,链路负载均 衡。一服务器负载均衡 服务器负载均衡根据 LB设备处理到的报文层 次,分为四层服务器负载均衡和七层负载均衡,四层处理到IP包的IP头,不解析报文四层以上 载荷(L4 SLB);七层处理到报文载荷部分,比如 HTTP RTSP S
2、IP报文头,有时也包括报文内容 部分(L7 SLB)。1.四层服务器负载均衡技术 客户端将请求发送给服务器群前端的负载均衡 设备,负载均衡设备上的虚服务接收客户端请 求,通过调度算法,选择真实服务器,再通过网 络地址转换,用真实服务器地址重写请求报文的 目标地址后,将请求发送给选定的真实服务器;真实服务器的响应报文通过负载均衡设备时,报 文的源地址被还原为虚服务的 VSIP,再返回给 客户,完成整个负载调度过程。报文交互流程如 下:Note;De!=Daeiinaikn IP SrG=Snurcn IP NAT方式的服务器负载均衡报文交互流程图报文 交互流程说明:(1)Host发送服务请求报文
3、,源IP为Host IP、目的IP为VSIP(2)LB Device 接收到请求报文后,借助调度算 法特定的业务网络服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址被还原为虚服务的再返回给客户完成整个负载调度过程报文
4、交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助计算出应该将请求分发给哪台 Server(3)LB Device使用DNAT技术分发报文,源IP 为 Host IP、目的 IP 为 Server IP(4)Server接收并处理请求报文,返回响应报文,源 IP 为 Server IP、目的 IP 为 Host IP(5)LB Device接收响应报文,转换源IP后转发,源IP为VSIP、目的IP为Host IP 2.七层服务器负载均衡技术 七层负载均衡和四层负载均衡相比,只是进行负 载均衡的依据不同,而选择确定的实服务器后,所做的处理
5、基本相同,下面以 HTTP应用的负载 均衡为例来说明。由于在TCP握手阶段,无法获得HTTP真正的请 求内容,因此也就无法将客户的TCP握手报文直 接转发给服务器,必须由负载均衡设备先和客 户完成TCP握手,等收到足够的七层内容后,再 选择服务器,由负载均衡设备和所选服务器建立 TCP连接。七层负载均衡组网和四层负载均衡组网有一个 显著的区别:四层负载均衡每个虚服务对应一个 实服务组,实服务组内的所有实服务器提供相同 的服务;七层负载均衡每个虚服务对应多个实服 务组,每组实服务器特定的业务网络服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实
6、服务实服务组虚服务调度算法持续性等其常用应用场景主要是服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助提供相同的服务。根据报文 内容选择对应的实服务组,然后根据实服务组调 度算法选择某一个实服务器。特定的业务网络
7、服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助 七层负
8、载均衡组网图 上图中描述了基于HTTP的URI目录信息进行的 七层负载均衡部署,报文交互流程图如下:in CP-wnu 啊-2 VIP Cir.卜 uaeq=Y屁k x 1.电 1工 ;I+T C P-VIP,Ubk.MH xp dCk 口丸 f 取山泣曲 y x LM y I=Utl/WIWiJ-J h VlP-ir.diiriieq-.iicK x n 卩)辭靳撇丈,逝挣实瞬务 器匸界釀存谏轴求摄丈 ClP-hgTff,丁仇 辑号=.”SIPKl比 叮 1)41命玄q=w,1咔-、7:(K UP-Sil*.-J.Hii.set-i.ick -211-4 n知憶改俄送加骤绫存的清求按工 J:
9、-、F寸-1讲 1P-AQ!I 曲诃辭q=w-!翩=5 i HTTP 200 OK 七层负载均衡报文交互流程图报文交互流程说 明:碳并曲柑*HW4 IB 特定的业务网络服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址
10、被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助(I)-(3):Client 和 LB 建立 TCP连接;:Client发送HTTP青求,目的IP为虚IP;(5):LB设备分析报文,根据调度算法选择实服 务器,注意此时会缓存该报文;(6):LB设备向实服务器发Syn报文,序列号为 Client的Syn报文序列号:Server发送Syn/Ack报文,目的IP为 Clie nt(8):LB接收Server的Syn/Ack报文后,回应 ACK报文(9):修改步骤(5)中缓存的报文目的IP和
11、TCP 序列号,然后发给Server;(10):Server发送响应报文到LB;(II):LB修改步骤(9)中的报文的源地址和 TCP 序列号后转发给Client。二链路负载均衡 在企业网、运营商链路出口需要部署 LB设备以 优化链路选择,提升访问体验,链路负载均衡按 照流量发起方向分为Inbound负载均衡和 Outbound负载均衡 1.I nbou nd入方向负载均衡 Inbound负载均衡技术是DNS智能解析的一种,特定的业务网络服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是服
12、务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助外网用户通过域名访问内部服务器时,Local DNS的地址解析请求到达 LB设备,LB根据对 Local DNS的就近性探测结果响应一个最优的IP 地址,外网用户根据
13、这个最优的IP响应进行对 入方向负载均衡 流程简述如下:(1)外部用户进行资源访问前先进行 DNS解析,向其本地DNS服务器发送DNS请求。(2)本地DNS服务器将DNS请求的源IP地址替换 2J DNS request:4)當 rpfifxinw L|(3)Schduinr 内部服务器的访问 Inbound链路负载均衡组网图 Lwsi DNS ierver(5 DNS res-panst DNS f鬧m LB device 特定的业务网络服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是
14、服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助为自己的IP地址,并转发给域名对应的权威服 务器-LB device。(3)LB device 根据DNS请求的域名和配置的 Inbound链路负载均衡规则进行域名
15、解析。(4)LB device 按照域名解析的结果,将 DNS应 答发送给本地DNS服务器。(5)本地DNS服务器将解析结果转发给用户。(6)用户使用解析结果选择的链路,直接对 LB device进行资源访问。2.Outbound出方向负载均衡 内网用户访问In ter net 上其他服务器。Outbound链路负载均衡中VSIP为内网用户发送 报文的目的网段。用户将访问 VSIP的报文发送 到负载均衡设备后,负载均衡设备依次根据策 略、持续性功能、就近性算法、调度算法选择最 佳的链路,并将内网访问外网的业务流量分发到 该链路。Outbound链路负载均衡组网图 特定的业务网络服务网络流量等分
16、担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助Outbound负载均衡
17、报文交互流程如下:Outbound链路负载均衡流程图 Outbound负载均衡报文交互流程说明:LB Device接收内网用户流量-(2)LB Device 依次根据策略、持续性功能、就 近性算法、调度算法进行链路选择在Outbound 链路负载均衡组网中,通常使用就近性算法或带 宽调度算法实现流量分发(3)LB device 按照链路选择的结果将流量转发 给选定的链路-(4)LB Device接收外网用户流量-(5)LB Device将流量转发给内网用户 三负载均衡优化及应用 1.TCP连接复用 连接复用功能通过使用连接池技术,可以将前端 大量的客户的HTTP请求复用到后端与服务器建 立的少
18、量特定的业务网络服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报
19、文后借助的TCP长连接上,大大减小服务器的性 能负载,减小与服务器之间新建TCP连接所带来 的延时,并最大限度减少后端服务器的并发连接 数,降低服务器的资源占用。TCP连接复用示意图上图给出了 TCP连接复用的 简单过程描述。由Client端发送的Reql/Req2/Req3三个HTTP请求,经过LB设备后,复用了 LB设备和Server端已经建立好的连接,将 Clie nt端的三个请求通过两个TCP连接发送给 了服务器端。2.SSL卸载 为了避免明文传输出现的安全问题,对于敏感信 息,一般采用SSL协议,如HTTPS对HTTP协 议进行加密,以保证整个HTTP传输过程的安全 性。SSL是需要
20、耗费大量CPU资源的一种安全技 术,如果由后端的服务器来承担,则会消耗很大 的处理能力。应用交付设备为了提升用户的体 验,分担服务器的处理压力,将SSL加解密集中 在自身的处理上,相对于服务器来说 LB能提供 特定的业务网络服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度
21、算法选择真实服器的响应报文通过负载均衡设备时报文的源地址被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助更高的SSL处理性能,还能够简化对证书的管 理,减少日常管理的工作量,LB的该功能又称 为SSL卸载。下图中Client端发送给Server的所有的HTTPS 流量都被LB设备终结,LB设备将SSL终结后,与Server之间可采用HTTP或者弱加密的HTTPS 进行通讯。LB设备承担了 SSL的卸载工作,从 而极大的减小了服务器端对 SSL处理的压力,将 服务器的处理能力释放出来,
22、更加专注于处理服 务器本身承担的业务逻辑。SSL卸载示意图 SSL卸载的处理流程如下:特定的业务网络服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式
23、的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助Client|LB设备|曲岔 I 1:2 ftf4-5tJ 5、髭怡剧请点 SSL卸载过程 客户端向服务器端发送SSL握手请求。(2)LB设备作为中间的卸载设备,代替服务器端 和客户端交互,完成SSL握手过程。(3)客户端发送SSL加密后的请求数据。(4)LB设备解密数据。(5)LB设备将解密后的明文发送给 Server。(6)服务器返回给LB设备回应报文。(7)LB设备将返回的应答报文加密。(8)LB设备将加密后的应答报文传给客户端。3.DRX云环境应用交付 业务负载监控平台通过 H3C负载均衡设备的
24、参 数设定和监控可以动态感知业务负载变化,并通 知云管理平台动态调整业务资源。由此实现用户 业务资源的实时动态调整、业务资源优化调配。6$爼总耐固口 n 特定的业务网络服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址
25、被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助当业务负载监控平台发现业务资源需要调整时:业务负载超限一增加资源;业务资源过剩一一回 收资源,云管理平台通过自动创建、启动或者删 除停止虚拟机的方式为业务进行资源动态调整。四结束语 负载均衡技术不管应用于用户访问服务器资源,还是应用于多链路出口,均大大提咼了对资源的 高效利用,显著降低了用户的网络布署成本,提 升了用户的网络使用体验。随着云计算的发展,负载均衡的技术实现还将与云计算相结合,在虚 拟化和NFV软件定义网关等方面持续发展。【
26、编辑推荐】Nginx 反向代理和负载均衡部署指南 应用交付技术哥讲述负载均衡“血泪史”如何分清负载均衡四、七层应用场景需求 网络故障排除:考虑负载均衡系统 排查网络故障实践:解决负载均衡的难题 特定的业务网络服务网络流量等分担给多个服务器或网络设备从而提高了业务处理能力保证了业务的高可用性负载均衡基本概念有实服务实服务组虚服务调度算法持续性等其常用应用场景主要是服务器负载均衡链路负载均衡一服务头不解析报文四层以上载荷七层处理到报文载荷部分比如报文头有时也包括报文内容部分四层服务器负载均衡技术客户端将请求发送给服务器群前端的负载均衡设备负载均衡设备上的虚服务接收客户端请求通过调度算法选择真实服器的响应报文通过负载均衡设备时报文的源地址被还原为虚服务的再返回给客户完成整个负载调度过程报文交互流程如下方式的服务器负载均衡报文交互流程图报文交互流程说明发送服务请求报文源为目的为接收到请求报文后借助