Method and system for determining a cost-benefit metric for potential virtual machine migrations
AssigneeVMware, Inc.
InventorsMinwen Ji, Carl A. Waldspurger, John Zedlewski
Life of this patent
Estimating the term…
Loading patent…
AssigneeVMware, Inc.
InventorsMinwen Ji, Carl A. Waldspurger, John Zedlewski
Estimating the term…
A cost-benefit metric for load balancing virtual machines is used to estimate a net gain in resource availability achieved by a proposed virtual machine migration. The cost-benefit metric can be used together with any other known metrics to evaluate candidate migrations. The metric takes into account stability of loads as well as migration cost, hence can protect a system from thrashing, i.e., frequently migrating virtual machines without gaining resource availability.
A method of evaluating a benefit of a proposed migration of a first virtual machine (VM) from a source system to a destination system, the method comprising:
A method of evaluating a benefit of a proposed migration of a first virtual machine (VM) from a first system to a second system, the method comprising:
A computer program product for evaluating a benefit of a proposed migration of a first virtual machine (VM) from a source system to a destination system, the computer program product comprising a computer-readable storage medium storing computer program code for performing the method comprising:
A computer program product for evaluating a benefit of a proposed migration of a first virtual machine (VM) from a first system to a second system, the computer program product comprising a computer-readable storage medium storing computer program code for performing the method comprising:
Dependencies are inferred from the claim text.
Drawings are temporarily unavailable. Open the PDF at USPTO
No related US applications are recorded in the indexed filing history.
Hypervisors; Virtual machine monitors: hypervisor-specific management and integration aspects
Task life-cycle, e.g. stopping, restarting, resuming execution: resumption being on a different machine, e.g. task migration, virtual machine…
Partitioning or combining of resources: logical partitioning of resources; Management or configuration of virtualized resources
Hypervisor-specific management and integration aspects: distribution of virtual machine instances; Migration and load balancing
About 3 years 8 months of term left · ends 2 Jul 2030 (estimated)
The invention relates generally to virtual machine load balancing, and specifically to determining whether the resource costs required to transfer a virtual machine are outweighed by the benefits to be obtained.
The advantages of virtual machine technology have become widely recognized. Among these advantages is the ability to run multiple virtual machines on a single host platform. Running multiple virtual machines makes better use of the capacity of the hardware, while still ensuring that each user enjoys the features of a “complete” computer. Depending on how it is implemented, virtualization also provides greater security, because the virtualization can isolate potentially unstable or unsafe software so that it cannot adversely affect the hardware state or system files required for running the physical (as opposed to virtual) hardware.
As is well known in the field of computer science, a virtual machine (VM) is a software abstraction—a “virtualization”—of an actual physical computer system. FIG. 1 shows one possible arrangement of a computer system 700 that implements virtualization. A VM 200 or “guest,” is installed on a “host platform,” or simply “host,” which will include system hardware 100, that is, a hardware platform, and one or more layers of co-resident components comprising system-level software, such as an operating system (OS) or similar software layer responsible for coordinating and mediating access to hardware resources.
The above and further advantages of the invention may be better understood by referring to the following description in conjunction with the accompanying drawings in which:
FIG. 1 is a block diagram of a computer system that implements Non-Hosted virtualization;
FIG. 2 is a block diagram of a computer system that implements Hosted virtualization;
Processes, for example, virtual machines, can be moved from one computer system to another computer system in order to balance the load, i.e., usage, of limited resources. There are commercially available systems in which virtual machines are “migrated” between computer systems to accomplish this load balancing. While it has been established that imbalances and resource loads can be detected and then mitigated by this migration, there may be situations where migration of a particular virtual machine is not advantageous. Determining when a proposed migration will not be beneficial, from a resource usage perspective, can be advantageous by not “wasting” the resources necessary to complete the migration if the benefits of such a migration are not worthwhile.
The present invention introduces a resource cost-benefit metric for load balancing. The cost-benefit metric estimates the net gain in resource availability achieved by a proposed virtual machine migration. The cost-benefit metric can be used together with any other known metrics, such as a “load-balancing” metric to evaluate candidate migrations. The load-balancing metric of a migration is the improvement in cluster load balance if the migration is executed. As will be discussed in more detail below, an estimated migration gain is weighted by an expected length of the migration, while a post-migration gain is weighted by an expected stable load duration, and these weightings are computed separately for both “current” and “worst-case” load estimates.
It should be noted that “load balance” can be more general than simple resource utilization balancing. The concept of “load” may be quite general, and may incorporate VM importance, e.g., a host load metric may be a “normalized entitlement,” for example, the sum of all VM resource entitlements divided by the host capacity for that resource. A normalized entitlement may be used because, in some implementations of load balancing, a resource allocation policy, specified by a user or system administrator, is taken into account. In such a situation, some VMs are more important than others. Thus, “load” can incorporate both raw resource demand and VM importance or “entitlement.” “Load” can be considered to be utilization weighted by importance. If all VMs have equal importance and are actively competing for resources, then “load” does degenerate to “utilization.” The present invention takes into account stability of loads as well as migration cost, hence can protect a system from thrashing, i.e., migrating VMs frequently without gaining resource availability.