一种虚拟机负载均衡处理的方法

xiaoxiao2020-10-23  10

一种虚拟机负载均衡处理的方法
【技术领域】
[0001]本发明涉及数据中心的技术领域,尤其涉及一种虚拟机负载均衡处理的方法。
【背景技术】
[0002]负载均衡(Load Balance),也称作负载分担,能够将负载(工作任务)进行平衡、分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。其中,虚拟机(Virtual Machine)是指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。虚拟机负载均衡技术可以连续不停地监控虚拟服务器主机集群中资源池的应用率,并能够根据业务需要在虚拟机中智能地分配其所需的资源。通过动态分发平衡计算资源,虚拟机负载均衡技术能够整合服务器,从而维持业务的连续性和安全性、提高资源利用率,节省IT成本和能源消耗。
[0003]虚拟化技术是云计算中的核心关键技术。通过虚拟化技术可以把一台服务器虚拟化成多台虚拟机VM(Virtual Machine),为用户提供更高效的数据服务。然而,由于各物理主机处理能力的差异以及各应用程序的不确定性,导致了虚拟计算环境中各物理主机的负载失衡,即有些物理主机的资源利用率很高,导致该物理主机的资源被耗尽,而有些物理主机的资源利用率很低,甚至被闲置,没有得到有效地利用。
[0004]目前虚拟化的主流厂商中VMware和Microsoft已经推出虚拟机负载均衡技术,而开源虚拟化XEN也在准备推出虚拟化负载均衡技术。其中,不同厂家利用虚拟机管理平台进行负载均衡的工具、策略、通信方式通常是不同的,比如,VMware的负载均衡管理策略通过衡量整个集群环境的负载情况来判断当前主机是否过载,为了达到平衡,负载均衡管理借助虚拟机迁移工具把虚拟机从超负荷的主机中迁移出来。而Microsoft的负载均衡管理策略不会去计算整个集群的负载情况,仅通过单台宿主机的资源使用率来决定该主机是否过载以及过载后是否需要对虚拟机做在线迁移,比如,如果当前主机的内存使用率超过“物理内存总量减去宿主机预留的内存量”时,负载均衡服务就认为该主机过载。因此,现有技术中,混合安装了基于不同厂家的虚拟机服务器的集群没有实现不同厂家的虚拟机服务器在集群内的共同负载分担,因此,现有的基于集群的虚拟机负载均衡管理有待改进。

【发明内容】

