Mechanism for maintaining constant permissions for multiple instances of a device within a cluster
First Claim
1. A distributed computing system comprising:
- a first node, a second node, a storage device and a communication link coupled to said first node and said second node, wherein said first node and said second node access a storage device;
a database for storing data, wherein the data comprises permission data associated with the storage device;
wherein the first node comprises a first instance of the database, and wherein when the first node opens the storage device, the first node creates a first device file for the storage device using the permission data stored within the first instance of the database;
wherein the second node comprises a second instance of the database, and wherein when the second node opens the storage device, the second node creates a second device file for the storage device using the permission data stored within the second instance of the database; and
wherein the database provides coherent data to the first and second nodes in the presence of a node failure such that the first and second nodes receive consistent permission data in the presence of a node failure.
2 Assignments
0 Petitions
Accused Products
Abstract
A cluster implements a virtual disk system that provides each node of the cluster access to each storage device of the cluster. The virtual disk system provides high availability such that a storage device may be accessed and data access requests are reliably completed even in the presence of a failure. To ensure consistent mapping and file permission data among the nodes, data are stored in a highly available cluster database. Because the cluster database provides consistent data to the nodes even in the presence of a failure, each node will have consistent mapping and file permission data. A cluster transport interface is provided that establishes links between the nodes and manages the links. Messages received by the cluster transports interface are conveyed to the destination node via one or more links. The configuration of a cluster may be modified during operation. Prior to modifying the configuration, a reconfiguration procedure suspends data access requests and waits for pending data access requests to complete. The reconfiguration is performed and the mapping is modified to reflect the new configuration. The node then updates the internal representation of the mapping and resumes issuing data access requests.
-
Citations
21 Claims
-
1. A distributed computing system comprising:
-
a first node, a second node, a storage device and a communication link coupled to said first node and said second node, wherein said first node and said second node access a storage device;
a database for storing data, wherein the data comprises permission data associated with the storage device;
wherein the first node comprises a first instance of the database, and wherein when the first node opens the storage device, the first node creates a first device file for the storage device using the permission data stored within the first instance of the database;
wherein the second node comprises a second instance of the database, and wherein when the second node opens the storage device, the second node creates a second device file for the storage device using the permission data stored within the second instance of the database; and
wherein the database provides coherent data to the first and second nodes in the presence of a node failure such that the first and second nodes receive consistent permission data in the presence of a node failure. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of maintaining consistent permission data among a plurality of nodes in a distributed computing system that includes a storage device, said method comprising:
-
storing said permission data to a database, wherein each node includes an instance of the database;
a first of said plurality of nodes opening a storage device and accessing the instance of the database within the first node to obtain said permission data for said storage device;
a second of said plurality of nodes opening said storage device and accessing the instance of the database within the second node to obtain said permission data for said storage device; and
wherein the database provides coherent data to each node in the presence of a failure such that said first node and said second node obtain consistent permission data in the presence of a failure. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A computer-readable storage medium comprising program instructions for maintaining consistent permission data among a plurality of nodes in a distributed computing system, wherein said program instructions execute on said plurality of nodes of said distributed computing system and said program instructions are operable to implement the steps of:
-
storing said permission data to a coherent database, wherein each node includes an instance of the database;
a first of said plurality of nodes opening a storage device and accessing the instance of the database within the first node to obtain said permission data for said storage device;
a second of said plurality of nodes opening said storage device and accessing the instance of the database within the second node to obtain said permission data for said storage device; and
wherein the database provides coherent data to each node in the presence of a failure such that said first node and said second node obtain consistent permission data in the presence of a failure. - View Dependent Claims (17, 18, 19, 20, 21)
-
Specification