Automated deployment and configuration of applications in an autonomically controlled distributed computing system
First Claim
1. A distributed computing system comprising:
- a plurality of application nodes that provide execution environments in which an image of a software application is executable;
a control node to provide autonomic control over the plurality of application nodes; and
a communications network to facilitate communication among the application nodes and the control node, wherein the control node comprises;
an automation subsystem to control execution of instances of the software application to the application nodes;
a set of application image objects associated with images of software applications, wherein each of the application image objects implements a set of methods to control deployment of an image of a software application, and wherein an application programming interface common to each of the application image objects defines the set of methods; and
an application governor to deploy an image of a software application to the application node by invoking one or more of the methods of one of the application image objects associated with the image of the software application, and wherein the application governor deploys the image of the software application in response to instructions from the automation subsystem.
4 Assignments
0 Petitions
Accused Products
Abstract
A distributed computing system conforms to a multi-level, hierarchical organizational model. One or more control nodes provide for the efficient and automated allocation and management of computing functions and resources within the distributed computing system in accordance with the organization model. A user, such as a system administrator, interacts with the control nodes to logically define the hierarchical organization of distributed computing system. The control node includes an automation subsystem having one or more rule engines that provide autonomic control of the application nodes in accordance with a set of one or more rules. A pluggable, application-specific application governor is selected and installed within the control node to provide an application-independent interface through which the rule engines interact to control the deployment, execution and monitoring of the applications within the distributed computing system. The application governor uses a set of application image objects to configure an application on an application node. Each of the application image objects share a common interface and are therefore interchangeable.
-
Citations
20 Claims
-
1. A distributed computing system comprising:
-
a plurality of application nodes that provide execution environments in which an image of a software application is executable;
a control node to provide autonomic control over the plurality of application nodes; and
a communications network to facilitate communication among the application nodes and the control node, wherein the control node comprises;
an automation subsystem to control execution of instances of the software application to the application nodes;
a set of application image objects associated with images of software applications, wherein each of the application image objects implements a set of methods to control deployment of an image of a software application, and wherein an application programming interface common to each of the application image objects defines the set of methods; and
an application governor to deploy an image of a software application to the application node by invoking one or more of the methods of one of the application image objects associated with the image of the software application, and wherein the application governor deploys the image of the software application in response to instructions from the automation subsystem. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A computer-implemented method comprising:
-
receiving status data for a distributed computing system having a plurality of application nodes interconnected via a communications network, wherein the status data represents an actual state of the application nodes, wherein the application nodes provide execution environments in which an image of a software application is executable;
processing the status data with rules in a set of rule engines to determine operations for reducing any difference between an expected state and the actual state of the distributed computing system;
maintaining a set of application image objects associated with images of software applications, wherein each of the application image objects implements a set of methods to control deployment of images of a software application, and wherein an application programming interface common to each of the application image objects defines the set of methods; and
directing, in accordance with the determined operations, an application governor to deploy an image of a software application to one of the application nodes by invoking one or more of the methods of the application image objects associated with the software application. - View Dependent Claims (15, 16, 17, 18, 19)
-
-
20. A computer-readable medium comprising instructions, the instructions causing a programmable processor to:
-
receive status data for a distributed computing system having a plurality of application nodes interconnected via a communications network, wherein the status data represents an actual state of the application nodes, wherein the application nodes provide execution environments in which an instance of a software application is executable;
process the status data with rules in a set of rule engines to determine operations for reducing any difference between an expected state and the actual state of the distributed computing system;
maintain a set of application image objects associated with images software applications, wherein each of the application image objects implements a set of methods to control deployment of images of a software application, and wherein an application programming interface common to each of the application image objects defines the set of methods; and
direct, in accordance with the determined operations, an application governor to deploy an image of a software application to one of the application nodes by invoking one or more of the methods of the application image objects associated with the software application.
-
Specification