IP Library Granted Patent US 9,600,308
Granted Patent B2
US 9,600,308 · App. 13/619,277 · Granted Mar 21, 2017

Virtual machine monitoring in cloud infrastructures

Inventors: Dakshi Agrawal (Monsey, NY); Vasileios Pappas (Elmsford, NY)
Assignee: International Business Machines Corporation
G06F9/45533G06F9/45558G06F11/3409G06F11/3476G06F11/3495H04L43/08G06F2009/45575G06F2009/45591G06F2201/815
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 9,600,308
App. No.
13/619,277
Granted
Mar 21, 2017
Kind
B2
Abstract

A computer implemented method monitors resource usage of a virtual machine. When a virtual machine is instantiated, resource usage of the virtual machine is monitored to form monitoring data. The monitoring is performed externally from the virtual machine. When the virtual machine is later suspended, the monitoring data is stored as metadata associated with the virtual machine.

Claims (34)

1. A computer implemented method for monitoring resource usage of a virtual machine, the method comprising:

instantiating, by a processor unit, the virtual machine;

monitoring, by the processor unit, resource usage of the virtual machine to form monitoring data, wherein the monitoring is performed externally from the virtual machine by a hypervisor having capabilities of a monitoring proxy for virtual machines that it hosts;

suspending, by the processor unit, the virtual machine;

responsive to suspending the virtual machine, formatting and storing, by the processor unit, the monitoring data appended by the hypervisor specifically as metadata attached to a virtual machine image in combination with virtual resources associated with the virtual machine in an image software library, obviating a requirement in monitoring environments to make associations during migration of virtual machines and during configuration changes to applications executing within the virtual machine by maintaining associations between the monitoring data, virtual machine identifiers and virtual machines tracking changes in the virtual machine identifiers, including Internet Protocol IP addresses and media access control addresses of the virtual machine;

maintaining the monitoring data as the metadata when one of the virtual machine, or a composite application, migrates to a different cloud environment and when moving the virtual machine between cloud infrastructures including a private cloud and a public cloud; and

accessing the monitoring data as the metadata while the virtual machine is suspended and stored in the image software library and enabling automated population of monitoring data for cloned virtual machine images.

2. The computer implemented method of claim 1 , wherein the monitoring data is first monitoring data, the method further comprising:

restarting, by the processor unit, the virtual machine; and

monitoring, by the processor unit, after a restart of the virtual machine, resource usage of the virtual machine to form second monitoring data, wherein the monitoring is performed externally from the virtual machine by the hypervisor.

3. The computer implemented method of claim 2 , the method further comprising:

appending, by the processor unit, the second monitoring data to the first monitoring data as additional metadata, wherein the appending is performed by the hypervisor.

4. The computer implemented method of claim 3 , wherein the step of monitoring resource usage of the virtual machine to form the first monitoring data is performed within a first cloud environment, and wherein the step of restarting the virtual machine further comprises:

migrating, by the processor unit, the virtual machine and the metadata attached to the virtual machine image to a new cloud environment; and

restarting, by the processor unit, the virtual machine in the new cloud environment.

5. The computer implemented method of claim 4 , wherein monitoring resource usage of the virtual machine to form second monitoring data is performed within a second cloud environment, the method further comprising:

appending, by the processor unit, the second monitoring data generated within the second cloud environment to the first monitoring data generated within the first cloud environment as the additional metadata, wherein the appending is performed by the hypervisor.

6. The computer implemented method of claim 3 , wherein the virtual machine is a first virtual machine, and wherein the step of monitoring resource usage of the virtual machine to form monitoring data further comprises:

monitoring, by the processor unit, resource usage of the first virtual machine to form the second monitoring data, wherein the monitoring is performed by a monitoring system executing in a second virtual machine, wherein an interface is defined between the first virtual machine and the second virtual machine.

7. The computer implemented method of claim 6 , wherein the step of suspending the first virtual machine further comprises:

receiving, by the processor unit, a call from the image software library of the first virtual machine by the monitoring system;

responsive to receiving the call from the image software library of the first virtual machine by the monitoring system, forwarding, by the processor unit, the first monitoring data from the monitoring system to the image software library; and

appending, by the processor unit, the first monitoring data as the metadata to existing metadata associated with the first virtual machine as the additional metadata, wherein the appending is performed by the hypervisor.

8. The computer implemented method of claim 6 , wherein the step of restarting the first virtual machine further comprises:

receiving, by the processor unit, a call from the image software library of the first virtual machine by the monitoring system, wherein the call from the image software library of the first virtual machine instructs the monitoring system to begin collecting the second monitoring data.

9. The computer implemented method of claim 6 , wherein the step of monitoring resource usage of the virtual machine to form monitoring data further comprises:

monitoring, by the processor unit, resource usage of the virtual machine to form the second monitoring data, wherein the monitoring is performed by the hypervisor, and wherein the hypervisor and a monitoring system operate independently.

10. The computer implemented method of claim 7 , wherein the step of suspending the first virtual machine further comprises:

suspending, by the processor unit, the first virtual machine by the hypervisor; and

appending, by the processor unit, the first monitoring data as the metadata to the existing metadata associated with the first virtual machine, as the additional metadata, and wherein the appending is performed by the hypervisor.

11. The computer implemented method of claim 10 further comprising:

receiving, by the processor unit, a set of monitoring requirements for the first virtual machine, wherein the set of monitoring requirements is received by the hypervisor;

monitoring, by the processor unit, the resource usage of the first virtual machine according to the set of monitoring requirements for the first virtual machine to form the first monitoring data; and

appending, by the processor unit, the first monitoring data as the metadata to the existing metadata associated with the first virtual machine, as the additional metadata, and wherein the appending is performed by the hypervisor.

Continuity (2)
Continuation 13606577 · Sep 7, 2012
Related Publication 20140075013A1 · Mar 13, 2014