IP Library › Granted Patent US 9,367,407
Granted Patent B2
US 9,367,407 · App. 14/451,475 · Granted Jun 14, 2016

Optimizing placement plans for host failure in cloud computing environments

Inventors: Pradipta K. Banerjee (Bangalore, IN); Ashish Billore (Bangalore, IN); Sudipta Biswas (Bangalore, IN); Muthu A. Muthiah (Bangalore, IN)
Assignee: International Business Machines Corporation
G06F11/203G06F9/45558G06F9/4856G06F11/004G06F11/301G06F11/3006G06F2009/4557G06F2201/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,367,407
App. No.
14/451,475
Granted
Jun 14, 2016
Kind
B2
Abstract

Embodiments of the present invention provide systems, methods, and computer program products for optimizing a placement plan. In one embodiment, a method is disclosed in which a request for registration with an external advisor is received. A time to live is received from each external advisor and used to determine an overall timeout period value for a placement engine. After receiving a predictive failure alert, internal and external advisors are ranked according to criteria and advice is received from the qualified advisors. A placement plan is generated based on the advice received from the advisors.

Claims (34)

1. A computer program product for optimizing a placement plan, the computer program product comprising:

a computer readable storage medium and program instructions stored on the computer readable storage medium, the program instructions comprising:

program instructions to receive a request for registration from an advisor;

program instructions to determine an initial timeout period value associated with the advisor;

program instructions to determine an overall timeout period value for a placement engine based, at least in part, on the initial timeout period value associated with the advisor and a time to live value received from the advisor;

program instructions to, responsive to receiving a predictive failure alert for a first host in a first pool, qualify the advisor and receive advice from the advisor, wherein the program instructions to qualify the advisor comprise: program instructions to prioritize the advisor based, at least in part, on the initial timeout period value associated with the advisor, a policy type of the advisor, and whether the advisor is an internal or external advisor; and

program instructions to generate a placement plan for migrating a virtual machine from the first host based, at least in part, on the received advice from the advisor.

2. The computer program product of claim 1 , wherein the program instructions to generate a placement plan for migrating a virtual machine from the first host based, at least in part, on the received advice from the advisor comprise:

program instructions to determine whether there is an available host in the first pool to which to migrate the virtual machine;

program instructions to, responsive to determining that there is an available host in the first pool to which to migrate the virtual machine, generate a placement plan that instructs a placement engine to migrate the virtual machine to the available host in the first pool; and

program instructions to, responsive to determining that there is not an available host in the first pool to which to migrate the virtual machine, generate a placement plan that instructs the placement engine to migrate the virtual machine to an available host in a second pool.

3. The computer program product of claim 2 , further comprising:

program instructions to, responsive to migrating the virtual machine to the available host in the second pool, update an optimization goal of the second pool, based on a first optimization goal of the first pool and a second optimization goal of the second pool.

4. The computer program product of claim 1 , further comprising:

program instructions to store advice data, wherein the advice data comprises the received advice from the advisor and the time to live value received from the advisor; and

program instructions to, responsive to identifying advice with an expired time to live value at a predetermined time interval, remove the advice with the expired time to live value at the predetermined time interval.

5. A computer system for optimizing a placement plan, the computer system comprising:

one or more computer processors;

one or more computer readable storage media;

program instructions stored on the one or more computer readable storage media for execution by at least one of the one or more processors, the program instructions comprising:

program instructions to receive a request for registration from an advisor;

program instructions to determine an initial timeout period value associated with the advisor;

program instructions to determine an overall timeout period value for a placement engine based, at least in part, on the initial timeout period value associated with the advisor and a time to live value received from the advisor;

program instructions to, responsive to receiving a predictive failure alert for a first host in a first pool, qualify the advisor and receive advice from the advisor; wherein the program instructions to qualify the advisor comprise: program instructions to prioritize the advisor based, at least in part, on the initial timeout period value associated with the advisor, a policy type of the advisor, and whether the advisor is an internal or external advisor; and

program instructions to generate a placement plan for migrating a virtual machine from the first host based, at least in part, on the received advice from the advisor.

6. The computer system of claim 5 , wherein the program instructions to generate a placement plan for migrating a virtual machine from the first host based, at least in part, on the received advice from the advisor comprise:

program instructions to determine whether there is an available host in the first pool to which to migrate the virtual machine;

program instructions to, responsive to determining that there is an available host in the first pool to which to migrate the virtual machine, generate a placement plan that instructs a placement engine to migrate the virtual machine to the available host in the first pool; and

program instructions to, responsive to determining that there is not an available host in the first pool to which to migrate the virtual machine, generate a placement plan that instructs the placement engine to migrate the virtual machine to an available host in a second pool.

7. The computer system of claim 6 , further comprising:

program instructions to, responsive to migrating the virtual machine to the available host in the second pool, update an optimization goal of the second pool, based on a first optimization goal of the first pool and a second optimization goal of the second pool.

8. The computer system of claim 5 , further comprising:

program instructions to store advice data, wherein the advice data comprises the received advice from the advisor and the time to live value received from the advisor; and

program instructions to, responsive to identifying advice with an expired time to live value at a predetermined time interval, remove the advice with the expired time to live value at the predetermined time interval.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 5, 2014
From: BANERJEE, PRADIPTA K.; BILLORE, ASHISH; BISWAS, SUDIPTA; MUTHIAH, MUTHU A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 033461/0311 →
Continuity (1)
Related Publication 20160041889A1 · Feb 11, 2016