Method and system for deploying software to a cluster
First Claim
1. A method for deploying a software application to a plurality of nodes, the method comprising:
- identifying the plurality of nodes in one or more clusters of nodes, the one or more clusters of nodes functioning as a single unit providing failover and load balancing for execution of a software application;
retrieving inventory information for each node of the plurality of nodes, the inventory information providing configuration and state information associated with each node, wherein the state information specifies whether each node is an active node or a passive node in a failover and load balancing cluster, wherein each active node is being used to provide services associated with the application and each passive node is not being used to provide services, each passive node being available to provide services associated with the application if an active node fails or is overburdened;
determining an order of the plurality of nodes for deploying the software application by applying one or more rules associated with deploying the software application and retrieved from a rules engine storing a plurality of rules to the retrieved inventory information, the order identifying a sequence in which the software application is deployed to the plurality of nodes; and
deploying the software application to the plurality of nodes based on the determined order.
9 Assignments
0 Petitions
Accused Products
Abstract
Disclosed are systems and methods relating to the deployment of an application. A plurality of nodes in one or more clusters of nodes may be identified. Inventory information for each of the plurality of nodes may be retrieved. The inventory information may provide configuration and state information associated with each node. For example, the inventory information retrieved from the plurality of nodes may include an internet protocol address or a hostname associated with each the plurality of nodes, and a version of software installed on each of the plurality of nodes. An order for deploying the software application may be determined based on the retrieved inventory information. The order may identify a sequence in which the software application is deployed to at least one of the plurality of nodes. The software application may be deployed to at least one of the plurality of nodes based on the determined order.
39 Citations
20 Claims
-
1. A method for deploying a software application to a plurality of nodes, the method comprising:
-
identifying the plurality of nodes in one or more clusters of nodes, the one or more clusters of nodes functioning as a single unit providing failover and load balancing for execution of a software application; retrieving inventory information for each node of the plurality of nodes, the inventory information providing configuration and state information associated with each node, wherein the state information specifies whether each node is an active node or a passive node in a failover and load balancing cluster, wherein each active node is being used to provide services associated with the application and each passive node is not being used to provide services, each passive node being available to provide services associated with the application if an active node fails or is overburdened; determining an order of the plurality of nodes for deploying the software application by applying one or more rules associated with deploying the software application and retrieved from a rules engine storing a plurality of rules to the retrieved inventory information, the order identifying a sequence in which the software application is deployed to the plurality of nodes; and deploying the software application to the plurality of nodes based on the determined order. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A computer program product comprising computer-readable program code stored in a non-transitory computer-readable medium to be executed by one or more processors when retrieved from a non-transitory computer-readable medium, the program code including instructions to:
-
identify a plurality of nodes in one or more clusters of nodes, the one or more clusters of nodes functioning as a single unit providing failover and load balancing for execution of a software application; retrieve inventory information for each node of the plurality of nodes, the inventory information providing configuration and state information associated with each node, wherein the state information specifies whether each node is an active node or a passive node in a failover and load balancing cluster, wherein each active node is being used to provide services associated with the application and each passive node is not being used to provide services, each passive node being available to provide services associated with the application if an active node fails or is overburdened; determine an order of the plurality of nodes for deploying the software application by applying one or more rules associated with deploying the software application and retrieved from a rules engine storing a plurality of rules to the retrieved inventory information, the order identifying a sequence in which the software application is deployed to the plurality of nodes; and deploy the software application to the plurality of nodes based on the determined order. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A system for deploying a software application to a plurality of nodes comprising:
-
a processor; and one or more stored sequences of instructions which, when executed by the processor, cause the processor to; identify the plurality of nodes in one or more clusters of nodes, the one or more clusters of nodes functioning as a single unit providing failover and load balancing for execution of a software application; retrieve inventory information for each node of the plurality of nodes, the inventory information providing configuration and state information associated with each node, wherein the state information specifies whether each node is an active node or a passive node in a failover and load balancing cluster, wherein each active node is being used to provide services associated with the application and each passive node is not being used to provide services, each passive node being available to provide services associated with the application if an active node fails or is overburdened; determine an order of the plurality of nodes for deploying the software application by applying one or more rules associated with deploying the software application and retrieved from a rules engine storing a plurality of rules to the retrieved inventory information, the order identifying a sequence in which the software application is deployed to the plurality of nodes; and deploy the software application to the plurality of nodes based on the determined order. - View Dependent Claims (18, 19, 20)
-
Specification