Patent ID: 8639815

Claim:
A data processing system comprising: at least one memory having a set of instructions located therein; and at least one processor in communication with the at least one memory, the at least one processor operable to execute the set of instructions which cause the at least one processor to: prior to failure of a primary host in the computer network: collect data related to each of a plurality of potential primary-secondary host pairs from among a plurality of host devices in the computer network; analyze each of the plurality of potential primary-secondary host pairs in the computer network utilizing a plurality of performance metrics, including bandwidth and distance between the hosts of each primary-secondary host pair of the plurality of potential primary-secondary host pairs, to discover performance and reliability gains achievable for each potential primary-secondary host pair; determine an ideal primary-secondary host pair in the computer network based on the analysis of each of the plurality of potential primary-secondary host pairs, wherein the ideal primary-secondary host pair comprises the primary host and a secondary host paired with the primary host; in response to the determination of the ideal primary-secondary host pair from among the plurality of potential primary-secondary host pairs, mirror a primary host virtual machine of the primary host of the ideal primary-secondary host pair onto the secondary host of the ideal primary-secondary host pair; and select a future secondary host from among the plurality of hosts in the computer network that will become the secondary host of the ideal primary-secondary host pair the event of the failure of the primary host.