IP Library Granted Patent US 10,152,343
Granted Patent B2
US 10,152,343 · App. 15/117,148 · Granted Dec 11, 2018

Method and apparatus for managing IT infrastructure in cloud environments by migrating pairs of virtual machines

Inventor: Yasutaka Kono (Sunnyvale, CA)
Assignee: HITACHI, LTD.
G06F9/45558G06F9/45533G06F2009/4557G06F2009/45579G06F2009/45591G06F2009/45595
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 10,152,343
App. No.
15/117,148
Granted
Dec 11, 2018
Kind
B2
Abstract

In example implementations, when a management program deploys new virtual machines, the management program may identify candidate virtual machines for replacement, score the possibilities of replacement and relate the new virtual machines to candidate virtual machines if it determines the probability of replacement is high. The management program may also migrate virtual machines and storage volumes used by the virtual machines to other physical servers and storage arrays by related pairs of virtual machines. The management program may also inherit management policies from existing virtual machines being replaced and leverage them to manage new virtual machines, which replace the existing virtual machines.

Claims (46)

1. A management computer coupled to a plurality of servers, which manage a plurality of virtual machines including a first virtual machine, the management computer comprising a processor and memory, wherein:

the memory stores:

application type information indicative of an application type of each of the plurality of virtual machines,

virtual machine performance data indicative of historical performance information of the plurality of virtual machines;

server performance capacity data indicative of available server performance capacity information of the plurality of servers;

and virtual machine topology information indicative of a topology of the plurality of virtual machines that includes information on associations between the plurality of virtual machines, wherein an association is between two virtual machines that share a parent-child relationship; and

the processor identifies one or more candidate virtual machines to replace the first virtual machine from the plurality of virtual machines other than the first virtual machine, wherein each of the one or more candidate virtual machines has an application type that is the same as the first virtual machine, and each is associated with the first virtual machine;

the processor determines a score for each of the one or more candidate virtual machines that is indicative of the probability that the candidate virtual machine was created to replace the first virtual machine, based on at least a comparison of virtual machine performance data of the candidate virtual machine with a performance threshold, wherein a higher score is given to a candidate virtual machine whose virtual machine performance data exceeds the performance threshold;

the processor pairs the first virtual machine with a candidate virtual machine of the one or more candidate virtual machines which has a highest determined score;

wherein the processor, in response to a request to migrate either one of the first virtual machine and the paired candidate virtual machine

determines which one of the first virtual machine and the paired virtual machine has larger historical performance requirements based on the historical virtual machine performance data of the first virtual machine and the historical virtual machine performance data of the paired candidate virtual machine,

identifies a pair of servers from the plurality of servers, each server of the pair of servers having performance capacity to handle the historical performance requirements of whichever one of the first virtual machine or the paired candidate virtual machine that was determined to have the larger historical performance requirements, the identification being made based on the server performance capacity data of each server of the pair of servers, and

causes the first virtual machine and the paired candidate virtual machine to each be migrated to a different server of the pair of servers.

2. The management computer of claim 1 , wherein the first virtual machine comprises

a number (n) of first virtual machines, which may be replaced;

wherein the paired candidate virtual machine comprises a number (m) of paired candidate virtual machines created in response to a deployment request received by the processor; and

wherein the processor is configured to determine the score indicative of the possibility that the number (m) of the paired candidate virtual machines was created for replacing the number (n) of the first virtual machines, based on the number (n) of the first virtual machines and the number (m) of the paired candidate virtual machines.

3. The management computer of claim 1 , wherein the memory stores version data indicative of version information of at least one of an application and an operating system deployed on each of the plurality of virtual machines; and

wherein the processor determines a score indicative of the possibility of the paired candidate virtual machine was created to replace the first virtual machine, based on version data of the first virtual machine and version data of the paired candidate virtual machine.

4. The management computer of claim 1 , wherein the memory stores identification information, which identifies each of the plurality of virtual machines, and threshold data indicative of performance threshold information associated with the identification information of the plurality of virtual machines; and

wherein the processor determines identification information of the first virtual machine based on a request to delete the first virtual machine; determines identification information of the paired candidate virtual machine in response to receiving a request to delete the first virtual machine; identifies threshold data associated with the determined identification information of the first virtual machine;

associates the identified threshold data with the determined identification information of the paired candidate virtual machine;

deletes the first virtual machine based on the received request to delete the first virtual machine.

