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

文档序号:6356062阅读:1020来源:国知局
专利名称:虚拟机负载均衡处理的方法
技术领域
本发明涉及一种虚拟机负载均衡处理的方法,尤其是一种云计算系统中的虚拟机 负载均衡处理的方法。
背景技术
虚拟化技术是云计算中的核心关键技术。通过虚拟化技术可以把一台服务器虚拟 化成多台虚拟机VM(Virtual Machine),为用户提供更高效的数据服务。然而,由于各物理 主机处理能力的差异以及各应用程序的不确定性,导致了虚拟计算环境中各物理主机的负 载失衡,即有些物理主机的资源利用率很高,导致该物理主机的资源被耗尽,而有些物理主 机的资源利用率很低,甚至被闲置,没有得到有效地利用。虚拟机之间通过以太网交换机进行通信,IEEE 802. 1工作组正着手制定一个新标 准802. IQbg Edge Virtual Bridging(EVB),其核心思想是将虚拟机产生的网络流量全部 交由与服务器相连的物理交换机进行处理。如图3是EVB模型示意图。由于将所有流量都 通过外部交换机,因此与虚拟机相关的流量监管、控制策略等问题得以很好的解决。负载 均衡建立在现有网络结构之上,把大量的并发访问或数据流量分担到多台服务器上分别处 理,减少用户等待响应的时间,它提供了一种有效透明的方法扩展网络设备和服务器的带 宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。现有技术中,针对服务器的负载均衡算法规则有(1)依序Round Robin, (2)比重 Weighted Round Robin, (3)流量比例Traffic,(4)服务类别krvice。传统的负载均衡方 案不适合在虚拟化的服务器环境下应用,因为虚拟化的服务器资源是动态分配的,存在虚 拟机迁移等情况。如果按照传统的“依序Round Robin”或“比重Wfeighted Round Robin” 调度算法,可能出现已有的VM(Virtual Machine,虚拟机)负载多,而新增的VM负载少的情 况,使得调度不均衡。如果使用“流量比例Traffic”只能表示带宽占用情况,不能精确表示 VM的负载。“服务类别krvice”不适用于这种同类别服务的虚拟化环境。

发明内容
本发明是为避免上述已有技术中存在的不足之处,提供一种虚拟机负载均衡处理 的方法,以实现对VM资源的均衡调度,使得服务器资源能得到最大效率的调度。本发明首先提供了一种虚拟机负载均衡处理的方法。在本发明的虚拟机负载均衡处理的方法中,其特点是,采用交换机作为负载均衡 器,负载均衡器上连接有多台服务器,每个服务器内部虚拟化为多个虚拟机VM,交换机上统 计有各个虚拟机VM的对外活动连接数目和实时流量。虚拟机负载均衡处理的方法包括以下步骤a.交换机接收外部连接请求;b.交换机查询处于可用状态且对外活动连接数目最小的虚拟机VM ;bl.如果只查询到一台虚拟机VM处于可用状态且对外活动连接数目最小,则将该虚拟机VM作为目标虚拟机VM ;b2.如果查询到有多于一台的虚拟机VM处于可用状态且对外活动连接数目最小, 则在这多台虚拟机VM中选取实时流量最小的虚拟机VM作为目标虚拟机VM ;c.把连接建立到目标虚拟机VM之上,由该目标虚拟机VM处理外部连接;d.交换机刷新目标虚拟机VM的对外活动连接数目。在所述步骤b中,交换机查询虚拟机VM时,如果某一虚拟机VM正处于在不同服务 器间进行迁移的迁移状态时,交换机将该处于迁移状态中的虚拟机VM置为不可用状态;在 迁移完成后,重新将该虚拟机VM置为可用状态,交换机统计该虚拟机VM的对外活动连接数 目,使该虚拟机VM重新参与负载均衡调度。与已有技术相比,本发明有益效果体现在在本发明的虚拟机负载均衡处理的方法中,按照虚拟机对外的活动连接数和实时 流量统计组合进行调度,负载均衡器在接收到外部请求时,选取对外活动连接数最少,并且 实时流量最小的VM,并把连接建立到该VM,通过这种组合策略的调度,可把外部请求均勻 分配到各VM上,从而实现对VM资源的均衡调度,使得服务器资源能得到最大效率的调度。 本发明采用的方法由交换机网络侧调度完成,不产生迁移数据,实时调度,服务器资源开销 较小,效率高。本发明的虚拟机负载均衡处理的方法,与现有标准相兼容,调度算法效率高, 负载均衡在虚拟化环境下资源调度分布均勻。


