A method and apparatus used in a storage network facilitates the protection of data in, and replacement of, storage devices about to fail before the failure happens. In a network that includes a plurality of sets of storage devices which store respective data sets, a storage device about to fail in one set can be replaced by another storage device from another set of storage devices which is being used to store data having a
lower priority. The method comprises assigning priorities to sets of storage devices in the network which store respective data sets. In addition, the method includes detecting a condition of a first particular storage device in a particular set of storage devices that has a first priority. Conditions which are detected according to various embodiments indicate that the first particular storage device is suffering events indicating that it is likely to fail, or otherwise suffering from reduced performance. The conditions are detected for example, by the
receipt of a
signal from the storage device itself, or by the monitoring of statistics concerning the performance of the storage device. The method further provides for selecting a second particular storage device in a second particular set of storage devices having a second priority, which can be used in place of the first particular storage device. In response to detecting the condition, the
data set stored in the first particular storage device is migrated to the second particular storage device, and the second particular storage devices identified as a member of the first particular set. The first particular storage device can be gracefully removed from the network, while only affecting the performance of the
data access in the
lower priority second particular set of storage devices.