在虚拟环境中获取用于服务器负载均衡的反馈信息的方法和装置制造方法及图纸

技术编号:6452798 阅读:172 留言:0更新日期:2012-04-11 18:40
公开了用于向负载均衡器提供虚拟机的可用性信息的方法和装置。虚拟机的可用性信息可以是来自虚拟机的性能度量和虚拟机在其上操作的物理机器的性能度量的归一化信息。虚拟机的归一化可用性由在虚拟机上运行的反馈代理提供。可替代地,虚拟机的归一化可用性由在超级监管者上运行的反馈代理提供,该超级监管者在一组公共的物理计算硬件上运行多个虚拟机。

【技术实现步骤摘要】
【国外来华专利技术】
本公开中描述的实施例一般地涉及用于在具有一个或多个虚拟机的系统中进行负载均衡的方法和装置。更具体地,本公开中描述的实施例涉及在虚拟环境中获取用于服务器负载均衡的反馈信息的方法和装置
技术介绍
网络中的负载均衡器根据由该负载均衡器管理的服务器所报告的可用性信息来作出转发决定。各种因子可由服务器和负载均衡器用来报告负载和作出转发决定。例如, 运行在每个服务器上的反馈代理可向负载均衡器提供性能度量(performance metric)。进而,负载均衡器使用性能度量来决定如何将多个请求分配在不同服务器间。在虚拟环境中,服务器在运行在物理机器上的多个虚拟机进行操作。虚拟机上的服务器向负载均衡器报告该虚拟机的性能度量。由于多个虚拟机可能同时运行在单个物理机器上,因此由运行在虚拟机上的服务器报告的性能度量可能未考虑到该物理机器上的负载的所有方面。结果,运行了若干个虚拟机的物理机器可能满载,而各个虚拟机上的服务器向负载均衡器报告的是负载未满。
技术实现思路
这里描述的实施例涉及用于提供一个或多个虚拟机的归一化可用性信息的方法和装置。一个或多个虚拟机的归一化可用性信息是根据虚拟机的性能度量以及该虚拟机在其上操作的物理机器的性能度量两者来生成的。一个实施例包括一种系统,该系统具有处理器、网络接口、包含超级监管者 (hypervisor)的存储器以及反馈代理。该超级监管者可被配置来在第一计算系统上运行多个虚拟机。该反馈代理可被一般地配置来执行用于监视多个虚拟机中的至少第一虚拟机的可用性的操作。该操作可一般地包括监视第一虚拟机的一个或多个性能度量,并且监视计算系统的一个或多个性能度量。该操作还可以包括基于计算系统的性能度量来归一化第一虚拟机的一个或多个性能度量,并且通过网络接口将虚拟机的归一化的性能度量发送给负载均衡器。负载均衡器可以一般地提供在第二计算系统上运行的程序。负载均衡器可被配置为基于归一化的性能度量将计算任务分配在多个虚拟机间。在特定实施例中,反馈代理是超级监管者的组件。在这样的情况中,反馈代理可以报告物理机器的性能度量以及运行在超级监管者上的每个虚拟机的性能度量。可替代地,反馈代理的实例可以在多个虚拟机中的每个虚拟机上被运行。此外,计算任务可以包括IP网络服务请求。并且负载均衡器还可以被配置为将每个请求指派给虚拟机中的一个虚拟机上的网络连接。另外,一些虚拟化系统允许虚拟机从一个物理服务器被迁移到另一物理服务器。 在特定实施例中,负载均衡器可以接收对一个主机上的虚拟机(以及相关联的网络连接)将被迁移到另一主机的指示。在这样的情况中,负载均衡器可以监视虚拟机从原始计算系统到目标计算系统的迁移。负载均衡器可以在虚拟机被迁移时选择性地丢弃去往该虚拟机上的连接的网络流量,从而允许较高层协议来处理因迁移引起的任何被丢弃流量。附图说明 为了在细节方面理解本公开的上述特征,可以通过参考实施例获得对上面简要概述的本公开的更具体描述,实施例中的一些在附图中示出。然而,注意,附图仅图示出了本公开的典型实施例,因此不认为是对其范围的限制,因为本公开可以容纳其它等效实施例。图IA是图示出根据一个实施例的示例计算环境的示意框图。图IB是图示出根据一个实施例的图IA的计算环境中的物理机器的示意框图。图IC是图示出根据一个实施例的用于将虚拟机的可用性信息提供给负载均衡器的方法的流程图。图2A是图示出根据一个实施例的示例计算环境的示意框图。图2B是图示出图2A的计算环境中的物理机器的示意框图。图2C是图示出根据一个实施例的用于将虚拟机的可用性信息提供给负载均衡器的方法的流程图。图3是图示出用于在具有一个或多个虚拟机的计算环境内均衡负载的方法的流程图。具体实施例方式这里描述的实施例公开了用于将虚拟机的负载和性能数据提供给负载均衡器的方法和装置。在特定实施例中,虚拟机的负载和性能数据根据虚拟机的性能度量和虚拟机在其上操作的物理机器的性能度量而被归一化。归一化的信息允许负载均衡器作出明智的转发决定而无需知道服务器是运行在虚拟机上还是物理机器上。虚拟机的性能度量可以包括与虚拟CPU、虚拟存储器、虚拟网络接口、虚拟存储设备、迁移状态、其它虚拟硬件及其组合上的负载有关的信息。物理机器的性能度量可以包括与CPU、存储器、网络接口、存储设备、其它硬件及其组合有关的信息。通过归一化与虚拟机的虚拟组件上的负载有关的数据的性能度量,实施例可以在不对负载均衡器作出任何改变的情况下利用负载均衡器。即,负载均衡器不必在运行在虚拟机上的服务器与运行在物理机器上的服务器之间进行区分。因此,这里公开的实施例可以用于虚拟机间的负载均衡,或者虚拟机与物理机器间的负载均衡。在一个实施例中,虚拟机的归一化可用性由运行在每个虚拟机上的反馈代理提供。反馈代理可以利用由运行在虚拟机上的虚拟化软件提供的API来获取与物理机器上的系统负载有关的性能度量。反馈代理然后根据物理机器和虚拟机两者的性能度量来生成与虚拟机上的负载有关的归一化可用性信息。反馈代理然后将该归一化可用性信息传达给负载均衡器。在一个实施例中,归一化可用性信息可以利用负载均衡器所知的现有协议来发送,因此,无需对负载均衡器进行调节。在另一实施例中,虚拟机的归一化可用性由在管理虚拟机的超级监管者内操作的反馈代理来提供。超级监管者具有访问每个虚拟机的性能度量的权利。超级监管者内的反馈代理随后将每个虚拟机的相关负载传达给负载均衡器。在一个实施例中,归一化可用性信息可以利用负载均衡器所使用的协议来发送。在一个实施例中,运行在超级监管者上的所有虚拟机的归一化可用性信息以聚合的方式被发送给负载均衡器。在另一实施例中,运行超级监管者的每个虚拟机的归一化可用性信息被个别地发送给负载均衡器。在又一实施例中,虚拟机的迁移状态可被提供给负载均衡器。作为响应,例如,负载均衡器可以停止向正迁移的虚拟机转发流量或向正迁移的虚拟机指派新的连接,直到迁移完成为止。例如,负载均衡器还可以选择性地丢弃去往正被迁移的虚拟机的任何流量直到接收到迁移完成的指示为止。这样做有助于到新的物理服务器的迁移,因为上层协议可以适应分组的丢弃。由于虚拟服务器在迁移期间不接收任何新分组,因此其状态不改变,并且因此无需在新的位置处检查对虚拟服务器的任何改变。图IA是图示出根据一个实施例的示例计算环境100的框图。如图所示,计算环境 100包括负载均衡器110和一个或多个物理机器120。每个物理机器120可以容宿(host) 一个或多个虚拟机130。负载均衡器110可以将任务分配在在一个或多个物理机器120上运行的虚拟机130之间。每个虚拟机130被指派(或被配置)有网络层地址(例如,IP地址)。负载均衡器110接收来自每个虚拟机130的可用性信息121,并且将任务分配在这些虚拟机130间以均衡虚拟机上的负载。例如,在一个实施例中,运行在超级监管者140上的反馈代141可被配置来将与该物理系统上的虚拟机130有关的可用性信息提供给负载均衡器110。然而,由反馈代理141 提供的可用性信息可以被归一化,以便不仅考虑到每个虚拟机130所看到的虚拟硬件的负载,而且考虑到虚拟机130在其上运行的物理机器120的系统硬件150的性能度量。图IA示出了连接到负载均衡器110的两本文档来自技高网...

