An apparatus is disclosed for deterministically performing active-active
failover of redundant servers in response to a failure of a link on which
each server provides a heartbeat to the other server. Each of the servers
is configured to take over the identity of the other server on a common
network in response to detecting a failure of the other server's link
heartbeat. Each server provides a status indicator to a storage
controller indicating whether the other server's link heartbeat stopped.
The storage controller determines the link has failed if both of the
status indicators indicate the other server's heartbeat stopped, and
responsively kills one of the servers. The storage controller also
receives a heartbeat directly from each server. If only one direct
heartbeat stops when the status indicators indicate the link heartbeats
stopped, then the storage controller detects one server has failed and
inactivates the failed server.