Cluster Shared Volumes
First Claim
1. In a server cluster environment, a system comprising, a plurality of nodes, and a storage device coupled to the plurality of nodes, the storage device including a volume mounted on one of the nodes, and each other node including a redirector that provides shared access to the volume from that node.
2 Assignments
0 Petitions
Accused Products
Abstract
Described is a technology by which a storage volume is shared by cluster nodes of a server cluster. In one implementation, each node includes a redirector that provides shared access to the volume from that node. The redirector routes file system metadata requests from applications and the like through a first (e.g., SMB) communications path to the owning node, and routes file system read and write data to the storage device through a second, high-speed communications path such as direct direct block level I/O. An owning node maintains ownership of the storage device through a persistent reservation mechanism that writes a key to a registration table associated with the storage device. Non-owning nodes write a shared key. The owning node validates the shared keys against cluster membership data, and preempts (e.g., removes) any key deemed not valid. Security mechanisms for controlling access are also described.
-
Citations
20 Claims
- 1. In a server cluster environment, a system comprising, a plurality of nodes, and a storage device coupled to the plurality of nodes, the storage device including a volume mounted on one of the nodes, and each other node including a redirector that provides shared access to the volume from that node.
-
11. In a computing environment, a method comprising,
receiving an I/O request at a first node of a cluster directed towards a volume that is mounted on a second node of the cluster; - and
processing the I/O request, including determining whether the I/O request may be handled by direct I/O to the volume, and if so, by redirecting the I/O request via direct I/O to the volume, and if not, by redirecting the I/O request over a network protocol to the second node for handling the I/O request. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
- and
- 19. One or more computer-readable media having computer-executable instructions, which when executed perform steps, comprising, persisting ownership of a storage device in a cluster having a cluster shared volume corresponding to that storage device, including writing a owner key into a data structure associated with the shared storage device, evaluated shared keys in the data structure against cluster membership data, and preempting any key that corresponds to a cluster node that is not identified as a cluster member via the cluster membership data.
Specification