Upgrade orchestration of a storage system based on namespace range gaps
Examples described herein provide a computer-implemented method that includes identifying an upgrade to be made to a storage system. The method further includes receiving, at a management device from a plurality of storage devices of the storage system, namespace information for each of the plurality of storage devices, the namespace information being shared among the plurality of storage devices. The method further includes determining, by the management device, whether a namespace gap exists based at least in part on the namespace information for each of the plurality of storage devices. The method further includes determining, by the management device, whether a namespace gap conflict exists with respect to the upgrade. The method further includes, responsive to determining that the namespace gap conflicts with the upgrade, implementing the upgrade while reducing the namespace gap conflict.
1 . A computer-implemented method comprising:
identifying an upgrade to be made to a storage system, wherein the upgrade involves replacing a failed or failing drive of the storage system;
receiving, at a management device from a plurality of storage devices of the storage system, namespace information for each of the plurality of storage devices, the namespace information being shared among the plurality of storage devices;
determining, by the management device, whether a namespace gap exists based at least in part on the namespace information for each of the plurality of storage devices;
determining, by the management device, whether a namespace gap conflict exists with respect to the upgrade, wherein a namespace gap conflict is determined to exist when it is determined that the namespace gap interferes with replacing the failed or failing drive of the storage system; and
responsive to determining that the namespace gap conflicts with the upgrade, implementing the upgrade while reducing the namespace gap conflict.
2 . The computer-implemented method of claim 1 , further comprising storing, by the management device, the namespace information for each of the plurality of storage devices.
3 . The computer-implemented method of claim 2 , wherein the namespace information is stored in a database communicatively coupled to the management device.
4 . The computer-implemented method of claim 1 , wherein determining whether the namespace gap exists comprises looping over each stripe of the plurality of storage devices to identify a gap that results in a vault operating in one of read only, alert, or write only mode.
5 . The computer-implemented method of claim 1 , wherein the namespace gap is determined to exist responsive to determining that a threshold number of memory devices of one of the plurality of storage devices are unavailable.
6 . The computer-implemented method of claim 5 , wherein the threshold number of memory devices is a read threshold.
7 . The computer-implemented method of claim 5 , wherein the threshold number of memory devices is a write threshold.
8 . The computer-implemented method of claim 1 , further comprising:
determining whether implementing the upgrade results in unavailability of the storage system; and
responsive to determining that implementing the upgrade results in unavailability of the storage system, preventing additional upgrades to the storage system.
9 . A computer system comprising:
a processor set;
one or more computer-readable storage media; and
program instructions stored on the one or more computer-readable storage media to cause the processor set to perform operations comprising:
identifying an upgrade to be made to a storage system, wherein the upgrade involves replacing a failed or failing drive of the storage system;
receiving, at a management device from a plurality of storage devices of the storage system, namespace information for each of the plurality of storage devices, the namespace information being shared among the plurality of storage devices;
determining, by the management device, whether a namespace gap exists based at least in part on the namespace information for each of the plurality of storage devices;
determining, by the management device, whether a namespace gap conflict exists with respect to the upgrade, wherein a namespace gap conflict is determined to exist when it is determined that the namespace gap interferes with replacing the failed or failing drive of the storage system; and
responsive to determining that the namespace gap conflicts with the upgrade, implementing the upgrade while reducing the namespace gap conflict.
10 . The computer system of claim 9 , wherein the operations further comprise storing, by the management device, the namespace information for each of the plurality of storage devices.
11 . The computer system of claim 10 , wherein the namespace information is stored in a database communicatively coupled to the management device.
12 . The computer system of claim 9 , wherein determining whether the namespace gap exists comprises looping over each stripe of the plurality of storage devices to identify a gap that results in a vault operating in one of read only, alert, or write only mode.
13 . The computer system of claim 9 , wherein the namespace gap is determined to exist responsive to determining that a threshold number of memory devices of one of the plurality of storage devices are unavailable.
14 . The computer system of claim 13 , wherein the threshold number of memory devices is a read threshold.
15 . The computer system of claim 13 , wherein the threshold number of memory devices is a write threshold.
16 . The computer system of claim 9 , wherein the operations further comprise:
determining whether implementing the upgrade results in unavailability of the storage system; and
responsive to determining that implementing the upgrade results in unavailability of the storage system, preventing additional upgrades to the storage system.
17 . A computer program product comprising:
one or more computer-readable storage media; and
program instructions stored on the one or more computer-readable storage media to perform operations comprising:
identifying an upgrade to be made to a storage system, wherein the upgrade involves replacing a failed or failing drive of the storage system;
receiving, at a management device from a plurality of storage devices of the storage system, namespace information for each of the plurality of storage devices, the namespace information being shared among the plurality of storage devices;
determining, by the management device, whether a namespace gap exists based at least in part on the namespace information for each of the plurality of storage devices;
determining, by the management device, whether a namespace gap conflict exists with respect to the upgrade, wherein a namespace gap conflict is determined to exist when it is determined that the namespace gap interferes with replacing the failed or failing drive of the storage system; and
responsive to determining that the namespace gap conflicts with the upgrade, implementing the upgrade while reducing the namespace gap conflict.
18 . The computer program product of claim 17 , wherein the operations further comprise storing, by the management device, the namespace information for each of the plurality of storage devices.
19 . The computer program product of claim 18 , wherein the namespace information is stored in a database communicatively coupled to the management device.
20 . The computer program product of claim 17 , wherein determining whether the namespace gap exists comprises looping over each stripe of the plurality of storage devices to identify a gap that results in a vault operating in one of read only, alert, or write only mode.