CN112764879A - 负载均衡方法、电子设备及计算机可读存储介质 - Google Patents

负载均衡方法、电子设备及计算机可读存储介质 Download PDF

Info

Publication number
CN112764879A
CN112764879A CN202110046604.XA CN202110046604A CN112764879A CN 112764879 A CN112764879 A CN 112764879A CN 202110046604 A CN202110046604 A CN 202110046604A CN 112764879 A CN112764879 A CN 112764879A
Authority
CN
China
Prior art keywords
virtual machine
memory
running
occupancy rate
load balancing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110046604.XA
Other languages
English (en)
Inventor
刘建德
梁宏建
贾承晖
刘林瑞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Consys Technology Co ltd
Original Assignee
Shenzhen Consys Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Consys Technology Co ltd filed Critical Shenzhen Consys Technology Co ltd
Priority to CN202110046604.XA priority Critical patent/CN112764879A/zh
Publication of CN112764879A publication Critical patent/CN112764879A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种负载均衡方法、电子设备及计算机可读存储介质,涉及虚拟机技术领域,通过获取多个虚拟机的负载参数,根据负载参数获取最小参数值和最大参数值,根据获取到的最小参数值确定第一虚拟机和根据最大参数值确定第二虚拟机,根据第一虚拟机的最小参数值和第二虚拟机的最大参数值获取参数差值,若参数差值小于预设阈值,则将第二虚拟机的运行数据发送给第一虚拟机,通过第一虚拟机执行运行数据,能够对服务器上的虚拟机进行负载均衡,提高资源的利用率。

Description

