IP Library › Granted Patent US 11,212,125
Granted Patent B2
US 11,212,125 · App. 15/017,555 · Granted Dec 28, 2021

Asset management with respect to a shared pool of configurable computing resources

Inventors: Joseph W. Cropper (Rochester, MN); Taylor D. Peoples (Austin, TX); Jeffrey W. Tenner (Rochester, MN); Andrew T. Thorstensen (Morrisville, NC)
Assignee: International Business Machines Corporation
H04L12/1428G06F9/5083H04L67/1012H04L67/34H04M15/00H04M15/44H04M15/765G06F2209/5011
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,212,125
App. No.
15/017,555
Granted
Dec 28, 2021
Kind
B2
Abstract

Disclosed aspects relate to asset management with respect to a shared pool of configurable computing resources. With respect to a set of assets which share a resource on a first compute node, a set of asset weight values is identified. The set of asset weight values indicates a set of utilization shares of the resource by the set of assets. A set of asset priority values is identified with respect to the set of assets on the first compute node. The set of asset priority values indicates a relative status arrangement for the set of assets. Using the set of asset weight values and the set of asset priority values, a determination is made to migrate a first asset of the set of assets from the first compute node to a second compute node. Accordingly, the first asset of the set of assets is migrated from the first compute node to the second compute node.

Claims (47)

1. A computer-implemented method for virtual machine management with respect to a shared pool of configurable computing resources, the method comprising:

identifying, with respect to a set of virtual machines which share a resource on a first compute node, a set of virtual machine weight values which indicates a set of utilization shares of the resource by the set of virtual machines, wherein the resource includes a processor capacity remainder on the first compute node;

identifying, with respect to the set of virtual machines on the first compute node, a set of virtual machine priority values which indicates a relative status arrangement for the set of virtual machines;

determining, using both the set of virtual machine weight values and the set of virtual machine priority values, to migrate a first virtual machine of the set of virtual machines from the first compute node to a second compute node; and

migrating the first virtual machine of the set of virtual machines from the first compute node to the second compute node.

2. The method of claim 1 , wherein the set of utilization shares indicates an allocation of the processor capacity remainder to the set of virtual machines.

3. The method of claim 1 , wherein the migration includes a live migration that is performed by a native operating system, and wherein the resource includes a processor allocation.

4. The method of claim 1 , wherein migrating the first virtual machine of the set of virtual machines from the first compute node to the second compute node includes:

migrating, in response to detecting a triggering event, the first virtual machine.

5. The method of claim 4 , wherein the triggering event includes a selection from a group consisting of at least one of:

a threshold temporal period is achieved,

a threshold resource utilization is achieved,

a threshold expected-error-event-impact value is achieved, or

the set of virtual machines is changed.

6. The method of claim 1 , wherein identifying the set of virtual machine weight values, identifying the set of virtual machine priority values, determining to migrate the first virtual machine, and migrating the first virtual machine each occur in an automated fashion without user intervention.

7. The method of claim 1 , wherein determining, using both the set of virtual machine weight values and the set of virtual machine priority values, to migrate the first virtual machine of the set of virtual machines from the first compute node to the second compute node includes:

determining to migrate the first virtual machine to balance, with respect to the first and second compute nodes, the set of virtual machine weight values and the set of virtual machine priority values.

8. The method of claim 1 , wherein determining, using both the set of virtual machine weight values and the set of virtual machine priority values, to migrate the first virtual machine of the set of virtual machines from the first compute node to the second compute node includes:

determining to migrate the first virtual machine based on a striping criterion.

9. The method of claim 1 , wherein determining, using both the set of virtual machine weight values and the set of virtual machine priority values, to migrate the first virtual machine of the set of virtual machines from the first compute node to the second compute node includes:

determining to migrate the first virtual machine based on a packing criterion.

10. The method of claim 1 , wherein determining, using both the set of virtual machine weight values and the set of virtual machine priority values, to migrate the first virtual machine of the set of virtual machines from the first compute node to the second compute node includes:

determining, by analyzing a combination of assets of both the first and second compute nodes, a relationship between a first expected burden of a first compute node error event and a second expected burden of a second compute node error event.

11. The method of claim 10 , wherein the first expected burden of the first compute node error event exceeds the second expected burden of the second compute node error event, and wherein a first virtual machine priority of the set of virtual machine priority values indicates a relative status of the first virtual machine which exceeds a status threshold with respect to the relative status arrangement for the set of virtual machines.

