Patent ID: 8769132

Claim:
A system for implementing a failover policy in a network, the system comprising: a processor; and memory storing: the failover policy, wherein the failover policy includes a failover script, at least one failover attribute, and a predetermined initial failover domain; and instructions that when executed by the processor: manage a plurality of nodes arranged as one or more clusters; provide a plurality of group and cluster membership services; define a plurality of resource groups, wherein each resource group includes two or more interdependent resources; and execute the failover script in response to detecting a failover event, wherein the execution of the failover script: dynamically transforms the predetermined initial failover domain into a dynamic run-time failover domain upon occurrence of a failover event, wherein the initial failover domain and the dynamic run-time failover domain are respective ordered lists of nodes in the network selected from a plurality of nodes on which a given resource group can be allocated, and wherein the dynamic transformation of the initial failover domain into the dynamic run-time failover domain is based on the contents of the failover script and a plurality of run-time conditions existing at the time of the failover event, modifies the dynamic run-time failover domain for a respective one of the plurality of resource groups based on the at least one failover attribute, selects a target node from the modified run-time failover domain based on the at least one failover attribute, and allocates the given resource to the target node.