负载均衡方法、电子设备及计算机可读存储介质
技术领域
本申请涉及虚拟机技术领域,尤其是涉及一种负载均衡方法、电子设备及计算机可读存储介质。
背景技术
云计算虚拟技术逐步发展与普及,为用户提供了更为高效的数据服务,但不同物理机性能及任务差异导致了位于物理机上的虚拟机明显的性能差异,有些虚拟机CPU(Central Processing Unit,中央处理器)或者内存占有率很高,而有些虚拟机仍然处于空闲状态,资源没有得到有效利用。在此情况下,出现了各种不同的负载均衡算法,开发最适合的负载均衡策略,充分利用云端各个物理机的资源来最大化提升任务的处理效率成为云计算虚拟化的热门课题之一。
目前的负载均衡技术是针对客户端发送请求给服务端,服务端根据负载情况,采用某种均衡算法将该请求交由低负载的服务器完成,将结果返回给客户端。均衡算法只在收到请求后选择服务器时起作用,确定该请求由某个服务器完成后,无法再次根据服务器当前负载,进行变更服务器处理,即针对服务器上的虚拟机的负载均衡未得到解决。
发明内容
本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种负载均衡方法,能够对服务器上的虚拟机进行负载均衡,提高资源的利用率。
本申请还提出一种具有上述负载均衡方法的电子设备。
本申请还提出一种具有上述负载均衡方法的计算机可读存储介质。
根据本申请的第一方面实施例的负载均衡方法,获取多个虚拟机的负载参数;根据所述负载参数获取最小参数值和最大参数值;根据所述最小参数值确定第一虚拟机和根据所述最大参数值确定第二虚拟机;根据所述第一虚拟机的所述最小参数值和所述第二虚拟机的最大参数值获取参数差值;若所述参数差值小于预设阈值,则将所述第二虚拟机的运行数据发送给所述第一虚拟机,通过所述第一虚拟机执行所述运行数据。
根据本申请实施例的负载均衡方法,至少具有如下有益效果:通过获取多个虚拟机的负载参数,根据负载参数获取最小参数值和最大参数值,根据获取到的最小参数值确定第一虚拟机和根据最大参数值确定第二虚拟机,根据第一虚拟机的最小参数值和第二虚拟机的最大参数值获取参数差值,若参数差值小于预设阈值,则将第二虚拟机的运行数据发送给第一虚拟机,通过第一虚拟机执行运行数据,能够对服务器上的虚拟机进行负载均衡,提高资源的利用率。
根据本申请的一些实施例,所述负载参数包括处理器占用率;对应的,根据所述第一虚拟机的所述最小参数值和所述第二虚拟机的最大参数值获取参数差值,包括:根据所述第一虚拟机的处理器占用率与所述第二虚拟机的处理器占用率计算出第一占用率差值。
根据本申请的一些实施例,所述若所述参数差值小于预设阈值,则将所述第二虚拟机的运行数据发送给所述第一虚拟机,通过所述第一虚拟机执行所述运行数据,包括:若所述第一占用率差值小于所述预设阈值,则停止所述第二虚拟机的运行程序,并对所述第二虚拟机的运行内存进行标记处理;将所述第二虚拟机的运行程序的程序信息和所述运行内存发送给所述第一虚拟机;通过所述第一虚拟机拷贝所述运行内存后,根据所述程序信息执行所述运行内存。
根据本申请的一些实施例,所述负载参数包括内存占用率;对应的,根据所述第一虚拟机的所述最小参数值和所述第二虚拟机的最大参数值获取参数差值,包括:根据所述第一虚拟机的内存占用率与所述第二虚拟机的内存占用率计算出第二占用率差值。
根据本申请的一些实施例,所述若所述参数差值小于预设阈值,则将所述第二虚拟机的运行数据发送给所述第一虚拟机,通过所述第一虚拟机执行所述运行数据,包括:若所述第二占用率差值小于所述预设阈值,则停止所述第二虚拟机的运行程序,并对所述第二虚拟机的运行内存进行标记处理;将所述第二虚拟机的运行程序的程序信息和所述运行内存发送给所述第一虚拟机;通过所述第一虚拟机拷贝所述运行内存后,根据所述程序信息执行所述运行内存。
根据本申请的一些实施例,其特征在于,所述负载参数包括处理器占用率和内存占用率;对应的,根据所述第一虚拟机的所述最小参数值和所述第二虚拟机的最大参数值获取参数差值,包括:
根据所述第一虚拟机的处理器占用率与所述第二虚拟机的处理器占用率计算出第一占用率差值,并根据所述第一虚拟机的内存占用率与所述第二虚拟机的内存占用率计算出第二占用率差值。
根据本申请的一些实施例,所述若所述参数差值小于预设阈值,则将所述第二虚拟机的运行数据发送给所述第一虚拟机,通过所述第一虚拟机执行所述运行数据,包括:若所述第一占用率差值小于所述预设阈值或所述第二占用率差值小于所述预设阈值,则停止所述第二虚拟机的运行程序,并对所述第二虚拟机的运行内存进行标记处理;将所述第二虚拟机的运行程序的程序信息和所述运行内存发送给所述第一虚拟机;通过所述第一虚拟机拷贝所述运行内存后,根据所述程序信息执行所述运行内存。
根据本申请的一些实施例,所述第一虚拟机根据所述程序信息执行所述运行内存后,还包括:生成所述运行内存的执行结果;将所述执行结果发送给所述第二虚拟机。
根据本申请的第二方面实施例的电子设备,包括:至少一个处理器,以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行所述指令时实现如第一方面所述的负载均衡方法。
根据本申请的电子设备,至少具有如下有益效果:通过执行第一方面实施例中提到的负载均衡方法,能够对服务器上的虚拟机进行负载均衡,提高资源的利用率。
根据本申请的第三方面实施例的计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面所述的负载均衡方法。
根据本申请的计算机可读存储介质,至少具有如下有益效果:通过执行第一方面实施例中提到的负载均衡方法,能够对服务器上的虚拟机进行负载均衡,提高资源的利用率。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
图1为本申请实施例中负载均衡处理方法的一具体流程示意图;
图2为本申请实施例中负载均衡处理方法的步骤S400的一具体流程示意图;
图3为本申请实施例中负载均衡处理方法的步骤S500的第一流程示意图;
图4为本申请实施例中负载均衡处理方法的步骤S500的第二流程示意图;
图5为本申请实施例中负载均衡处理方法的步骤S500的第三流程示意图;
图6为本申请实施例中负载均衡处理方法的另一具体流程示意图;
图7为本申请实施例中负载均衡处理方法的一具体应用示例图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。
需要说明的是,如无特殊说明,在实施例中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本文所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本文说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本申请。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。
云计算虚拟技术逐步发展与普及,为用户提供了更为高效的数据服务,但不同物理机性能及任务差异导致了位于物理机上的虚拟机明显的性能差异,有些虚拟机CPU(Central Processing Unit,中央处理器)或者内存占有率很高,而有些虚拟机仍然处于空闲状态,资源没有得到有效利用。在此情况下,出现了各种不同的负载均衡算法,开发最适合的负载均衡策略,充分利用云端各个物理机的资源来最大化提升任务的处理效率成为云计算虚拟化的热门课题之一。
目前的负载均衡技术是针对客户端发送请求给服务端,服务端根据负载情况,采用某种均衡算法将该请求交由低负载的服务器完成,将结果返回给客户端。均衡算法只在收到请求后选择服务器时起作用,确定该请求由某个服务器完成后,无法再次根据服务器当前负载,进行变更服务器处理,即针对服务器上的虚拟机的负载均衡未得到解决。
基于此,本申请实施例提供了一种负载均衡方法、电子设备及计算机可读存储介质,通过获取多个虚拟机的负载参数,根据负载参数获取最小参数值和最大参数值,根据获取到的最小参数值确定第一虚拟机和根据最大参数值确定第二虚拟机,根据第一虚拟机的最小参数值和第二虚拟机的最大参数值获取参数差值,若参数差值小于预设阈值,则将第二虚拟机的运行数据发送给第一虚拟机,通过第一虚拟机执行运行数据,能够对服务器上的虚拟机进行负载均衡,提高资源的利用率。
第一方面,本申请实施例提供了一种负载均衡方法。
在一些实施例中,参照图1,示出了本申请实施例中负载均衡方法方法的流程示意图。其具体包括步骤:
S100,获取多个虚拟机的负载参数;
S200,根据负载参数获取最小参数值和最大参数值;
S300,根据最小参数值确定第一虚拟机和根据最大参数值确定第二虚拟机;
S400,根据第一虚拟机的最小参数值和第二虚拟机的最大参数值获取参数差值;
S500,若参数差值小于预设阈值,则将第二虚拟机的运行数据发送给第一虚拟机,通过第一虚拟机执行运行数据。
在步骤S100中,服务器会周期性地获取多个虚拟机的负载参数,其中负载参数是指虚拟机的运行负载状态,通过获取多个虚拟机的负载参数即运行负载状态,能够反映各个虚拟机当前的资源运行情况。在实际应用中,在每个虚拟机中部署用于计算虚拟机的负载状态的负载计算服务模块,通过该能负载计算服务模块够实时获取虚拟机运行负载状态。并且还会将服务器将当前虚拟机的负载参数广播发送给服务器内的其他虚拟机中,以让各个虚拟机能够获取其他虚拟机的资源运行情况及负载状态。
在步骤S200中,当获取到所有的虚拟机的负载参数后,会通过比较大小关系的方式,获取到负载参数中值最小的最小参数值和负载参数中值最大的最大参数值,其中最小参数值可以反映虚拟机当前负载最低,最大参数值可以反映虚拟机当前负载最大。
在步骤S300中,根据最小参数值确定对应的虚拟机即第一虚拟机和根据最大参数值确定对应的虚拟机即第二虚拟机,其中第一虚拟机则是多个虚拟机中当前负载最小的虚拟机,第二虚拟机则是多个虚拟机中当前负载最大的虚拟机,通过确定第一虚拟机和第二虚拟机来执行相应的负载均衡的处理方式。
在步骤S400中,根据获取到的第一虚拟机对应的最小参数值和第二虚拟机对应的最大参数值,进行计算,得到最小参数值和最大参数值的参数差值。在实际应用中,通过最大参数值与最小参数值相减,得到对应的参数差值。参数差值能够表现当前服务器内的第一虚拟机与第二虚拟机的负载状态差异以及资源运行差异,能够根据参数差值判断是否需要进行负载均衡处理。
在步骤S500中,判断获取到的参数差值与预设阈值的大小关系,若参数差值小于预设阈值,则降低第二虚拟机的运行数据发送给第一虚拟机,通过第一虚拟机来执行第二虚拟机发送过来的运行数据。其中预设阈值可以根据实际情况进行调整,确保通过该预设阈值能够对虚拟机进行负载均衡处理。具体地说,在虚拟机内部部署有运行程序,该运行程序用于负责执行虚拟机的负载均衡处理。
在一些实施例中,如图2所示,步骤S400即根据第一虚拟机的最小参数值和第二虚拟机的最大参数值获取参数差值,具体包括步骤:
S410,判断负载参数的类型。
S420,若负载参数包括处理器占用率,则根据第一虚拟机的处理器占用率与第二虚拟机的处理器占用率获取第一占用率差值。
在步骤S410中,判断负载参数的类型,根据负载参数的类型不同,获取不同的第一占用率差值,对应的,进行比较大小关系的预设阈值也不同。
在一些实施例中,负载参数包括处理器占用率,其中处理器占用率表示当前虚拟机内运行的程序所占用的CPU资源,表示在某个时间点的运行程序的情况。处理器占用率越高,说明虚拟机在这个时间上运行了很多程序;反之,处理器占用率越低,说明虚拟机在这个时间上运行了较少的程序。
在步骤S420中,若负载参数包括处理器占用率时,则根据第一虚拟机的处理器占用率与第二虚拟机的处理器占用率获取第一占用率差值。此时,第一虚拟机的处理器占用率为当前所有的虚拟机的处理器占用率中的参数值最小的占用率;第二虚拟机的处理器占用率为当前所有的虚拟机的处理器占用率中的参数值最大的占用率,因此,将第一虚拟机的处理器占用的参数值与第二虚拟机的处理器占用率的参数值相减得到对应的第一占用率差值。
在一些实施例中,当负载参数包括处理器占用率时,对应的,若第一占用率差值小于预设阈值,如图3所示,步骤S500具体还包括:
S511,若第一占用率差值小于预设阈值,则停止第二虚拟机的运行程序,并对第二虚拟机的运行内存进行标记处理;
S512,将第二虚拟机的运行程序的程序信息和运行内存发送给第一虚拟机;
S513,通过第一虚拟机拷贝运行内存后,根据程序信息执行运行内存。
在步骤S511中,将当前负载最大的第二虚拟机的运行程序停止,并将对应的运行程序的运行内存进行标记处理,其中标记处理是指将第二虚拟机的运行程序所对应的运行内存部分的数据进行冻结并进行标记,以确定该冻结的内存的身份标识。
在步骤S512中,将第二虚拟机的运行程序的程序信息以及运行内存发送给负载最小的第二虚拟机,具体地说,通过配置在虚拟机内部的程序迁移服务模块,能够将虚拟机内部的运行程序所对应的程序信息以及标记的内存数据进行迁移。其中程序信息是指第二虚拟机当前运行程序所要处理的信息。
在步骤S513中,当第一虚拟机接收到第二虚拟机的内存数据后,通过对应的运行程序的程序信息运行该运行内存。
在一些实施例中,如图2所示,步骤S400即根据第一虚拟机的最小参数值和第二虚拟机的最大参数值获取参数差值,具体包括步骤:
S430,若负载参数包括内存占用率,则根据第一虚拟机的内存占用率与第二虚拟机的内存占用率获取第二占用率差值。
在一些实施例中,负载参数包括内存占用率,其中内存占用率表示当前运行程序所开销的内存。运行程序占用内存过大,会影响计算机的整体性能。
在步骤S430中,若负载参数包括内存占用率时,则根据第一虚拟机的内存占用率与第二虚拟机的内存占用率获取第二占用率差值。此时,第一虚拟机的内存占用率为当前所有的虚拟机的内存占用率中的参数值最小的占用率;第二虚拟机的内存占用率为当前所有的虚拟机的内存占用率中的参数值最大的占用率,因此,将第一虚拟机的处理器占用的参数值与第二虚拟机的内存占用率的参数值相减得到对应的第二占用率差值。
在一些实施例中,当负载参数包括内存占用率时,对应的,若第二占用率差值小于预设阈值,则如图4所示,步骤S500具体还包括:
S521,停止第二虚拟机的运行程序,并对第二虚拟机的运行内存进行标记处理;
S522,将第二虚拟机的运行程序的程序信息和运行内存发送给第一虚拟机;
S523,通过第一虚拟机拷贝运行内存后,根据程序信息执行运行内存。
在步骤S521中,将当前负载最大的第二虚拟机的运行程序停止,并将对应的运行程序的运行内存进行标记处理,其中标记处理是指将第二虚拟机的运行程序所对应的运行内存部分的数据进行冻结并进行标记,以确定该冻结的内存的身份标识。
在步骤S522中,将第二虚拟机的运行程序的程序信息以及运行内存发送给负载最小的第二虚拟机,具体地说,通过配置在虚拟机内部的程序迁移服务模块,能够将虚拟机内部的运行程序所对应的程序信息以及标记的内存数据进行迁移。其中程序信息是指第二虚拟机当前运行程序所要处理的信息。
在步骤S523中,当第一虚拟机接收到第二虚拟机的内存数据后,通过对应的运行程序的程序信息运行该运行内存。
在一些实施例中,如图2所示,步骤S400即根据第一虚拟机的最小参数值和第二虚拟机的最大参数值获取参数差值,具体包括步骤:
S440,若负载参数包括处理器占用率和内存占用率,则根据第一虚拟机的处理器占用率与第二虚拟机的处理器占用率计算出第一占用率差值,并根据第一虚拟机的内存占用率与第二虚拟机的内存占用率计算出第二占用率差值。
在一些实施例中,负载参数包括内存占用率和处理器占用率,同时对虚拟机的处理占用率和内存占用率进行获取,确定虚拟机当前的负载状态。
在步骤S440中,若负载参数包括处理器占用率和内存占用率时,则根据第一虚拟机的内存占用率与第二虚拟机的内存占用率获取第二占用率差值,根据第一虚拟机的处理器占用率与第二虚拟机的处理器占用率获取第一占用率差值。此时,第一虚拟机的处理器占用率为当前所有的虚拟机的处理器占用率中的参数值最小的占用率;第二虚拟机的处理器占用率为当前所有的虚拟机的处理器占用率中的参数值最大的占用率,因此,将第一虚拟机的处理器占用的参数值与第二虚拟机的处理器占用率的参数值相减得到对应的第一占用率差值;第一虚拟机的内存占用率为当前所有的虚拟机的内存占用率中的参数值最小的占用率;第二虚拟机的内存占用率为当前所有的虚拟机的内存占用率中的参数值最大的占用率,因此,将第一虚拟机的处理器占用的参数值与第二虚拟机的内存占用率的参数值相减得到对应的第二占用率差值。
在一些实施例中,当负载参数包括处理器占用率和内存占用率时,对应的,若第一占用率差值小于预设阈值或者第二占用率差值小于预设阈值,则如图5所示,步骤S500具体还包括:
S531,若第一占用率差值小于预设阈值或者第二占用率差值小于预设阈值,则停止第二虚拟机的运行程序,并对第二虚拟机的运行内存进行标记处理;
S532,将第二虚拟机的运行程序的程序信息和运行内存发送给第一虚拟机;
S533,通过第一虚拟机拷贝运行内存后,根据程序信息执行运行内存。
在步骤S531中,将当前负载最大的第二虚拟机的运行程序停止,并将对应的运行程序的运行内存进行标记处理,其中标记处理是指将第二虚拟机的运行程序所对应的运行内存部分的数据进行冻结并进行标记,以确定该冻结的内存的身份标识。
在步骤S532中,将第二虚拟机的运行程序的程序信息以及运行内存发送给负载最小的第二虚拟机,具体地说,通过配置在虚拟机内部的程序迁移服务模块,能够将虚拟机内部的运行程序所对应的程序信息以及标记的内存数据进行迁移。其中程序信息是指第二虚拟机当前运行程序所要处理的信息。
在步骤S533中,当第一虚拟机接收到第二虚拟机的内存数据后,通过对应的运行程序的程序信息运行该运行内存。具体地说,第一虚拟机会拷贝第二虚拟机的内存数据,并且通过相应的运行程序来执行对应的内存数据。
在一些实施例中,如图6所示,本申请实施例中的负载均衡方法具体还包括:
步骤S600,生成运行内存的执行结果,将执行结果发送给第二虚拟机。
在步骤S600中,当第一虚拟机根据程序信息和运行程序执行第二虚拟机完相应的内存数据后,会生成执行结果,该执行结果用于表示第一虚拟机对该内存数据的处理响应,从而反映对应用程序的执行结果,将生成的执行结果发送给第二虚拟机,使得第二虚拟机能够得知第一虚拟机的执行状态,完成信息同步。
在可能实施的应用实例中,如图7所示,以负载参数包括处理器占用率和内存占用率为例,获取当前服务器上的所有虚拟机的负载参数,根据获取到的所有负载参数确定内存占用率最小Ymin的和处理器占用率最小Xmin的第一虚拟机以及内存占用率最大Ymax的和处理器占用率最大Xmax的第二虚拟机。判断第一虚拟机的处理器占用率与第二虚拟机的处理器占用率的差值即第一占用率差值与预设的第一占用率差值的第一阈值Xdelta的大小关系,并且判断第一虚拟机的内存占用率与第二虚拟机的内存占用率的差值即第二占用率差值与预设的第二占用率差值的第二阈值Ydelta的大小关系。若第一占用率差值小于第一阈值或者第二占用率差值小于第二阈值,则停止第二虚拟机内的运行程序的运行,并且对内存数据进行标记处理,将运行程序和内存数据发送给第一虚拟机,通过第一虚拟机拷贝内存数据后,由第一虚拟机根据相应的运行程序进行处理,最终生成相应的执行结果发送给第二虚拟机;若第一占用率差值大于第一阈值Xdelta并且第二占用率差值大于第二阈值Ydelta,则重新获取当前服务器上的所有虚拟机的负载参数。
需要说明的是,本申请实施例中提到的虚拟机均连接在同一局域网内,当有新增的虚拟机连接到局域网内时,该虚拟机也能够执行本申请实施例中提到的负载均衡方式,从而达到局域网内的所有虚拟机的负载均衡。
本申请实施例中,通过获取多个虚拟机的负载参数,根据负载参数获取最小参数值和最大参数值,根据获取到的最小参数值确定第一虚拟机和根据最大参数值确定第二虚拟机,根据第一虚拟机的最小参数值和第二虚拟机的最大参数值获取参数差值,若参数差值小于预设阈值,则将第二虚拟机的运行数据发送给第一虚拟机,通过第一虚拟机执行运行数据,能够对服务器上的虚拟机进行负载均衡,提高资源的利用率。
第二方面,本申请实施例还提供了一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器;
其中,所述处理器通过调用所述存储器中存储的计算机程序,用于执行第一方面实施例中的负载均衡方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本申请第一方面实施例中的负载均衡方法。处理器通过运行存储在存储器中的非暂态软件程序以及指令,从而实现上述第一方面实施例中的负载均衡方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述第一方面实施例中的负载均衡方法。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现上述第一方面实施例中的负载均衡方法所需的非暂态软件程序以及指令存储在存储器中,当被一个或者多个处理器执行时,执行上述第一方面实施例中的负载均衡方法。
第三方面,本申请实施例还提供了计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于:执行第一方面实施例中的负载均衡方法;
在一些实施例中,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,被第三方面实施例的电子设备中的一个处理器执行,可使得上述一个或多个处理器执行上述第一方面实施例中的负载均衡方法。
以上所描述的设备实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
在本说明书的描述中,参考术语“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。
尽管已经示出和描述了本申请的实施例,本领域的普通技术人员可以理解:在不脱离本申请的原理和宗旨的情况下可以对这些实施例进行多种变化、修改、替换和变型,本申请的范围由权利要求及其等同物限定。

