An apparatus for deterministically performing active-active failover of redundant servers in response to a failure of a link coupling the servers on which each server provides a heartbeat to the other server, wherein 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 heartbeat on the link, the apparatus comprising:na status indicator, provided by each of the servers to indicate whether the other server's heartbeat has failed; anda storage controller, coupled to receive each of said status indicators from the servers, wherein said storage controller determines the link has failed if each of said status indicators indicates the other server's heartbeat has failed, wherein said storage controller inactivates one of the servers in response to determining the link has failed.
›2.↳ 1The apparatus of claim 1, wherein said storage controller inactivates said one of the servers in response to each of said status indicators indicating…d2
The apparatus of claim 1, wherein said storage controller inactivates said one of the servers in response to each of said status indicators indicating the other server's heartbeat has failed, prior to a non-inactivated one of the servers taking over the identity of said inactivated server.
›3.↳ 1The apparatus of claim 1, further comprising:na second status indicator, provided by said storage controller to each of the servers, for indicating wh…d2
The apparatus of claim 1, further comprising:na second status indicator, provided by said storage controller to each of the servers, for indicating whether said storage controller has inactivated one of the servers, wherein a non-inactivated one of the servers waits to take over the identity of the other server on the network until said second status indicator indicates said storage controller has inactivated one of the servers.
›4.↳ 1The apparatus of claim 1, wherein a non-inactivated one of the servers waits to take over the identity of the other server on the network until a pred…d2
The apparatus of claim 1, wherein a non-inactivated one of the servers waits to take over the identity of the other server on the network until a predetermined time period has expired after said non-inactivated server detects the failure of the other server's heartbeat on the link.
›5.↳ 1The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises preventing said one of the servers from participat…d2
The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises preventing said one of the servers from participating on the network.
›6.↳ 1The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises preventing said one of the servers from responding…d2
The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises preventing said one of the servers from responding to packets on the network.
›7.↳ 1The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises preventing said one of the servers from transmitti…d2
The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises preventing said one of the servers from transmitting packets on the network.
›8.↳ 1The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises resetting said one of the servers.d2
The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises resetting said one of the servers.
›9.↳ 1The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises resetting an I/O port of said one of the servers f…d2
The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises resetting an I/O port of said one of the servers for communicating on the network.
›10.↳ 1The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises causing power to be removed from said one of the s…d2
The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises causing power to be removed from said one of the servers.
›11.↳ 1The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises inactivating said one of the servers independent o…d2
The apparatus of claim 1, wherein said storage controller inactivating one of the servers comprises inactivating said one of the servers independent of an operational state of said one of the servers.
›12.↳ 1The apparatus of claim 1, further comprising:na second status indicator, provided by each of the servers to said storage controller, for indicating a …d2
The apparatus of claim 1, further comprising:na second status indicator, provided by each of the servers to said storage controller, for indicating a health of the server providing said second status indicator, wherein if said second status indicators indicate one of the servers is less healthy than the other server, said storage controller inactivates said less healthy one of the servers in response determining the link has failed.
›13.↳ 1The apparatus of claim 1, further comprising:na second status indicator, provided by each of the servers to said storage controller, for indicating wh…d2
The apparatus of claim 1, further comprising:na second status indicator, provided by each of the servers to said storage controller, for indicating whether the server providing said status indicator has failed, wherein if one of said second status indicators indicates the server providing said status indicator has failed, said storage controller inactivates said failed server providing said status indicator.
›14.↳ 1The apparatus of claim 1, further comprising:nan inactivation control, generated by said storage controller to each of the servers, for inactivating t…d2+7
The apparatus of claim 1, further comprising:nan inactivation control, generated by said storage controller to each of the servers, for inactivating the respective server.
›15.↳ 14The apparatus of claim 14, further comprising:na backplane, configured to couplably receive each of the servers and said storage controller, comprisin…d3+6
The apparatus of claim 14, further comprising:na backplane, configured to couplably receive each of the servers and said storage controller, comprising at least a portion of each of said inactivation controls.
›16.↳ 15The apparatus of claim 15, wherein said backplane comprises at least a portion of each of said status indicators.d4
The apparatus of claim 15, wherein said backplane comprises at least a portion of each of said status indicators.
›17.↳ 15The apparatus of claim 15, further comprising:na chassis, for enclosing the servers, said storage controller, and said backplane.d4+4
The apparatus of claim 15, further comprising:na chassis, for enclosing the servers, said storage controller, and said backplane.
›18.↳ 17The apparatus of claim 17, wherein the link is enclosed in said chassis.d5+1
The apparatus of claim 17, wherein the link is enclosed in said chassis.
›19.↳ 18The apparatus of claim 18, wherein said backplane comprises at least a portion of the link.d6
The apparatus of claim 18, wherein said backplane comprises at least a portion of the link.
›20.↳ 17The apparatus of claim 17, wherein the link is external to said chassis.d5
The apparatus of claim 17, wherein the link is external to said chassis.
›21.↳ 17The apparatus of claim 17, wherein said chassis comprises a chassis for mounting in a 19 inch wide rack.d5
The apparatus of claim 17, wherein said chassis comprises a chassis for mounting in a 19 inch wide rack.
›22.↳ 1The apparatus of claim 1, wherein said storage controller and the servers comprise a plurality of hot-pluggable field replaceable units (FRUs).d2
The apparatus of claim 1, wherein said storage controller and the servers comprise a plurality of hot-pluggable field replaceable units (FRUs).
›23.↳ 1The apparatus of claim 1, further comprising:na second storage controller, coupled to receive said status indicator from each of the servers, configur…d2+3
The apparatus of claim 1, further comprising:na second storage controller, coupled to receive said status indicator from each of the servers, configured to determine whether said first storage controller has failed, and if so, to inactivate one of the servers in response to determining from said status indicators that the link has failed.
›24.↳ 23The apparatus of claim 23, wherein said first and second storage controllers and the servers comprise a plurality of hot-pluggable field replaceable u…d3+2
The apparatus of claim 23, wherein said first and second storage controllers and the servers comprise a plurality of hot-pluggable field replaceable units (FRUs).
›25.↳ 24The apparatus of claim 24, wherein any one of said FRUs may be hot-replaced without suffering loss of data availability to the network of a plurality …d4
The apparatus of claim 24, wherein any one of said FRUs may be hot-replaced without suffering loss of data availability to the network of a plurality of storage devices controlled by said first and second storage controllers.
›26.↳ 24The apparatus of claim 24, wherein said plurality of FRUs comprise blade modules.d4
The apparatus of claim 24, wherein said plurality of FRUs comprise blade modules.
›27.↳ 1The apparatus of claim 1, wherein said storage controller comprises a redundant array of inexpensive disks (RAID) controller.d2
The apparatus of claim 1, wherein said storage controller comprises a redundant array of inexpensive disks (RAID) controller.
›28.↳ 1The apparatus of claim 1, wherein the servers are configured to execute storage application software.d2
The apparatus of claim 1, wherein the servers are configured to execute storage application software.