【技术保护点】
1.一种计算系统,包括:处理器;网络接口;存储器,该存储器包含超级监管者,该超级监管者被配置来在所述计算系统上运行多个虚拟机;以及反馈代理,该反馈代理被配置来执行用于监视所述多个虚拟机中的至少第一虚拟机的可用性的操作,该操作包括:监视所述第一虚拟机的一个或多个性能度量;监视所述计算系统的一个或多个性能度量;基于所述计算系统的性能度量来归一化所述第一虚拟机的一个或多个性能度量,以及通过所述网络接口将虚拟机的归一化的性能度量发送给负载均衡器。

【技术特征摘要】
【国外来华专利技术】2009.04.28 US 12/431,5461.一种计算系统,包括处理器;网络接口 ;存储器,该存储器包含超级监管者,该超级监管者被配置来在所述计算系统上运行多个虚拟机;以及反馈代理,该反馈代理被配置来执行用于监视所述多个虚拟机中的至少第一虚拟机的可用性的操作,该操作包括监视所述第一虚拟机的一个或多个性能度量;监视所述计算系统的一个或多个性能度量;基于所述计算系统的性能度量来归一化所述第一虚拟机的一个或多个性能度量,以及通过所述网络接口将虚拟机的归一化的性能度量发送给负载均衡器。2.如权利要求1所述的计算系统,其中,所述负载均衡器包括在第二计算系统上运行的程序,并且其中,所述负载均衡器被配置为基于所述归一化的性能度量将计算任务分配在所述多个虚拟机间。3.如权利要求2所述的计算系统,其中,所述计算任务包括IP网络服务请求,并且其中,所述负载均衡器被配置为将每个请求指派给虚拟机中的一个虚拟机上的网络连接。4.如权利要求2所述的计算系统,其中,所述负载均衡器还被配置为监视虚拟机中的一个虚拟机从所述计算系统到目标计算系统的迁移,并且在该虚拟机迁移到所述目标计算系统时选择性地丢弃去往该虚拟机上的连接的网络流量。5.如权利要求1所述的计算系统,其中,所述反馈代理是所述超级监管者的组件。6.如权利要求1所述的计算系统,其中,所述第一虚拟机的一个或多个性能度量包括虚拟CPU上的负载和虚拟网络接口上的负载中的至少一者。7.如权利要求1所述的计算系统,其中,所述计算系统的一个或多个性能度量包括CPU 上的负载和网络接口上的负载、缓存争夺的指示以及存储器总线利用率的指示中的至少一者ο8.如权利要求1所述的计算系统,其中,所述反馈代理的实例在所述多个虚拟机的每个上运行。9.如权利要求8所述的计算系统,其中,所述多个虚拟机中的一个虚拟机上的所述反馈代理的实例被配置为通过询问所述超级监管者来获取所述计算系统的监视性能度量。10.一种用于为在多个虚拟机上运行的负载均衡应用提供反馈信息的计算机实现的方法,该方法包括通过反馈代理监视所述多个虚拟机中的第一虚拟机的一个或多个性能度量;监视容宿所述第一虚拟机的第一计算系统的一个或多个性能度量;基于所述第一计算系统的性能度量来归一化所述第一虚拟机的一个或多个性能度量;以及通过网络接口将虚拟机的归一化的性能度量发送给负载均衡器应用。11.如权利要求10所述的计算机实现的方法,其中,所述负载均衡器应用包括在第二计算系统上运行的程序,并且其中,所述负载均衡器应用被配置为基于所述归一化的性能度量将计算任务分配在所述多个虚拟机间。12.如权利要求11所述的计算机实现的方法,其中,所述计算任务包括IP网络服务请求,并且其中,所述负载均衡器被配置为将每个请求指派给虚拟机中的一个虚拟机上的网络连...

【专利技术属性】
技术研发人员:阿尔派什·S·帕特尔克里斯·奥"鲁尔克乌达亚库马·西尼瓦萨恩马克·埃伯特
申请(专利权)人:思科技术公司
类型:发明
国别省市:US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1