IP Library Granted Patent US 7,293,195
Granted Patent B1
US 7,293,195 · App. 10/767,640 · Granted Nov 6, 2007

System and method for coordinated bringup of a storage appliance in a cluster configuration

Assignee: Network Appliance, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,293,195
App. No.
10/767,640
Granted
Nov 6, 2007
Kind
B1
Abstract

A system and method for coordinated bringup of a storage appliance in a storage appliance cluster. The repaired storage appliance, during its initialization, sets a variety of state values in a predetermined memory location comprising a state data structure, which is detected by a remote direct memory access read operation by the surviving storage appliance. By the use of the RDMA operations, the repaired storage appliance and surviving storage appliance coordinate the bringup and giveback of data servicing functionality.

Claims (73)

1. A method for a coordinated bringup of a repaired storage appliance in a storage appliance cluster, the repaired storage appliance having a disk subsystem, comprising:

asserting a first state in memory of the repaired storage appliance, the first state indicating that the repaired storage appliance awaits release of disk reservations of the disk subsystem by a surviving storage appliance;

releasing the disk reservations in response to detection of the asserted first state by the surviving storage appliance;

initializing the disk subsystem of the repaired storage appliance;

asserting a second state in memory of the repaired storage appliance, the second state indicating that the repaired storage appliance has initialized the disk subsystem; and

performing a giveback operation by the surviving storage appliance in response to detecting the second state.

2. The method of claim 1 further comprising:

completing initialization of the repaired storage appliance; and

processing data access requests by the repaired storage appliance.

3. The method of claim 1 wherein the surviving storage appliance detects the first state by performing a remote direct memory access read operation to the memory.

4. The method of claim 1 wherein the surviving storage appliance detects the second state by performing a remote direct memory access operation of the memory.

5. The method of claim 1 wherein the surviving storage appliance ceases to process data access requests directed to the repaired storage appliance after performing the giveback operation.

6. A first storage appliance for use in a storage system cluster, the first storage appliance comprising:

a storage operating system having a cluster failover layer adapted to perform a coordinated bringup operation in association with a partner storage appliance, wherein the coordinated bringup operation comprises:

(i) asserting a first state in memory of the first storage appliance;

(ii) initializing a disk subsystem of the first storage appliance in response to detecting a release of disk reservations by the partner storage appliance;

(iii) asserting a second state in memory of the first storage appliance;

(iv) processing data access requests directed to the first storage appliance after a giveback operation performed by the partner storage appliance; and

whereby a period of time during which clients of the first storage system are without connectivity is minimized.

7. The storage appliance of claim 6 wherein the cluster failover layer is further adapted to perform routine remote direct memory access read operations to the partner storage appliance to detect a state of the first storage appliance.

8. The first storage appliance of claim 7 wherein the second state comprises an indication that the storage appliance has initialized its disk subsystem.

9. The first storage appliance of claim 7 wherein the first state comprises an indication that the first storage appliance awaits release of disk reservations by the partner storage appliance.

10. A method for a coordinated bringup of a repaired storage appliance in a storage appliance cluster, the repaired storage appliance having a disk subsystem, comprising:

asserting a first state in memory of the repaired storage appliance;

releasing disk reservations in response to detection of the asserted first state by a surviving storage appliance;

initializing the disk subsystem of the repaired storage appliance;

asserting a second state in memory of the repaired storage appliance; and

performing a giveback operation by the surviving storage appliance in response to detecting the second state.

11. The method of claim 10 wherein the surviving storage appliance detects the first state by performing a remote direct memory access read operation to a predetermined memory location.

12. The method of claim 10 wherein the surviving storage appliance detects the second state by performing a remote direct memory access operation of a predetermined memory location.

13. The method of claim 10 wherein the surviving storage appliance ceases to process data access requests directed to the repaired storage appliance after performing the giveback operation.

14. The method of claim 10 wherein the first state comprises an indication that the repaired storage appliance awaits release of disk reservations by the surviving storage appliance.

15. The method of claim 10 wherein the second state comprises an indication that the repaired storage appliance has initialized its disk subsystem.

16. The method of claim 10 wherein the set of disk reservations comprises small computer systems interface reservations.

17. A computer readable medium, including program instructions executing on a storage appliance, for a coordinated bringup of a repaired storage appliance in a storage appliance cluster, the repaired storage appliance having a disk subsystem, the computer readable medium including instructions for performing the steps of:

asserting a first state in memory of the repaired storage appliance, the first state indicating that the repaired storage appliance awaits release of disk reservations by a surviving storage appliance;

releasing disk reservations in response to detection of the asserted first state by a surviving storage appliance;

