Storage failure processing in a shared storage architecture
AssigneeNetApp, Inc.
InventorsTodd Mills, Suhas Urkude, Kyle Sterling, Atul Goel
Life of this patent
Estimating the term…
Abstract
The disclosed embodiments relate to systems and methods for coordinating management of a shared disk storage between nodes. Particularly, a messaging protocol may be used to communicate notifications regarding each node's perception of the shared storage's state. The nodes may use the messaging protocol to achieve consensus when recovering from a storage device failure. Some embodiments provide for recovery when localized failures, such as failures at an adapter on a node, occur.
Claims20
A computer storage system comprising:
- a first node;
- a second node;
- and
- a shared storage device, wherein
- the storage device includes a disk, the disk comprising a first partition and a second partition, the first partition associated with the first node, the second partition associated with the second node, and wherein
- the first node comprises:
- at least one processor;
- and
- a memory comprising instructions, the instructions executable by the at least one processor to cause the first node to:
- detect a disk error associated with the shared storage device;
- notify the second node that a disk failure procedure has been initiated at the first node;
- notify the second node that a disk failure procedure has been completed at the first node;
- receive notification from the second node that a disk failure procedure has been completed at the second node;
- and
- indicate that the shared storage device may be replaced following receipt of the notification from the second node.
A computer storage system comprising:
- a first interface configured to communicate with a second storage device;
- a second interface configured to communicate with a shared storage device;
- at least one processor;
- and
- a memory comprising instructions, the instructions executable by the at least one processor to cause the computer storage system to:
- detect a disk error associated with the shared storage device;
- notify the second storage device that a disk failure procedure has been initiated at the first storage device;
- notify the second storage device that a disk failure procedure has completed at the first storage device;
- receive notification from the second storage device that a disk failure procedure has completed at the second storage device;
- and
- indicate that the shared storage device may be replaced following receipt of the notification from the second node.
A computer-implemented method executing at a first node in a computer storage system for exchanging error information between the first node and a second node, comprising:
- detecting a disk error associated with a shared storage device;
- notifying the second node that a disk failure procedure has been initiated at the first node;
- notifying the second node that a disk failure procedure has been completed at the first node;
- receiving notification from the second node that a disk failure procedure has completed at the second node;
- and
- indicating that the shared storage device may be replaced following receipt of the notification from the second node.
A computer-implemented method at a first node in a computer storage system for detecting a communication failure between the first node and a storage device, the method comprising:
- receiving a non-persistent fatal input/output error associated with a partition on the storage device;
- and
- determining that a second node has not detected the non-persistent fatal input/output error.
Dependencies are inferred from the claim text.