Claims (10)

1.负载均衡方法,其特征在于,包括:
获取多个虚拟机的负载参数;
根据所述负载参数获取最小参数值和最大参数值;
根据所述最小参数值确定第一虚拟机和根据所述最大参数值确定第二虚拟机;
根据所述第一虚拟机的所述最小参数值和所述第二虚拟机的最大参数值获取参数差值;
若所述参数差值小于预设阈值,则将所述第二虚拟机的运行数据发送给所述第一虚拟机,通过所述第一虚拟机执行所述运行数据。
2.根据权利要求1所述的负载均衡方法,其特征在于,所述负载参数包括处理器占用率;
对应的,根据所述第一虚拟机的所述最小参数值和所述第二虚拟机的最大参数值获取参数差值,包括:
根据所述第一虚拟机的处理器占用率与所述第二虚拟机的处理器占用率计算出第一占用率差值。
3.根据权利要求2所述的负载均衡方法,其特征在于,所述若所述参数差值小于预设阈值,则将所述第二虚拟机的运行数据发送给所述第一虚拟机,通过所述第一虚拟机执行所述运行数据,包括:
若所述第一占用率差值小于所述预设阈值,则停止所述第二虚拟机的运行程序,并对所述第二虚拟机的运行内存进行标记处理;
将所述第二虚拟机的运行程序的程序信息和所述运行内存发送给所述第一虚拟机;
通过所述第一虚拟机拷贝所述运行内存后,根据所述程序信息执行所述运行内存。
4.根据权利要求1所述的负载均衡方法,其特征在于,所述负载参数包括内存占用率;
对应的,根据所述第一虚拟机的所述最小参数值和所述第二虚拟机的最大参数值获取参数差值,包括:
根据所述第一虚拟机的内存占用率与所述第二虚拟机的内存占用率计算出第二占用率差值。
5.根据权利要求4所述的负载均衡方法,其特征在于,所述若所述参数差值小于预设阈值,则将所述第二虚拟机的运行数据发送给所述第一虚拟机,通过所述第一虚拟机执行所述运行数据,包括:
若所述第二占用率差值小于所述预设阈值,则停止所述第二虚拟机的运行程序,并对所述第二虚拟机的运行内存进行标记处理;
将所述第二虚拟机的运行程序的程序信息和所述运行内存发送给所述第一虚拟机;
通过所述第一虚拟机拷贝所述运行内存后,根据所述程序信息执行所述运行内存。
6.根据权利要求1所述的负载均衡方法,其特征在于,所述负载参数包括处理器占用率和内存占用率;
对应的,根据所述第一虚拟机的所述最小参数值和所述第二虚拟机的最大参数值获取参数差值,包括:
根据所述第一虚拟机的处理器占用率与所述第二虚拟机的处理器占用率计算出第一占用率差值,并根据所述第一虚拟机的内存占用率与所述第二虚拟机的内存占用率计算出第二占用率差值。
7.根据权利要求6所述的负载均衡方法,其特征在于,所述若所述参数差值小于预设阈值,则将所述第二虚拟机的运行数据发送给所述第一虚拟机,通过所述第一虚拟机执行所述运行数据,包括:
若所述第一占用率差值小于所述预设阈值或所述第二占用率差值小于所述预设阈值,则停止所述第二虚拟机的运行程序,并对所述第二虚拟机的运行内存进行标记处理;
将所述第二虚拟机的运行程序的程序信息和所述运行内存发送给所述第一虚拟机;
通过所述第一虚拟机拷贝所述运行内存后,根据所述程序信息执行所述运行内存。
8.根据权利要求1至7任一所述的负载均衡方法,其特征在于,所述第一虚拟机根据所述程序信息执行所述运行内存后,还包括:
生成所述运行内存的执行结果;
将所述执行结果发送给所述第二虚拟机。
9.电子设备,其特征在于,包括:
至少一个处理器,以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行所述指令时实现如权利要求1至8任一项所述的负载均衡方法。
10.计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至8任一项所述的负载均衡方法。
CN202110046604.XA 2021-01-14 2021-01-14 负载均衡方法、电子设备及计算机可读存储介质 Pending CN112764879A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110046604.XA CN112764879A (zh) 2021-01-14 2021-01-14 负载均衡方法、电子设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110046604.XA CN112764879A (zh) 2021-01-14 2021-01-14 负载均衡方法、电子设备及计算机可读存储介质