图1为本发明的虚拟机负载均衡处理的方法的流程图。图2为本发明的虚拟机负载均衡处理的方法的系统结构示意图。图3为EVB模型示意图。 以下通过具体实施方式
,并结合附图对本发明作进一步说明。
具体实施例方式虚拟机负载均衡处理的方法,采用交换机作为负载均衡器,负载均衡器上连接有 多台服务器,每个服务器内部虚拟化为多个虚拟机VM,交换机上统计有各个虚拟机VM的对 外活动连接数目和实时流量。虚拟机负载均衡处理的方法包括以下步骤a.交换机接收外部连接请求;b.交换机查询处于可用状态且对外活动连接数目最小的虚拟机VM ;bl.如果只查询到一台虚拟机VM处于可用状态且对外活动连接数目最小,则将该 虚拟机VM作为目标虚拟机VM ;b2.如果查询到有多于一台的虚拟机VM处于可用状态且对外活动连接数目最小, 即有两台或两台以上的虚拟机VM符合条件,则在这多台虚拟机VM中选取实时流量最小的 虚拟机VM作为目标虚拟机VM ;c.把连接建立到目标虚拟机VM之上,由该目标虚拟机VM处理外部连接;d.交换机刷新目标虚拟机VM的对外活动连接数目;刷新后,该目标虚拟机VM的 对外活动连接数目为原对外活动连接数目+1。
在所述步骤b中,交换机查询虚拟机VM时,如果某一虚拟机VM正处于在不同服务 器间进行迁移的迁移状态时,交换机将该处于迁移状态中的虚拟机VM置为不可用状态;在 迁移完成后,重新将该虚拟机VM置为可用状态,交换机统计该虚拟机VM的对外活动连接数 目,使该虚拟机VM重新参与负载均衡调度。本发明中,以交换机作为负载均衡器,交换机和多台服务器相连接,每个服务器内 部虚拟化为多个VM。每个VM是独立的对外提供服务的虚拟机,对外建立连接。由于VM通 过负载均衡器(即交换机)进行数据交换,所以负载均衡器上有VM的活动连接数统计和实 时流量统计,因此基于活动连接数和实时流量进行负载均衡是可行方案。负载均衡器接收 到新的外部时,首先查找活动连接数最少的VM(也就是空闲资源最多的VM),使得VM资源使 用比较均衡。经过一段调度时间后,各VM的活动连接数趋于相同,这时再根据VM的实时流 量统计(最近一分钟的出方向和入方向的流量之和)进行调度选择,通过这种组合策略的 调度,可把外部请求均勻分配到各VM上。图2中的实线箭头标识出了数据的出方向和入方 向。虚拟机VM与外部请求有连接,同时虚拟机VM之间也有业务连接,图2中的虚线箭 头分别表示了内部连接和外部连接。虚拟机环境不同于普通服务器的环境,因为VM之间还有信息交互,所以要区分外 部请求的连接和VM间的连接。负载均衡依据的活动连接是指外部活动请求的连接。由于 各VM都处于同一网段,而外部请求的地址是公网地址或不在同一网段,可通过出方向目的 地址进行区分外部请求和内部请求。在虚拟机环境中,VM会在不同服务器间进行“迁移”。由于负载均衡器参与这一迁 移过程,在迁移过程中把该VM状态置为“不可用”,在迁移完成后恢复该VM的状态和连接数 统计,刷新转发表,重新参与负载均衡调度。交换机选择目标虚拟机VM时,只选择处于可用 状态的VM。
权利要求
1.虚拟机负载均衡处理的方法,其特征是,采用交换机作为负载均衡器,负载均衡器上 连接有多台服务器,每个服务器内部虚拟化为多个虚拟机VM,交换机上统计有各个虚拟机 VM的对外活动连接数目和实时流量,包括以下步骤a.交换机接收外部连接请求;b.交换机查询处于可用状态且对外活动连接数目最小的虚拟机VM;bl.如果只查询到一台虚拟机VM处于可用状态且对外活动连接数目最小,则将该虚拟 机VM作为目标虚拟机VM;b2.如果查询到有多于一台的虚拟机VM处于可用状态且对外活动连接数目最小,则在 这多台虚拟机VM中选取实时流量最小的虚拟机VM作为目标虚拟机VM ;c.把连接建立到目标虚拟机VM之上,由该目标虚拟机VM处理外部连接;d.交换机刷新目标虚拟机VM的对外活动连接数目。
2.根据权利要求1所述的虚拟机负载均衡处理的方法,其特征是,在所述步骤b中,交 换机查询虚拟机VM时,如果某一虚拟机VM正处于在不同服务器间进行迁移的迁移状态时, 交换机将该处于迁移状态中的虚拟机VM置为不可用状态;在迁移完成后,重新将该虚拟机 VM置为可用状态,交换机统计该虚拟机VM的对外活动连接数目,使该虚拟机VM重新参与负 载均衡调度。
全文摘要
本发明公开了一种虚拟机负载均衡处理的方法,采用交换机作为负载均衡器,交换机上统计有各个虚拟机VM的对外活动连接数目和实时流量;交换机接收外部连接请求,查询处于可用状态且对外活动连接数目最小的虚拟机VM,如果有多台虚拟机VM符合条件,则在这多台虚拟机VM中选取实时流量最小的虚拟机VM作为目标虚拟机VM,把连接建立到目标虚拟机VM之上,交换机刷新目标虚拟机VM的对外活动连接数目。本发明的虚拟机负载均衡处理的方法,具有可实现对VM资源的均衡调度、使得服务器资源能得到最大效率的调度的优点。
文档编号G06F9/50GK102110014SQ20111006213
公开日2011年6月29日 申请日期2011年3月15日 优先权日2011年3月15日
发明者吴小刚, 唐舜, 李颖和 申请人:合肥华云通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1