12. The method of claim 10 , wherein the second expected burden of the second compute node error event exceeds the first expected burden of the first compute node error event, and wherein a first virtual machine priority of the set of virtual machine priority values indicates a relative status of the first virtual machine which does not exceed a status threshold with respect to the relative status arrangement for the set of virtual machines.

13. The method of claim 1 , wherein determining, using both the set of virtual machine weight values and the set of virtual machine priority values, to migrate the first virtual machine of the set of virtual machines from the first compute node to the second compute node includes:

comparing, using the set of virtual machine priority values which indicates the relative status arrangement for the set of virtual machines, a first virtual machine priority value of the first virtual machine of the set of virtual machines with a second virtual machine priority value of a second virtual machine of the set of virtual machines.

14. The method of claim 13 , wherein the first virtual machine priority value and the second virtual machine priority value are within a threshold difference, further comprising:

comparing, using the set of virtual machine weight values which indicates a set of utilization shares of the resource by the set of virtual machines, a first virtual machine weight value of the first virtual machine of the set of virtual machines with a second virtual machine weight value of the second virtual machine of the set of virtual machines.

15. The method of claim 1 , further comprising:

metering use of the virtual machine management; and

generating an invoice based on the metered use.

16. A system for virtual machine management with respect to a shared pool of configurable computing resources, the system comprising:

a memory having a set of computer readable computer instructions, and

a processor for executing the set of computer readable instructions, the set of computer readable instructions including:

identifying, with respect to a set of virtual machines which share a resource on a first compute node, a set of virtual machine weight values which indicates a set of utilization shares of the resource by the set of virtual machines, wherein the resource includes a processor capacity remainder on the first compute node;

identifying, with respect to the set of virtual machines on the first compute node, a set of virtual machine priority values which indicates a relative status arrangement for the set of virtual machines;

determining, using both the set of virtual machine weight values and the set of virtual machine priority values, to migrate a first virtual machine of the set of virtual machines from the first compute node to a second compute node; and

migrating the first virtual machine of the set of virtual machines from the first compute node to the second compute node.

17. A computer program product for virtual machine management with respect to a shared pool of configurable computing resources, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, wherein the computer readable storage medium is not a transitory signal per se, the program instructions executable by a processor to cause the processor to perform a method comprising:

identifying, with respect to a set of virtual machines which share a resource on a first compute node, a set of virtual machine weight values which indicates a set of utilization shares of the resource by the set of virtual machines, wherein the resource includes a processor capacity remainder on the first compute node, wherein the set of utilization shares indicates an allocation of the processor capacity remainder to the set of virtual machines;

identifying, with respect to the set of virtual machines on the first compute node, a set of virtual machine priority values which indicates a relative status arrangement for the set of virtual machines;

determining, using both the set of virtual machine weight values and the set of virtual machine priority values, to migrate a first virtual machine of the set of virtual machines from the first compute node to a second compute node and determining to migrate the first virtual machine to balance, with respect to the first and second compute nodes, the set of virtual machine weight values and the set of virtual machine priority values, and determining, by analyzing a combination of assets of both the first and second compute nodes, a relationship between a first expected burden of a first compute node error event and a second expected burden of a second compute node error event, wherein the first expected burden of the first compute node error event exceeds the second expected burden of the second compute node error event, and wherein a first virtual machine priority of the set of virtual machine priority values indicates a relative status of the first virtual machine which exceeds a status threshold with respect to the relative status arrangement for the set of virtual machines, and wherein the second expected burden of the second compute node error event exceeds the first expected burden of the first compute node error event, and wherein a first virtual machine priority of the set of virtual machine priority values indicates a relative status of the first virtual machine which does not exceed a status threshold with respect to the relative status arrangement for the set of virtual machines; and

migrating, in response to a triggering event, the first virtual machine of the set of virtual machines from the first compute node to the second compute node.

18. The computer program product of claim 17 , wherein at least one of:

the program instructions are stored in a computer readable storage medium in a data processing system, and wherein the program instructions were downloaded over a network from a remote data processing system; or

the program instructions are stored in a computer readable storage medium in a server data processing system, and wherein the program instructions are downloaded over a network to a remote data processing system for use in a computer readable storage medium with the remote data processing system.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 5, 2016
From: CROPPER, JOSEPH W.; PEOPLES, TAYLOR D.; TENNER, JEFFREY W.; THORSTENSEN, ANDREW T.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 037680/0301 →
Continuity (1)
Related Publication 20170230306A1 · Aug 10, 2017
Cited By (1)
US 12,572,663