initializing the disk subsystem of the repaired storage appliance;

asserting a second state in memory of the repaired storage appliance, the second state indicating that the repaired storage appliance has initialized its disk subsystem; and

performing a giveback operation by the surviving storage appliance in response to detecting the second state.

18. The computer readable medium of claim 17 further comprising the steps of:

completing initialization of the repaired storage appliance; and

processing data access requests by the repaired storage appliance.

19. The computer readable medium of claim 17 wherein the surviving storage appliance detects the first state by performing a remote direct memory access read operation to the memory of the repaired storage appliance.

20. The computer readable medium of claim 17 wherein the surviving storage appliance detects the second state by performing a remote direct memory access operation of the memory of the repaired storage appliance.

21. A method for a coordinated bringup of a repaired storage appliance in a storage appliance cluster, comprising:

asserting a first state in memory of the repaired storage appliance, the first state indicating that the repaired storage appliance awaits release, by a surviving storage appliance, of disk reservations for a disk subsystem of the repaired storage appliance;

releasing the disk reservations in response to detection of the asserted first state by the surviving storage appliance;

initializing the disk subsystem of the repaired storage appliance in response to releasing the disk reservations by the surviving storage appliance;

asserting a second state in memory of the repaired storage appliance, the second state indicating that the repaired storage appliance has initialized the disk subsystem; and

performing a giveback operation by the surviving storage appliance in response to detecting the second state.

22. The method of claim 21 , wherein the first state and second state are stored in a state data structure in memory of the repaired storage appliance.

23. The method of claim 22 wherein the surviving storage appliance detects the first state by performing a remote direct memory access read operation to the state data structure.

24. The method of claim 22 wherein the surviving storage appliance detects the second state by performing a remote direct memory access operation to the state data structure.

25. A first storage appliance for use in a storage system cluster, the first storage appliance comprising:

a storage operating system having a cluster failover layer adapted to perform a coordinated bringup operation in association with a partner storage appliance, wherein the coordinated bringup operation comprises:

asserting a first state in memory of the first storage appliance, the first state indicating that the first storage appliance awaits release, by a partner storage appliance, of disk reservations for a disk subsystem of the first storage appliance;

releasing the disk reservations in response to detection of the asserted first state by the partner storage appliance;

initializing the disk subsystem of the first storage appliance in response to releasing the disk reservations by the partner storage appliance;

asserting a second state in memory of the first storage appliance, the second state indicating that the first storage appliance has initialized the disk subsystem; and

performing a giveback operation by the partner storage appliance in response to detecting the second state.

26. The first storage appliance of claim 25 , wherein the first state and second state are stored in a state data structure in memory of the first storage appliance.

27. The first storage appliance of claim 26 wherein the partner storage appliance detects the first state by performing a remote direct memory access read operation to the state data structure.

28. The first storage appliance of claim 26 wherein the partner storage appliance detects the second state by performing a remote direct memory access operation to the state data structure.

29. A computer readable medium, including program instructions executing on a storage appliance, for a coordinated bringup of a repaired storage appliance in a storage appliance cluster, the computer readable medium including instructions for performing the steps of:

asserting a first state in memory of the repaired storage appliance, the first state indicating that the repaired storage appliance awaits release, by a surviving storage appliance, of disk reservations for a disk subsystem of the repaired storage appliance;

releasing the disk reservations in response to detection of the asserted first state by the surviving storage appliance;

initializing the disk subsystem of the repaired storage appliance in response to releasing the disk reservations by the surviving storage appliance;

asserting a second state in memory of the repaired storage appliance, the second state indicating that the repaired storage appliance has initialized the disk subsystem; and

performing a giveback operation by the surviving storage appliance in response to detecting the second state.

30. The computer readable medium of claim 29 , wherein the first state and second state are stored in a state data structure in memory of the repaired storage appliance.

31. The method of claim 30 wherein the surviving storage appliance detects the first state by performing a remote direct memory access read operation to the state data structure.

32. The method of claim 30 wherein the surviving storage appliance detects the second state by performing a remote direct memory access operation to the state data structure.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 7, 2024
From: NETWORK APPLIANCE, INC.
To: NETAPP, INC.
Reel/Frame 067656/0065 →
CHANGE OF NAME Recorded Oct 28, 2010
From: NETWORK APPLIANCE, INC.
To: NETAPP, INC.
Reel/Frame 025204/0305 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 3, 2004
From: WATANABE, STEVEN B.; COATNEY, SUSAN M.; ROWE, ALAN L.; SUN, YE
To: NETWORK APPLIANCE, INC.
Reel/Frame 015648/0219 →