[0005]本发明是为避免上述已有技术中存在的不足之处,提供一种虚拟机负载均衡处理的方法,解决不同厂家的虚拟机服务器不能够在虚拟机服务器集群域内协作分担,以实现对VM资源的均衡调度,使得服务器资源能得到最大效率的调度。
[0006]本发明的技术方案是:一种虚拟机负载均衡处理的方法,应用于虚拟机服务器集群域的主管理模块中,所述虚拟机服务器集群域安装了不同厂家的虚拟机服务器,每个厂家的虚拟机服务器归属于本厂家的管理模块管理,负责集群域负载均衡管理的一管理模块为主管理模块,其余的管理模块为从管理模块,包括以下步骤: a.通过与本管理模块管理的虚拟机服务器通信收集本管理模块管理域内的虚拟机资源信息和虚拟机负载信息,接收从管理模块上报的所述从管理模块管理域内的虚拟机资源信息和虚拟机负载信息,统计所述虚拟机服务器集群域内的虚拟机资源信息和虚拟机负载信息;
b.虚拟机服务器查询处于可用状态且对外活动连接数目最小的虚拟机VM;如果只查询到一台虚拟机VM处于可用状态且对外活动连接数目最小,则将该虚拟机VM作为目标虚拟机VM ;
c.如果查询到有多于一台的虚拟机VM处于可用状态且对外活动连接数目最小,则在这多台虚拟机VM中选取实时流量最小的虚拟机VM作为目标虚拟机VM ;
d.把连接建立到目标虚拟机VM之上,由该目标虚拟机VM直接下发给相应虚拟机服务器,如产生从管理模块管理域中虚拟机服务器的负载分担任务,则发送给相应的从管理模块进行下发。
[0007]在所述步骤c中,虚拟机服务器查询虚拟机VM时,如果某一虚拟机VM正处于在不同服务器间进行迁移的迁移状态时,虚拟机服务器将该处于迁移状态中的虚拟机VM置为不可用状态;在迁移完成后,重新将该虚拟机VM置为可用状态,虚拟机服务器统计该虚拟机VM的对外活动连接数目,使该虚拟机VM重新参与负载均衡调度。
[0008]与已有技术相比,本发明有益效果体现在:
在本发明的虚拟机负载均衡处理的方法中,从管理模块负责本管理域内虚拟机服务器的虚拟机资源信息和虚拟机负载信息的收集和上报,以及负责分担任务的下发,通过主、从管理模块间的协作实现了不同厂家的虚拟机服务器在集群域内协作分担负载,提高了数据中心虚拟机服务器集群的资源利用率和资源调度能力。通过这种组合策略的调度,可把外部请求均匀分配到各VM上,从而实现对VM资源的均衡调度,使得服务器资源能得到最大效率的调度。]本发明实时调度,服务器资源开销较小,效率高。本发明方法,与现有标准相兼容,调度算法效率高,负载均衡在虚拟化环境下资源调度分布均匀。
【具体实施方式】
[0009]应用于虚拟机服务器集群域的主管理模块中,所述虚拟机服务器集群域安装了不同厂家的虚拟机服务器,每个厂家的虚拟机服务器归属于本厂家的管理模块管理,负责集群域负载均衡管理的一管理模块为主管理模块,其余的管理模块为从管理模块,其中,任一厂家的管理模块的工作模式均能够设置为主管理模式或从管理模式,所述主管理模式指负责集群域的负载均衡管理,所述从管理模式指负责本管理域内虚拟机服务器的虚拟机资源信息和虚拟机负载信息的收集和上报,以及负责分担任务的下发;工作于主管理模式下的管理模块为主管理模块,工作于从管理模式下的管理模块为从管理模块。其中,虚拟机资源信息包括以下信息的一种或多种:虚拟机服务器的在线信息,虚拟机服务器的资源使用状况信息;其中,虚拟机服务器的资源使用状况包括:CPU的使用状况,内存的使用状况。
[0010]具体方法包括以下步骤:
步骤101.通 过与本管理模块管理的虚拟机服务器通信收集本管理模块管理域内的虚拟机资源信息和虚拟机负载信息,接收从管理模块上报的所述从管理模块管理域内的虚拟机资源信息和虚拟机负载信息,统计所述虚拟机服务器集群域内的虚拟机资源信息和虚拟机负载信息;
步骤102.虚拟机服务器查询处于可用状态且对外活动连接数目最小的虚拟机VM ;如果只查询到一台虚拟机VM处于可用状态且对外活动连接数目最小,则将该虚拟机VM作为目标虚拟机VM ;
步骤103.如果查询到有多于一台的虚拟机VM处于可用状态且对外活动连接数目最小,则在这多台虚拟机VM中选取实时流量最小的虚拟机VM作为目标虚拟机VM ;
步骤104.把连接建立到目标虚拟机VM之上,由该目标虚拟机VM直接下发给相应虚拟机服务器,如产生从管理模块管理域中虚拟机服务器的负载分担任务,则发送给相应的从管理模块进行下发。
[0011]在所述步骤c中,虚拟机服务器查询虚拟机VM时,如果某一虚拟机VM正处于在不同服务器间进行迁移的迁移状态时,虚拟机服务器将该处于迁移状态中的虚拟机VM置为不可用状态;在迁移完成后,重新将该虚拟机VM置为可用状态,虚拟机服务器统计该虚拟机VM的对外活动连接数目,使该虚拟机VM重新参与负载均衡调度。
[0012]虚拟机服务器刷新目标虚拟机VM的对外活动连接数目;刷新后,该目标虚拟机VM的对外活动连接数目为:原对外活动连接数目+1。
[0013]本发明中,以虚拟机服务器作为负载均衡器,虚拟机服务器和多台服务器相连接,每个服务器内部虚拟化为多个VM。每个VM是独立的对外提供服务的虚拟机,对外建立连接。由于VM通过负载均衡器(即虚拟机服务器)进行数据交换,所以负载均衡器上有VM的活动连接数统计和实时流量统计,因此基于活动连接数和实时流量进行负载均衡是可行方案。负载均衡器接收到新的外部时,首先查找活动连接数最少的m也就是空闲资源最多的VM),使得VM资源使用比较均衡。经过一段调度时间后,各VM的活动连接数趋于相同,这时再根据VM的实时流量统计(最近一分钟的出方向和入方向的流量之和)进行调度选择,通过这种组合策略的调度,可把外部请求均匀分配到各VM上。
[0014]虚拟机VM与外部请求有连接,同时虚拟机VM之间也有业务连接。
[0015]虚拟机环境不同于普通服务器的环境,因为VM之间还有信息交互,所以要区分外部请求的连接和VM间的连接。负载均衡依据的活动连接是指外部活动请求的连接。由于各VM都处于同一网段,而外部请求的地址是公网地址或不在同一网段,可通过出方向目的地址进行区分外部请求和内部请求。
[0016]在虚拟机环境中,VM会在不同服务器间进行“迁移”。由于负载均衡器参与这一迁移过程,在迁移过程中把该VM状态置为“不可用”,在迁移完成后恢复该VM的状态和连接数统计,刷新转发表,重新参与负载均衡调度。虚拟机服务器选择目标虚拟机VM时,只选择处于可用状态的VM。
[0017]尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
【主权项】
1.一种虚拟机负载均衡处理的方法,应用于虚拟机服务器集群域的主管理模块中,所述虚拟机服务器集群域安装了不同厂家的虚拟机服务器,每个厂家的虚拟机服务器归属于本厂家的管理模块管理,负责集群域负载均衡管理的一管理模块为主管理模块,其余的管理模块为从管理模块,其特征在于包括以下步骤: a.通过与主管理模块管理的虚拟机服务器通信收集本管理模块管理域内的虚拟机资源信息和虚拟机负载信息,接收从管理模块上报的所述从管理模块管理域内的虚拟机资源信息和虚拟机负载信息,统计所述虚拟机服务器集群域内的虚拟机资源信息和虚拟机负载信息; b.虚拟机服务器查询处于可用状态且对外活动连接数目最小的虚拟机VM;如果只查询到一台虚拟机VM处于可用状态且对外活动连接数目最小,则将该虚拟机VM作为目标虚拟机VM ; c.如果查询到有多于一台的虚拟机VM处于可用状态且对外活动连接数目最小,则在这多台虚拟机VM中选取实时流量最小的虚拟机VM作为目标虚拟机VM ; d.把连接建立到目标虚拟机VM之上,由该目标虚拟机VM直接下发给相应虚拟机服务器,如产生从管理模块管理域中虚拟机服务器的负载分担任务,则发送给相应的从管理模块进行下发。2.根据权利要求1所述一种虚拟机负载均衡处理的方法,其特征在于:在所述步骤c中,虚拟机服务器查询虚拟机VM时,如果某一虚拟机VM正处于在不同服务器间进行迁移的迁移状态时,虚拟机服务器将该处于迁移状态中的虚拟机VM置为不可用状态;在迁移完成后,重新将该虚拟机VM置为可用状态,虚拟机服务器统计该虚拟机VM的对外活动连接数目,使该虚拟机VM重新参与负载均衡调度。
【专利摘要】本发明涉及数据中心的技术领域,尤其涉及一种虚拟机负载均衡处理的方法,应用于虚拟机服务器集群域的主管理模块中,所述虚拟机服务器集群域安装了不同厂家的虚拟机服务器,每个厂家的虚拟机服务器归属于本厂家的管理模块管理,负责集群域负载均衡管理的一管理模块为主管理模块,其余的管理模块为从管理模块,通过与主管理模块管理的虚拟机服务器通信收集本管理模块管理域内的虚拟机资源信息和虚拟机负载信息,虚拟机服务器查询处于可用状态且对外活动连接数目最小的虚拟机VM;如果只查询到一台虚拟机VM处于可用状态且对外活动连接数目最小,则将该虚拟机VM作为目标虚拟机VM;由该目标虚拟机VM直接下发给相应虚拟机服务器。
【IPC分类】G06F9/455, G06F9/50
【公开号】CN104899094
【申请号】CN201410077897
【发明人】金飞, 葛菲
【申请人】安徽皖新金智教育科技有限公司
【公开日】2015年9月9日
【申请日】2014年3月5日

最新回复(0)