5. A method comprising:

determining, by a computing device, application type information indicative of an application type of each of a plurality of virtual machines; determining, by the computing device, virtual machine topology information indicative of a topology of the plurality of virtual machines that includes information on associations between the plurality of virtual machines, wherein an association is between two virtual machines that share a parent-child relationship; and

identifying one or more candidate virtual machines to replace a first virtual machine from the plurality of virtual machines other than the first virtual machine, wherein each of the one or more candidate virtual machines has an application type that is the same as the first virtual machine;

determining a score for each of the one or more candidate virtual machines that is indicative of the probability that the candidate virtual machine was created to replace the first virtual machine, based on at least a comparison of virtual machine performance data of the candidate virtual machine with a performance threshold, wherein a higher score is given to a candidate virtual machine whose virtual machine performance data exceeds the performance threshold;

paring the first virtual machine with a candidate virtual machine of the one or more candidate virtual machines, which has a highest determined score

in response to a request to migrate either one of the first virtual machine and the paired candidate virtual machine:

determining, by the computing device, which one of the first virtual machine and the paired candidate virtual machine has larger historical performance requirements based on the historical virtual machine performance data of the first virtual machine and the historical virtual machine performance data of the paired candidate virtual machine,

identifying, by the computing device, a pair of servers from the plurality of servers, each server of the pair of servers having performance capacity to handle the historical performance requirements of whichever one of the first virtual machine or the paired candidate virtual machine that was determined to have the larger historical performance requirements, the identification being made based on the server performance capacity data of each server of the pair of servers, and

causing the first virtual machine and the paired candidate virtual machine to each be migrated to a different server of the pair of servers.

6. The method of claim 5 , wherein the first virtual machine comprises a number (n) of first virtual machines, which may be replaced;

wherein the paired candidate virtual machine comprises a number (m) of paired candidate virtual machines created in response to a deployment request received by the processor; and

further comprising determining, by the computing device, the score indicative of the possibility that the number (m) of the paired candidate virtual machines was created for replacing the number (n) of the first virtual machines, based on the number (n) of the first virtual machines and the number (m) of the paired candidate virtual machines.

7. The method of claim 5 , further comprising determining, by the computing device, the score indicative of the possibility that the paired candidate virtual machine is created to replace the first virtual machine, based on version data of the first virtual machine and version data of the paired candidate virtual machine.

8. A non-transitory computer readable medium, storing instructions for executing a process, the instructions comprising:

determining application type information indicative of an application type of each of a plurality of virtual machines;

determining virtual machine topology information indicative of a topology of the plurality of virtual machines that includes information on associations between the plurality of virtual machines, wherein an association is between two virtual machines that share a parent-child relationship; and

identifying one or more candidate virtual machines to replace a first virtual machine from the plurality of virtual machines other than the first virtual machine, wherein each of the one or more candidate virtual machines has an application type that is the same as the first virtual machine;

determining a score for each of the one or more candidate virtual machines that is indicative of the probability that the candidate virtual machine was created to replace the first virtual machine, based on at least a comparison of virtual machine performance data of the candidate virtual machine with a performance threshold, wherein a higher score is given to a candidate virtual machine whose virtual machine performance data exceeds the performance threshold;

paring the first virtual machine with a candidate virtual machine of the one or more candidate virtual machines, which has a highest determined score

in response to a request to migrate either one of the first virtual machine and the paired candidate virtual machine:

determining which one of the first virtual machine and the paired candidate virtual machine has larger historical performance requirements based on the historical virtual machine performance data of the first virtual machine and the historical virtual machine performance data of the paired candidate virtual machine,

identifying a pair of servers from the plurality of servers, each server of the pair of servers having performance capacity to handle the historical performance requirements of whichever one of the first virtual machine or the paired candidate virtual machine that was determined to have the larger historical performance requirements, the identification being made based on the server performance capacity data of each server of the pair of servers, and

causing the first virtual machine and the paired candidate virtual machine to each be migrated to a different server of the pair of servers.

Assignments (2)
COMPANY SPLIT Recorded Aug 20, 2024
From: HITACHI, LTD.
To: HITACHI VANTARA, LTD.
Reel/Frame 069518/0761 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 5, 2016
From: KONO, YASUTAKA
To: HITACHI, LTD.
Reel/Frame 039358/0712 →
Continuity (1)
Related Publication 20170168866A1 · Jun 15, 2017