Migrating virtual machines among computer systems to balance load caused by virtual machines
First Claim
1. A cluster comprising a plurality of computer systems, wherein each of the plurality of computer systems is configured to execute one or more virtual machines, each of the plurality of computer systems comprising hardware and a plurality of instructions that, when executed on the hardware, detects that a first load of a first computer system of the plurality of computer systems exceeds a second load of a second computer system of the plurality of computer systems and migrates at least a first virtual machine executing on the first computer system to the second computer system responsive to detecting that the first load exceeds the second load, and wherein the first virtual machine has a corresponding load that is nearest, among loads of the virtual machines executing on the first computer system, to ½
- the difference between the first load and the second load.
8 Assignments
0 Petitions
Accused Products
Abstract
A cluster comprises a plurality of computer systems, wherein each of the plurality of computer systems is configured to execute one or more virtual machines. Each of the plurality of computer systems comprises hardware and a plurality of instructions. The plurality of instructions, when executed on the hardware, migrates at least a first virtual machine executing on a first computer system of the plurality of computer systems to a second computer system of the plurality of computer systems. The plurality of instructions migrates the first virtual machine responsive to a first load of the first computer system prior to the migration exceeding a second load of the second computer system prior to the migration.
-
Citations
34 Claims
-
1. A cluster comprising a plurality of computer systems, wherein each of the plurality of computer systems is configured to execute one or more virtual machines, each of the plurality of computer systems comprising hardware and a plurality of instructions that, when executed on the hardware, detects that a first load of a first computer system of the plurality of computer systems exceeds a second load of a second computer system of the plurality of computer systems and migrates at least a first virtual machine executing on the first computer system to the second computer system responsive to detecting that the first load exceeds the second load, and wherein the first virtual machine has a corresponding load that is nearest, among loads of the virtual machines executing on the first computer system, to ½
- the difference between the first load and the second load.
- View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
13. A method comprising:
-
scheduling one or more virtual machines for execution on hardware comprising a first computer system of a plurality of computer systems; the first computer system detecting that the first computer system has a first load that exceeds a second load of a second computer system of the plurality of computer systems; and the first computer system migrating at least a first virtual machine executing on the first computer system to a second computer system of the plurality of computer systems responsive to the detecting, and wherein the first virtual machine has a corresponding load that is nearest, among the virtual machines executing on the first computer system, to ½
the difference between the first load and the second load. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21)
-
-
22. A computer accessible medium encoded with a plurality of instructions that, when executed on a first computer system:
-
select a first virtual machine from one or more virtual machines to be scheduled for execution on the first computer system responsive to a first load of the first computer system exceeding a second load of a second computer system of a plurality of computer systems including the first computer system, and wherein the first virtual machine has a corresponding load that is approximately ½
the difference between the first load and the second load; andmigrate the first virtual machine to the second computer system to be executed on the second computer system. - View Dependent Claims (23, 24, 25, 26, 27, 28, 29, 30, 31)
-
-
32. A computer accessible medium encoded with a plurality of instructions that, when executed on a first computer system:
-
calculate a first load on the first computer system from one or more load factors, wherein the first load corresponds to a first virtual machine, and wherein the first virtual machine is one of one or more virtual machines to be scheduled for execution on the first computer system; transmit the one or more load factors from the first computer system to a second computer system, wherein the second computer system is configured to calculate a second load on the second computer system from the one or more load factors, wherein the second load corresponds to the first virtual machine, and wherein the first load differs from the second load; and migrate the first virtual machine to the second computer system to be executed on the second computer system responsive to a first total load of the first computer system exceeding a second total load of the second computer system, and wherein the first virtual machine has a corresponding load that is nearest, among loads of the virtual machines executing on the first computer system, to ½
the difference between the first total load and the second total load. - View Dependent Claims (33, 34)
-
Specification