一种负载分担的方法和装置的制造方法_3

文档序号:9828313阅读:来源:国知局
拟机进行关闭处理之后,如果业务虚拟机组中存在处于关闭状态的虚拟机,则在符合预设虚拟机删除条件时,还可以从业务虚拟机组中删除处于关闭状态的虚拟机。其中,该预设虚拟机删除条件可以根据实际经验任意设置,如设置预设虚拟机删除条件为处于关闭状态的虚拟机的数量超过2个,基于此,当业务虚拟机组中处于关闭状态的虚拟机的数量超过2个时,则确定符合预设虚拟机删除条件,并从业务虚拟机组中删除处于关闭状态的虚拟机。
[0047]情况三、如果业务虚拟机组中有多个虚拟机的应用运行状态为可用状态,且这多个虚拟机中的每个虚拟机的应用指标均大于预设第三阈值,性能信息均大于预设第四阈值,则对业务虚拟机组中的虚拟机进行开启处理。
[0048]当业务虚拟机组中的多个虚拟机的应用指标大于预设第三阈值,性能信息大于预设第四阈值时,说明业务虚拟机组中的多个虚拟机已经无法继续处理分配到该虚拟机的用户访问请求报文。为了保证用户访问请求报文被及时处理,可以对业务虚拟机组中的虚拟机进行开启处理。
[0049]本发明实施例中,对业务虚拟机组中的虚拟机进行开启处理的过程,具体可以包括但不限于如下方式:判断业务虚拟机组中是否存在处于关闭状态的虚拟机。如果存在,则直接开启该业务虚拟机组中的处于关闭状态的虚拟机;如果不存在,则创建用于提供该业务虚拟机组对应的应用的虚拟机,并将当前创建的虚拟机加入到该业务虚拟机组中,并开启当前创建的虚拟机。
[0050]其中,在创建用于提供应用的虚拟机时,可以根据DHCP (Dynamic HostConfigurat1n Protocol,动态主机配置协议)或者预置的IP地址范围,分配一个空闲IP地址,并根据预置的虚拟机模板创建新的虚拟机,并将该空闲IP地址、子网掩码、默认网关等网络信息配置在当前创建的虚拟机上。
[0051]其中,开启的虚拟机的数量可以根据实际需要进行选择。在一种具体应用中,如果业务虚拟机组中存在处于关闭状态的虚拟机,则可以直接开启该业务虚拟机组中的所有处于关闭状态的虚拟机,或者开启该业务虚拟机组中的部分处于关闭状态的虚拟机。如果业务虚拟机组中不存在处于关闭状态的虚拟机,则可以创建一个新的虚拟机或者创建多个新的虚拟机。
[0052]情况四、如果业务虚拟机组中有多个虚拟机的应用运行状态为可用状态,且这多个虚拟机中包括应用指标小于预设第一阈值、性能信息小于预设第二阈值的虚拟机,并包括应用指标大于预设第三阈值、性能信息大于预设第四阈值的虚拟机,则对业务虚拟机组中的虚拟机的访问权重进行调整。
[0053]其中,当业务虚拟机组中的虚拟机的应用指标小于预设第一阈值,性能信息小于预设第二阈值时,则说明该虚拟机可以处理更多的分配到该虚拟机上的用户访问请求报文。当业务虚拟机组中的虚拟机的应用指标大于预设第三阈值,性能信息大于预设第四阈值时,则说明该虚拟机已经无法继续处理分配到该虚拟机的用户访问请求报文。基于此,在本发明实施例中,对业务虚拟机组中的虚拟机的访问权重进行调整的过程,具体可以包括但不限于如下方式:增加应用指标小于预设第一阈值、性能信息小于预设第二阈值的虚拟机的访问权重,并降低应用指标大于预设第三阈值、性能信息大于预设第四阈值的虚拟机的访问权重;以在对访问应用的用户访问请求报文进行负载分担时,增加发送给访问权重增加的虚拟机的用户访问请求报文的数量,并减少发送给访问权重降低的虚拟机的用户访问请求报文的数量。
[0054]如果业务虚拟机组中的多个虚拟机的应用信息和性能信息是上述四种情况之外的其它情况,则不会对业务虚拟机组中的虚拟机进行DRX处理。
[0055]例如,当业务虚拟机组中包括虚拟机1、虚拟机2、虚拟机3和虚拟机4时,则利用负载均衡算法,在虚拟机1、虚拟机2、虚拟机3和虚拟机4之间对访问应用的用户访问请求报文进行负载分担。针对上述情况一和情况二,假设对业务虚拟机组中的虚拟机I进行关闭处理,则利用负载均衡算法,在DRX处理之后的业务虚拟机组中的虚拟机2、虚拟机3和虚拟机4之间对访问应用的用户访问请求报文进行负载分担。针对上述情况三,假设在业务虚拟机组中添加新的虚拟机5,并对业务虚拟机组中的虚拟机5进行开启处理,则利用负载均衡算法,在DRX处理之后的业务虚拟机组中的虚拟机1、虚拟机2、虚拟机3、虚拟机4和虚拟机5之间对访问应用的用户访问请求报文进行负载分担。针对上述情况四,假设增加业务虚拟机组中的虚拟机I的访问权重,并降低业务虚拟机组中的虚拟机2的访问权重,则利用负载均衡算法,在DRX处理之后的业务虚拟机组中的虚拟机1、虚拟机2、虚拟机3和虚拟机4之间对访问应用的用户访问请求报文进行负载分担。
[0056]针对情况一、情况二和情况三,该负载均衡算法可以使用任意的负载均衡算法,本发明实施例中对此不做限制。针对情况四,该负载均衡算法可以使用轮转算法或者最小链接算法,该轮转算法或者最小链接算法可以通过调整虚拟机的访问权重,以改变发送到该虚拟机的用户访问请求报文的数量。
[0057]针对情况四,假设在调整访问权重之前,针对每连续的100个用户访问请求报文,有25个用户访问请求报文被发送给虚拟机1,有25个用户访问请求报文被发送给虚拟机2,有25个用户访问请求报文被发送给虚拟机3,有25个用户访问请求报文被发送给虚拟机
4。而且,在调整访问权重之后,假设在增加虚拟机I的访问权重,并降低虚拟机2的访问权重之后,可以使得针对每连续的100个用户访问请求报文,有45个用户访问请求报文被发送给虚拟机1,有5个用户访问请求报文被发送给虚拟机2,有25个用户访问请求报文被发送给虚拟机3,有25个用户访问请求报文被发送给虚拟机4。经过上述处理,可以增加发送给空闲的虚拟机I的用户访问请求报文的数量,并可以减少发送给忙碌的虚拟机2的用户访问请求报文的数量。
[0058]基于上述技术方案,本发明实施例中,通过配置包括多个虚拟机的业务虚拟机组,该业务虚拟机组内的虚拟机提供同一应用,从而利用业务虚拟机组中的每个虚拟机的应用信息和性能信息对业务虚拟机组中的虚拟机进行DRX处理,当有大量用户需要访问应用时,增加提供该应用的虚拟机的数量,以满足大量用户的访问需求,增强处理能力;当访问应用的用户数量减少时,可以减少提供应用的虚拟机的数量,以回收虚拟机的资源。上述方式通过动态调整虚拟机的数量,提高了资源利用率,并可以合理的利用虚拟机的资源。
[0059]本发明实施例中提出的上述负载分担的方法,可以应用在负载分担设备上,也可以应用在能够管理该负载分担设备的网管设备或者其它设备上。在负载分担设备上,为应用(如应用A)创建实服务组,并在该实服务组下配置多个实服务。其中,可以将具有相同或相似应用的多个虚拟机抽象成一个实服务组,且一个实服务组可以包括多个实服务。实服务是负载分担设备上处理用户业务的实体,与虚拟机存在IP地址和端口的映射关系。针对上述过程,实服务组相当于上述的业务虚拟机组,一个实服务对应一个虚拟机。
[0060]基于与上述方法同样的发明构思,本发明实施例中还提供了一种负载分担的装置,该负载分担的装置可以应用在负载分担设备中。该负载分担的装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在的负载分担设备的处理器,将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图2所示,为本发明提出的负载分担的装置所在的负载分担设备的一种硬件结构图,除了图2所示的处理器、网络接口、内存以及非易失性存储器外,负载分担设备还可以包括其他硬件,如负责处理报文的转发芯片等;从硬件结构上来讲,该负载分担设备还可能是分布式设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。
[0061]针对本发明实施例提出的负载分担的装置,业务虚拟机组内包括多个虚拟机,且业务虚拟机组内的虚拟机用于提供同一应用。如图3所示,为本发明实施例提出的负载分担的装置的结构图,所述负载分担的装置具体包括:
[0062]获得模块11,用于获得所述业务虚拟机组中的每个虚拟机的应用信息和性能信息;处理模块12,用于利用所述业务虚拟机组中的每个虚拟机的应用信息和性能信息,对所述业务虚拟机组中的虚拟机进行DRX处理;负载模块13,用于利用负载均衡算法,在DRX处理之后的所述业务虚拟机组中的各虚拟机之间,对访问所述应用的用户访问请求报文进行负载分担。
[0063]本发明实施例中,所述应用信息包括应用运行状态和应用指标,所述应用运行状态具体为可用状态或者不可用状态;
[0064]所述处理模块12,具体用于当所述业务虚拟机组中有虚拟机的应用运行状态为不可用状态时,则对所述虚拟机进行重启处理,或者对所述虚拟机进行关闭处理;或者,当所述业务虚拟机组中有多个虚拟机的应用运行状态为可用状态,且所述多个虚拟机中的每个虚拟机的应用指标均小于预设第一阈值,性能信息均小于预设第二阈值时,则对业务虚拟机组中的虚拟机进行关闭处理;或者,当所述业务虚拟机组中有多个虚拟机的应用运行状态为可用状态,且所述多个虚拟机中的每个虚拟机的应用指标均大于预设第三阈值,性能信息均大于预设第四阈值时,则对业务虚拟机组中的虚拟机进行开启处理;或者,当所述业务虚拟机组中有多个虚拟机的应用运行状态为可用状态,且所述多个虚拟机中包括应用指标小于预设第一阈值、性能信息小于预设第二阈值的虚拟机,并包括应用指标大于预设第三阈值、性能
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1