Checking for proper locations of storage device in a storage device array
First Claim
1. A method for determining whether each of a plurality of storage devices of a logical volume of storage devices is positioned at a proper physical location, comprising:
- providing identifier means on each storage device of a logical volume of storage devices, said providing step including providing a device identifier on each of said storage devices, said device identifier being different for each of said storage devices of said logical volume, said providing step also including writing a logical identifier on each of said storage devices of said logical volume, said logical identifier including all of said device identifiers for said storage devices of said logical volume wherein, for each of said storage devices of said logical volume, said device identifier is provided as part of said logical identifier and is also provided different from said logical identifier and each of said device identifiers is written as part of said logical identifier in a predetermined sequence relative to each of the other of said device identifiers;
reading said identifier means using computer means that includes processor means and controller means for each of said storage devices; and
determining using said computer means whether each of said storage devices of said logical volume is properly located in said logical volume using said identifier means, said determining step including utilizing said logical identifier in combination with one of said device identifiers to determine whether one of said storage devices properly belongs in said logical volume and whether said one storage device is properly located physically within said logical volume, said utilizing step including ascertaining, using said computer means, that said one of said device identifiers among all of said device identifiers of said logical identifier is to be selected as part of said determining step while relying on said predetermined sequence of device identifiers in said logical identifier in executing said determining step.
0 Assignments
0 Petitions
Accused Products
Abstract
A determination is made as to whether or not storage devices of a storage array are positioned in their proper physical locations in the array. To make the determination, a device identifier for each of the storage devices is utilized, together with a generated logical identifier. In a preferred embodiment, the device identifier is the serial number for the storage device and the logical identifier includes a combination of all the device identifiers for a particular logical volume of the storage array. Preferably, the logical identifier also includes system status information for use in enhancing fault tolerance. The logical identifier is written or updated upon the occurrence of predetermined events or conditions. Using the device identifiers and the logical identifier, an indication can be provided whenever the proper storage devices are not found in the logical volume whereby corrective action can be taken to avoid improper distribution to or reassembly of data from the logical volume.
68 Citations
36 Claims
-
1. A method for determining whether each of a plurality of storage devices of a logical volume of storage devices is positioned at a proper physical location, comprising:
-
providing identifier means on each storage device of a logical volume of storage devices, said providing step including providing a device identifier on each of said storage devices, said device identifier being different for each of said storage devices of said logical volume, said providing step also including writing a logical identifier on each of said storage devices of said logical volume, said logical identifier including all of said device identifiers for said storage devices of said logical volume wherein, for each of said storage devices of said logical volume, said device identifier is provided as part of said logical identifier and is also provided different from said logical identifier and each of said device identifiers is written as part of said logical identifier in a predetermined sequence relative to each of the other of said device identifiers; reading said identifier means using computer means that includes processor means and controller means for each of said storage devices; and determining using said computer means whether each of said storage devices of said logical volume is properly located in said logical volume using said identifier means, said determining step including utilizing said logical identifier in combination with one of said device identifiers to determine whether one of said storage devices properly belongs in said logical volume and whether said one storage device is properly located physically within said logical volume, said utilizing step including ascertaining, using said computer means, that said one of said device identifiers among all of said device identifiers of said logical identifier is to be selected as part of said determining step while relying on said predetermined sequence of device identifiers in said logical identifier in executing said determining step. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. An apparatus for determining whether each of a plurality of storage devices of a logical volume of storage devices is found at a proper physical location, comprising:
-
first means for storing information including distributed data, said first means including a plurality of storage devices together defining a logical volume with each of said storage devices storing said distributed data, each of said storage devices having a device identifier that is different from each device identifier of each of the other of said storage devices of said logical volume, said information further including logical identifier means stored with each of said storage devices of said logical volume, said logical identifier means including all of said device identifiers for each of said storage devices of said logical volume, wherein each of said storage devices has said device identifier as part of said logical identifier means and also has stored thereon its device identifier different from said logical identifier means and in which said logical identifier means for each of said storage devices of said logical volume is the same and each of said device identifiers of said logical identifier means is provided on each of said storage devices in a predetermined sequence relative to each of the other of said device identifiers; second means for controlling transfer of said distributed data to said storage devices of said logical volume and for reassembling said distributed data received from said storage devices of said logical volume; and third means operatively associated with said second means for determining whether each of said storage devices having said distributed data properly belongs in said logical volume and for determining whether each of said storage devices is at a proper physical location in said logical volume, wherein said third means, for each of said storage devices of said logical volume, ascertains which one of said device identifiers of said logical identifier means is to be selected during said determining and said third means relies on said predetermined sequence of said device identifiers in said logical identifier means during said determining. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method for determining whether each of a plurality of storage devices of a logical volume of storage devices is positioned at a proper physical location, comprising:
-
monitoring, using computer means that includes controller means and processing means, occurrences of predetermined events including; (a) initialization of said storage devices by updating defect maps and allocation of data storage, (b) reconstruction of data for one of said storage devices, (c) a configuration change by storing data on a replacement storage device for one of said storage devices that has failed; ascertaining that data is to be reconstructed as part of a first data reconstruction; writing, after said ascertaining step but before said first data reconstruction is completed, identifier means using said controller means to each storage device of said logical volume of said storage devices, said identifier means including status information comprising status related to each of said predetermined events including first status related to said first data reconstruction, said first status being identified by a first bit configuration indicative of the occurrence of said first data reconstruction, said identifier means being written to one of said storage devices of said logical volume being the same as said identifier means that is written to each of the other of said storage devices of said logical volume; beginning execution of said first data reconstruction using said computer means; powering on all of said storage devices of said logical volume after disruption of power thereto in which power was disrupted before said first data reconstruction was completed but after said first data reconstruction was begun; reading said identifier means using said controller means for each of said storage devices after said powering on step; determining, after said reading step, using said processing means that each of said storage devices of said logical volume is properly located in said logical volume using said identifier means; completing execution of said first data reconstruction using said computer means after said determining step; and rewriting said identifier means using said computer means to each said storage device of said logical volume, said identifier means including a second status related to said first data reconstruction after said completing step, said second status being different from said first status and being identified by a second bit configuration indicative of the completion of said first data reconstruction, said identifier means being rewritten to one of said storage devices of said logical volume being the same as said identifier means that is rewritten to each of the other of said storage devices of said logical volume. - View Dependent Claims (14, 15, 16)
-
-
17. A method for determining whether each of a plurality of storage devices of a logical volume of storage devices is a proper member of the logical volume of storage devices, comprising:
-
providing a device identifier on each storage device of a logical volume of storage devices, each of the device identifiers on each of said storage devices being different for each of said storage devices of said logical volume; providing a logical identifier on each of said storage devices of said logical volume, said logical identifier being formed all of said device identifiers for said storage devices of said logical volume; reading out said logical identifier from each of said storage devices of said logical volume; and determining whether each of said storage devices of said logical volume is a proper storage device in said logical volume by checking said logical identifier read out in said reading step. - View Dependent Claims (18, 19, 20, 21, 22)
-
-
23. A disk array apparatus having a plurality of storage device of a logical volume, comprising:
-
means for providing a logical identifier on each of said storage devices of said logical volume, said logical identifier being formed of all of a number of device identifiers, each of which is assigned to each of said storage device of said logical volume, each of the device identifiers is different from each other; means for reading out said logical identifier from each of said storage devices of said logical volume; and means for determining whether each of said storage device of said logical volume is a proper storage device in said logical volume by checking said logical identifier read out by said reading means. - View Dependent Claims (24, 25, 26, 27, 28)
-
-
29. A disk array apparatus, comprising:
-
a plurality of storage devices of a logical volume, each of said storage devices having a device identifier, each of the device identifiers on each of said storage devices being different for each of said storage devices of said logical volume and inherent to the respective storage device; means for dividing information into a plurality of data and storing of the plurality of data on to the respective storage device; means for providing a logical identifier on each of said storage devices of said logical volume, said logical identifier being formed of all of a number of device identifiers, each of which is assigned to each of said storage devices said logical volume, each of the device identifiers is different from each other; means for reading out said logical identifier from each of said storage devices of said logical volume; and means for determining whether each of said storage devices of said logical volume is a proper storage device in said logical volume by checking said logical identifier read out by said reading means. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36)
-
Specification