Publications (1)

Publication Number Publication Date
CN112764879A true CN112764879A (zh) 2021-05-07

Family

ID=75700460

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110046604.XA Pending CN112764879A (zh) 2021-01-14 2021-01-14 负载均衡方法、电子设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112764879A (zh)

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120246637A1 (en) * 2011-03-22 2012-09-27 Cisco Technology, Inc. Distributed load balancer in a virtual machine environment
KR20140080795A (ko) * 2012-12-18 2014-07-01 서강대학교산학협력단 가상화 환경 내 하둡 맵리듀스의 부하 분산 방법 및 시스템
CN104168323A (zh) * 2013-08-26 2014-11-26 天津书生投资有限公司 一种云服务系统及方法
CN104331321A (zh) * 2014-10-09 2015-02-04 冷明 基于禁忌搜索和负载均衡的云计算任务调度方法
CN104917805A (zh) * 2015-01-14 2015-09-16 杭州华三通信技术有限公司 一种负载分担的方法和设备
WO2016008316A1 (zh) * 2014-07-15 2016-01-21 华为技术有限公司 一种虚拟机迁移方法及装置
US20160094410A1 (en) * 2014-09-30 2016-03-31 International Business Machines Corporation Scalable metering for cloud service management based on cost-awareness
CN105592134A (zh) * 2015-08-26 2016-05-18 杭州华三通信技术有限公司 一种负载分担的方法和装置
WO2016088163A1 (ja) * 2014-12-01 2016-06-09 株式会社日立製作所 計算機システム及びリソース管理方法
CN105893155A (zh) * 2016-04-14 2016-08-24 广州杰赛科技股份有限公司 虚拟机负载均衡控制方法与装置
CN106302224A (zh) * 2016-10-15 2017-01-04 黄林果 一种云服务环境下的任务优化引导方法
CN106572170A (zh) * 2016-10-28 2017-04-19 中国电子科技集团公司第五十四研究所 一种控制器及sdn分层多控制器下的动态负载均衡方法
CN106648890A (zh) * 2016-12-06 2017-05-10 中国科学院重庆绿色智能技术研究院 一种能耗感知的云计算服务器资源在线管理方法和系统
CN107797878A (zh) * 2016-09-06 2018-03-13 阿里巴巴集团控股有限公司 虚拟机热迁移处理方法及系统
US20180285169A1 (en) * 2017-04-03 2018-10-04 Fujitsu Limited Information processing system and computer-implemented method
CN109002348A (zh) * 2018-07-26 2018-12-14 郑州云海信息技术有限公司 一种虚拟化系统中的负载均衡方法及装置
CN110134513A (zh) * 2019-04-17 2019-08-16 平安科技(深圳)有限公司 负载均衡方法、装置、计算机设备及存储介质
CN110347498A (zh) * 2019-06-10 2019-10-18 华南理工大学 一种容器和虚拟机混合云环境下的负载动态迁移方法
CN111953732A (zh) * 2015-11-10 2020-11-17 华为技术有限公司 一种云计算系统中的资源调度方法及装置

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120246637A1 (en) * 2011-03-22 2012-09-27 Cisco Technology, Inc. Distributed load balancer in a virtual machine environment
KR20140080795A (ko) * 2012-12-18 2014-07-01 서강대학교산학협력단 가상화 환경 내 하둡 맵리듀스의 부하 분산 방법 및 시스템
CN104168323A (zh) * 2013-08-26 2014-11-26 天津书生投资有限公司 一种云服务系统及方法
WO2016008316A1 (zh) * 2014-07-15 2016-01-21 华为技术有限公司 一种虚拟机迁移方法及装置
US20160094410A1 (en) * 2014-09-30 2016-03-31 International Business Machines Corporation Scalable metering for cloud service management based on cost-awareness
CN104331321A (zh) * 2014-10-09 2015-02-04 冷明 基于禁忌搜索和负载均衡的云计算任务调度方法
WO2016088163A1 (ja) * 2014-12-01 2016-06-09 株式会社日立製作所 計算機システム及びリソース管理方法
CN104917805A (zh) * 2015-01-14 2015-09-16 杭州华三通信技术有限公司 一种负载分担的方法和设备
CN105592134A (zh) * 2015-08-26 2016-05-18 杭州华三通信技术有限公司 一种负载分担的方法和装置
CN111953732A (zh) * 2015-11-10 2020-11-17 华为技术有限公司 一种云计算系统中的资源调度方法及装置
CN105893155A (zh) * 2016-04-14 2016-08-24 广州杰赛科技股份有限公司 虚拟机负载均衡控制方法与装置
CN107797878A (zh) * 2016-09-06 2018-03-13 阿里巴巴集团控股有限公司 虚拟机热迁移处理方法及系统
CN106302224A (zh) * 2016-10-15 2017-01-04 黄林果 一种云服务环境下的任务优化引导方法
CN106572170A (zh) * 2016-10-28 2017-04-19 中国电子科技集团公司第五十四研究所 一种控制器及sdn分层多控制器下的动态负载均衡方法
CN106648890A (zh) * 2016-12-06 2017-05-10 中国科学院重庆绿色智能技术研究院 一种能耗感知的云计算服务器资源在线管理方法和系统
US20180285169A1 (en) * 2017-04-03 2018-10-04 Fujitsu Limited Information processing system and computer-implemented method
CN109002348A (zh) * 2018-07-26 2018-12-14 郑州云海信息技术有限公司 一种虚拟化系统中的负载均衡方法及装置
CN110134513A (zh) * 2019-04-17 2019-08-16 平安科技(深圳)有限公司 负载均衡方法、装置、计算机设备及存储介质
CN110347498A (zh) * 2019-06-10 2019-10-18 华南理工大学 一种容器和虚拟机混合云环境下的负载动态迁移方法

