IP Library Granted Patent US 9,218,231
Granted Patent B2
US 9,218,231 · App. 14/059,903 · Granted Dec 22, 2015

Diagnosing a problem of a software product running in a cloud environment

Inventors: Jun Hong Li (Beijing, CN); Yong Ni (Beijing, CN); Ai Jie Niu (Beijing, CN); Hai Tao Wang (Beijing, CN); Wen Jun Wang (Beijing, CN)
Assignee: International Business Machines Corporation
G06F11/0709G06F11/079G06F11/0784
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,218,231
App. No.
14/059,903
Granted
Dec 22, 2015
Kind
B2
Abstract

The present invention provides a method for diagnosing a problem of a software product running in a cloud environment and a corresponding apparatus, the method comprising: receiving a problem in the operation of the monitored software product from a diagnosis agent deployed on a node in the cloud environment; capturing the cloud environment including the software product, and deploying the captured cloud environment in a diagnosis cloud, and the step comprising: deploying the image of each node of the cloud environment in the diagnosis cloud; and applying corresponding configuration data for a cluster system deployed in the cloud environment to configure each node in the diagnosis cloud. The method and apparatus of the present invention can diagnose problems of a software product running in a cloud environment, and rebuild the cloud environment to facilitate the diagnosis of the problems.

Claims (32)

1. A method for diagnosing a problem of a software product running in a cloud environment, comprising:

receiving in a diagnosis controller a problem in the operation of the monitored software product from a first diagnosis agent deployed on a first node in the cloud environment;

capturing the cloud environment including the software product, wherein capturing the cloud environment including the software product comprises: capturing a respective image of each of a plurality of nodes of the cloud environment which support the software product using a respective diagnosis agent deployed in each of the plurality of nodes and communicating the respective image to the diagnosis controller, and collecting relevant configuration data for a cluster system deployed in the cloud environment from the respective diagnosis agent deployed on each node of the plurality of nodes and communicating the relevant configuration data to the diagnosis controller;

using the diagnosis controller to deploy the captured cloud environment in a diagnosis cloud separate from the cloud environment, wherein deploying the captured cloud environment in a diagnosis cloud comprises: deploying the image of each node of the plurality of nodes of the cloud environment in a respective corresponding node of the diagnosis cloud, and applying the corresponding configuration data for the cluster system deployed in the cloud environment to configure each node in the diagnosis cloud; and

using the diagnosis cloud to reproduce the problem in the operation of the monitored software product.

2. The method of claim 1 , wherein the relevant configuration data for the cluster system deployed in the cloud environment comprises: node configuration data, cluster database configuration data and node association configuration data.

3. The method of claim 1 , wherein it further comprises:

determining whether to replicate the entire cloud environment of the software product according to the data collected from the nodes and predefined rules of the diagnosis controller of the cloud environment; and

in response to the determination of yes, capturing the entire cloud environment including the software product and deploying the cloud environment in the diagnosis cloud.

4. The method of claim 1 , further comprising:

in response to a node joining the cloud environment, deploying a diagnosis agent on the node.

5. The method of claim 1 , further comprising:

sending diagnosis configuration data from the diagnosis controller to the first diagnosis agent, the diagnosis configuration data including a trigger condition, wherein the first diagnosis agent determines whether a problem in the operation of the software product occurs by determining whether the output of the software product operation matches the trigger condition.

6. The method of claim 5 , wherein the trigger condition includes an exception and/or a trace pattern in the operation of the software product.

7. The method of claim 5 , wherein the diagnosis configuration data further comprises an action corresponding to the trigger condition, and in response to the first diagnosis agent determining that the output of the software product operation matches the trigger condition, executing the action corresponding to the trigger condition.

8. The method of claim 5 , wherein in response to the first diagnosis agent determining that the output of the software product operation matches the trigger condition, the first diagnosis agent communicates with the diagnosis agents on other nodes in the cloud environment to obtain operation conditions of the software product monitored by the diagnosis agents on the other nodes.

9. The computer system server acting as a diagnosis controller of claim 1 , wherein the diagnosis controller program further cause the computer system server to:

determine whether to replicate the entire cloud environment of the software product according to the data collected from the nodes and predefined rules of the diagnosis controller of the cloud environment; and

in response to the determination of yes, capture the entire cloud environment including the software product and deploy the cloud environment in the diagnosis cloud.

10. The computer system server acting as a diagnosis controller of claim 1 , wherein the diagnosis controller program further cause the computer system server to:

send diagnosis configuration data to the first diagnosis agent, the diagnosis configuration data including a trigger condition, wherein the first diagnosis agent determines whether a problem in the operation of the software product occurs by determining whether the output of the software product operation matches the trigger condition.

11. The computer system acting as a diagnosis controller of claim 10 , wherein the trigger condition includes an exception and/or a trace pattern in the operation of the software product.

12. The computer system acting as a diagnosis controller of claim 10 , wherein the diagnosis configuration data further comprises an action corresponding to the trigger condition, and in response to the first diagnosis agent determining that the output of the software product operation matches the trigger condition, the action corresponding to the trigger condition is executed.

13. A computer system server acting as a diagnosis controller for diagnosing a problem of a software product running in a cloud environment, comprising:

a memory;

at least one processing unit for executing instructions storable in said memory;

a diagnosis controller program embodied as instructions storable in the memory and executable on the at least one processing unit, which cause the computer system server acting as a diagnosis controller to:

receive a problem in the operation of the monitored software product from a first diagnosis agent deployed on a first node in the cloud environment;

capture and store a cloud environment including the software product, the cloud environment being captured by capturing a respective image of each of a plurality of nodes of the cloud environment which support the software product using a respective diagnosis agent deployed in each of the plurality of nodes and communicating the respective image to the diagnosis controller, and collecting relevant configuration data for a cluster system deployed in the cloud environment from the respective diagnosis agent deployed on each node of the plurality of nodes and communicating the relevant configuration data to the diagnosis controller;

deploy the captured cloud environment in a diagnosis cloud separate from the cloud environment, wherein deploying the captured cloud environment in a diagnosis cloud comprises: deploying the image of each node of the plurality of nodes of the cloud environment in a respective corresponding node of the diagnosis cloud, and applying the corresponding configuration data for the cluster system deployed in the cloud environment to configure each node in the diagnosis cloud;

wherein the diagnosis cloud is used to reproduce the problem in the operation of the monitored software product.

14. The computer system server acting as a diagnosis controller of claim 13 , wherein the relevant configuration data for the cluster system deployed in the cloud environment comprises: node configuration data, cluster database configuration data and node association configuration data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 22, 2013
From: LI, JUN HONG; NI, YONG; NIU, AI JIE; WANG, HAI TAO; WANG, WEN JUN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 031452/0805 →
Priority Claims (1)
CN 2012 1 0424375 · Oct 30, 2012 · national
Continuity (1)
Related Publication 20140122935A1 · May 1, 2014