Automated deployment and configuration of applications in an autonomically controlled distributed computing system
First Claim
1. A distributed computing system comprising:
- a control node comprising at least one processor configured to provide autonomic control over a plurality of application nodes;
wherein the control node comprises;
an automation subsystem configured to control execution of instances of the software applications to the application nodes;
a set of application image objects associated with a set of images of software applications, wherein each of the application image objects executes a set of functions to control deployment of one of the images in the set of images of software applications, and wherein an application programming interface common to each of the application image objects defines the set of functions; and
an application governor configured to deploy an image of the set of images of software applications to a first application node of the plurality of application nodes at least in part by invoking one or more of the functions of one of the application image objects that controls deployment of 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; and
the one or more of the functions invoked by the application governor comprises at least one function configured to modify at least one configuration parameter associated with the first application node.
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. The control node includes an automation subsystem having one or more rules 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 rules 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.
47 Citations
21 Claims
-
1. A distributed computing system comprising:
-
a control node comprising at least one processor configured to provide autonomic control over a plurality of application nodes; wherein the control node comprises; an automation subsystem configured to control execution of instances of the software applications to the application nodes; a set of application image objects associated with a set of images of software applications, wherein each of the application image objects executes a set of functions to control deployment of one of the images in the set of images of software applications, and wherein an application programming interface common to each of the application image objects defines the set of functions; and an application governor configured to deploy an image of the set of images of software applications to a first application node of the plurality of application nodes at least in part by invoking one or more of the functions of one of the application image objects that controls deployment of 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; and the one or more of the functions invoked by the application governor comprises at least one function configured to modify at least one configuration parameter associated with the first application node. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. 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 rules 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 a set of images of software applications, wherein each of the application image objects executes a set of functions to control deployment of one of the images in the set of images of software applications, and wherein an application programming interface common to each of the application image objects defines the set of functions; and directing, in accordance with the determined operations, an application governor to deploy an image of the set of images of software applications to a first application node ene of the plurality of application nodes at least in part by invoking one or more of the functions of one of the application image objects that controls deployment of the software application application, the one or more functions comprising at least one function configured to modify at least one configuration parameter associated with the application node. - View Dependent Claims (16, 17, 18, 19, 20)
-
-
21. A non-transitory 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 rules 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 a set of images of software applications, wherein each of the application image objects executes a set of functions to control deployment of one of the images in the set of images of software applications, and wherein an application programming interface common to each of the application image objects defines the set of functions; and direct, in accordance with the determined operations, an application governor to deploy an image of the set of images of software applications to a first application node of the plurality of application nodes at least in part by invoking one or more of the functions of one of the application image objects that controls deployment of the software application, the one or more functions comprising at least one function configured to modify at least one configuration parameter associated with the application node.
-
Specification