Similar Documents

Publication Publication Date Title
JP4421637B2 (ja) サブタスク・プロセッサの分散スケジューリング
CN108173698B (zh) 网络服务管理方法、装置、服务器及存储介质
CN108196978B (zh) 数据存储方法、装置、数据存储系统及可读存储介质
CN109857592A (zh) 数据恢复控制方法、服务器及存储介质
CN111147565B (zh) 一种集群节点控制方法、装置、设备及可读存储介质
CN111176803A (zh) 业务处理方法、装置、服务器及存储介质
CN113608871A (zh) 业务处理方法及装置
CN112698952A (zh) 计算资源统一管理方法、装置、计算机设备及存储介质
CN112214288B (zh) 基于Kubernetes集群的Pod调度方法、装置、设备和介质
CN114371931A (zh) 服务集群资源分配方法、装置及计算机设备
CN112764879A (zh) 负载均衡方法、电子设备及计算机可读存储介质
WO2021013185A1 (zh) 虚机迁移处理及策略生成方法、装置、设备及存储介质
CN112148496B (zh) 超融合虚拟机的计算存储资源的能效管理方法、装置及电子设备
CN115987790A (zh) 基于位置信息的升级方法、装置、设备及存储介质
CN114301911A (zh) 一种基于边边协同的任务管理方法和系统
US10860347B1 (en) Virtual machine with multiple content processes
Huaijun et al. Research and implementation of mobile cloud computing offloading system based on Docker container
CN112579114A (zh) 物联网设备的程序升级方法、装置及物联网设备
CN117221326A (zh) 软件负载均衡调度方法、系统、电子设备和存储介质
CN114153399B (zh) 存储系统的数据存储方法、装置、控制装置和介质
CN116700903B (zh) 面向云计算的虚拟机的内存调节方法、系统、设备及介质
CN113867923B (zh) 一种容器应用跨cpu架构迁移的方法和装置
CN115150402B (zh) 一种云资源分配方法及系统
CN116719632B (zh) 任务调度方法、装置、设备以及介质
CN111371873B (zh) 一种Web服务选举方法、装置和服务器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination