应用负载均衡技术原理与实现
2014-03-14梅琨余慧
梅 琨 余 慧
(1.武汉和中信息科技责任有限公司,湖北 武汉 430070;2.湖北第二师范学院计算机学院,湖北 武汉 430205)
应用负载均衡技术原理与实现
梅 琨1余 慧2
(1.武汉和中信息科技责任有限公司,湖北 武汉 430070;2.湖北第二师范学院计算机学院,湖北 武汉 430205)
应用负载均衡技术在应用交付方面具有良好的可用性和安全性。本文详细讲解了应用负载均衡技术的原理及实现算法,并就下一步新型应用负载均衡技术的发展方向进行了展望。
应用负载均衡;HA;轮询;动态性能分配
1.引言
在负载均衡技术向当前的应用交付技术演变过程中,人们经常容易忽略一个最基本的问题,即负载均衡器设计的目的—产生高可用性、高扩展性和可预测的应用服务。当前,智能应用路由、服务器虚拟化以及共享信息化基础设施部署是新的技术发展方向,为了在企业的数据中心建设中实现这些技术,负载均衡技术必须在基础建设构架中提供良好的技术保障。
2.应用负载均衡的技术背景
负载均衡目的是创建一个整体系统,将来自实际运行服务的大量物理服务器中的“服务”进行虚拟化处理。更基本的定义是在大量物理服务器之间实现负载均衡,并使这些服务器对外界看起来犹如一个整合的大服务器,使系统实现高可用性、扩展性和可预测性。
高可用性 (HA)是一个IDC数据中心即使在一个或多个服务器瘫痪的情况下仍保持可用和可接入的能力。服务虚拟化为高可用性提供了条件。如果用户接入点与实际的服务器分离,单个服务器的故障不会造成整个系统的失效。
扩展性是指负载的增加不会对现有计算性能造成影响。服务虚拟化为扩展性提供了良好的条件。如果服务与实际的服务器分离,当应用扩展的时候只是需要增加更多数量的虚拟服务器,而最终用户并不需要关心服务器硬件的扩充。
可预测性是指控制如何交付服务以及何时交付以实现高可用性和性能等方面的能力。
3.应用负载均衡技术的原理及实现
在互联网商用的初期,许多互联网公司发现其信息系统中的一个严重问题。主机没有Web服务器软件,即使有,使用他们也需要庞大的预算。对他们中的大多数来说,无法使基于单个PC的服务器始终能够处理所产生的流量,而且如果流量下降、脱机开展业务,这些问题也无法处理。为了满足这些需求,负载均衡技术应运而生。
应用负载均衡是网络层的设备,由于这些设备与应用无关,而且它们部署于应用服务器外部,因此,它们能够采用更直接的网络技术实现负载均衡。从本质上讲,这些设备会对外提供一个虚拟服务器地址,而且当用户试图连接时,它会将连接通过双向网络地址转换 (NAT)转到最适合的真正服务器上。如下图1:
图1 应用负载均衡技术逻辑架构
3.1 静态负载均衡算法
轮询(Round Robin):将请求按顺序循环地连接每个服务器。当其中某个服务器发生第2到第7层的故障,BIG-IP就把其从顺序循环队列中抽取出来,不参加下一次的轮询,直到其恢复正常。
比率(Ratio):给每个服务器分配一个加权值作为比例,根椐这个比例,把用户的请求分配到每个服务器。当其中某个服务器发生第2到第7层的故障,BIG-IP就把其从服务器队列中抽取出来,不参加下一次的用户请求的分配,直到其恢复正常。
优先权(Priority):给所有服务器分组,给每个组定义优先权,把用户的请求分配给优先级最高的服务器组(在同一组内,采用轮询或比率算法,分配用户的请求);当最高优先级中所有服务器出现故障,BIG-IP才将请求送给次优先级的服务器组。这种方式,实际为用户提供一种热备份的方式。
3.2 动态负载均衡算法
最少的连接方式(Least Connection):传递新的连接给那些进行最少连接处理的服务器。当其中某个服务器发生第2到第7层的故障,负载均衡设备就把其从服务器队列中抽取出来,不参加下一次的用户请求的分配,直到其恢复正常。
最快模式(Fastest):传递连接给那些响应最快的服务器。当其中某个服务器发生第2到第7层的故障,BIG-IP就把其从服务器队列中抽取出来,不参加下一次的用户请求的分配,直到其恢复正常。
观察模式(Observed):该模式是以连接数目和响应时间这两项指标的最佳平衡为依据选择服务器。当其中某个服务器发生第2到第7层的故障,负载均衡设备就把其从服务器队列中抽取出来,不参加下一次的用户请求的分配,直到其恢复正常。
预测模式(Predictive):BIG-IP利用收集到的服务器当前的性能指标,进行预测分析,选择在下一个时间段内性能达到最佳的服务器响应用户的请求。
动态性能分配(Dynamic Ratio-APM):负载均衡设备收集应用程序和应用服务器的各项性能参数,根据各项指标动态调整流量分配。
动态服务器补充(Dynamic Server Act.):当主服务器群中因故障导致数量减少时,动态地将备份服务器补充至主服务器群。
服务质量(QoS):按不同的优先级对数据流进行分配。
服务类型(ToS):按不同的服务类型(在Type of Field中标识)对数据流进行分配。
规则模式:针对不同的数据流设置导向规则,用户可自行编辑流量分配规则,BIG-IP利用这些规则对通过的数据流实施导向控制。
4.总结与展望
应用负载均衡技术在应用交付方面具有良好的可用性和安全性。随着集成网络接入控制、网络缓存/压缩、广域网加速等新技术不断出现,以及将业务规则运用到应用交付管理和控制过程中的重要性日益提高,这些方面将扩展负载均衡设备的各项功能来为企业的信息化提供更多的支持。对用户和应用之间的网络进行整合,并减少由于访问数量增加所产生的压力。在未来的发展中,还会将传统的单机技术(例如防火墙、防DDOS和防病毒)融合到应用负载均衡技术领域中。
目前还不清楚应用负载均衡技术最终的功能体系,但有一点可以明确,即应用负载均衡技术将发展成为数据系统建设中不可或缺的一部分,为企业新型数据中心的发展提供坚实的技术支撑。
[1]赵少卡,李立耀,凌晓.基于OpenStack的清华云平台构建与调度方案设计[J].计算机应用,2013,33(12):3335-3338,3349.
[2]王聪,王翠荣,王兴伟.面向云计算的数据中心网络体系结构设计[J].计算机研究与发展,2012,49(2):286-293.
[3]盛宪锋,及俊川,周小军.基于虚拟化技术的私有云APCS平台设计[J].计算机工程,2012,38(8):210-212.
[4]刘鹛程,陈椿.面向云计算的虚拟机动态迁移框架[J].计算机工程,2010,36(5):37-39.
[5]邢剑锋,王鹏飞,沈松.基于虚拟机的可信云计算平台研究与设计[J].微型机与应用,2010,29(16):75-78.
Principle and Realization of Load Balancing
Mei Kun1Yu Hui2
(1.Wuhan Orizone Information Technology Co.,Ltd,Wuhan 430070,Hubei) (2.Hubei University of Education,Wuhan 430205,Hubei)
Load balancing technique contributes good usability and security to application delivery.This paper presents not only the principle of load balancing technique,but also its realization in detail.Further,prospective application of this technique and future research work are also discussed.
load balancing;HA;polling;dynamic ratio-APM
梅琨,男,湖北武汉人,工程师。研究方向:云计算。
湖北省科技厅自然科学基金项目,项目编号:2013CFB012。