Performing a provisioning operation associated with a software application on a subset of the nodes on which the software application is to operate
First Claim
1. A computer-implemented method for progressively provisioning a set of nodes in a computing system in which processing is distributed across the set of nodes, the method comprising:
- configuring the computing system by;
identifying, to each of the nodes in the set, which nodes are in the set, andspecifying, to each of the nodes in the set, that the nodes in the set operate as peers in the computing system;
wherein configuring the computing system is performed by one or more processors;
wherein the steps of identifying and specifying include;
performing, on a first subset of the nodes, a provisioning operation associated with a software application,wherein the provisioning operation is one of;
installing the software application,upgrading the software application, orpatching the software application;
wherein the software application is designed such that instances of the software application interoperate with other instances of the software application on a peer-to-peer basis,wherein the first subset is less than the entire set of nodes; and
without rolling back the provisioning operation on the first subset of nodes,performing, on a second subset of the set of nodes, the provisioning operation associated with the software application, wherein the second subset is less than the entire set of nodes and is a different subset of nodes than the first subset of nodes;
wherein, while the provisioning operation associated with the software application is being performed on the first subset of nodes and before the provisioning operation associated with the software application is performed on the second subset of nodes, the second subset of nodes remains online while the first subset of nodes is taken offline for the provisioning operation; and
wherein, after the provisioning operation associated with the software application is performed on the second subset of nodes, instances of the software application that are running on nodes in both the first subset and the second subset are able to interoperate with each other on a peer-to-peer basis.
1 Assignment
0 Petitions
Accused Products
Abstract
An application deployment architecture provides the capability to independently invoke different phases of an operation associated with an application, thereby progressively deploying the application across a network of peer nodes and providing fault tolerance. Therefore, applications are easier to deploy on the network of nodes, the deployment process is less error prone, and remediation of deployment errors is simpler than with prior approaches. Tasks constituent to phases of a deployment process are schedulable rather than completely automated and outside the control of the administrator, and are schedulable on a subset of the nodes rather than only on the entire network of nodes.
-
Citations
20 Claims
-
1. A computer-implemented method for progressively provisioning a set of nodes in a computing system in which processing is distributed across the set of nodes, the method comprising:
-
configuring the computing system by; identifying, to each of the nodes in the set, which nodes are in the set, and specifying, to each of the nodes in the set, that the nodes in the set operate as peers in the computing system; wherein configuring the computing system is performed by one or more processors; wherein the steps of identifying and specifying include; performing, on a first subset of the nodes, a provisioning operation associated with a software application, wherein the provisioning operation is one of; installing the software application, upgrading the software application, or patching the software application; wherein the software application is designed such that instances of the software application interoperate with other instances of the software application on a peer-to-peer basis, wherein the first subset is less than the entire set of nodes; and without rolling back the provisioning operation on the first subset of nodes, performing, on a second subset of the set of nodes, the provisioning operation associated with the software application, wherein the second subset is less than the entire set of nodes and is a different subset of nodes than the first subset of nodes; wherein, while the provisioning operation associated with the software application is being performed on the first subset of nodes and before the provisioning operation associated with the software application is performed on the second subset of nodes, the second subset of nodes remains online while the first subset of nodes is taken offline for the provisioning operation; and wherein, after the provisioning operation associated with the software application is performed on the second subset of nodes, instances of the software application that are running on nodes in both the first subset and the second subset are able to interoperate with each other on a peer-to-peer basis. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A machine-readable storage device storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform:
-
configuring a computing system in which processing is distributed across a set of nodes, wherein the configuring comprises; identifying, to each of the nodes in the set, which nodes are in the set, and specifying, to each of the nodes in the set, that the nodes in the set operate as peers in the computing system; wherein the identifying and specifying include; performing, on a first subset of the nodes, a provisioning operation associated with a software application, wherein the provisioning operation is one of; installing the software application, upgrading the software application, or patching the software application; wherein the software application is designed such that instances of the software application interoperate with other instances of the software application on a peer-to-peer basis, wherein the first subset is less than the entire set of nodes; and without rolling back the provisioning operation on the first subset of nodes, performing, on a second subset of the set of nodes, the provisioning operation associated with the software application, wherein the second subset is less than the entire set of nodes and is a different subset of nodes than the first subset of nodes; wherein, while the provisioning operation associated with the software application is being performed on the first subset of nodes and before the provisioning operation associated with the software application is performed on the second subset of nodes, the second subset of nodes remains online while the first subset of nodes is taken offline for the provisioning operation; and wherein, after the provisioning operation associated with the software application is performed on the first subset of nodes and before the provisioning operation associated with the software application is performed on the second subset of nodes, instances of the software application that are running on nodes in the first subset of nodes but not the second subset of nodes are able to interoperate with each other on a peer-to-peer basis; and wherein, after the provisioning operation associated with the software application is performed on the second subset of nodes, instances of the software application that are running on nodes in both the first subset and the second subset are able to interoperate with each other on a peer-to-peer basis. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification