Intelligent namespace utilization for storage system configuration
A first namespace is generated on a particular storage device of the plurality of storage devices for storing configuration data for a storage system. The first namespace is accessible by one or more storage controllers of the storage system. A second namespace is generated on the particular storage device for storing other data at the particular storage device. The configuration data is stored in the first namespace and the other data is stored in the second namespace.
1 . A storage system comprising:
a plurality of storage devices; and
one or more storage controllers, operatively coupled to the plurality of storage devices, configured to:
generate a first namespace on a particular storage device of the plurality of storage devices for storing configuration data for the storage system, wherein the first namespace is accessible by the one or more storage controllers;
generate a second namespace on the particular storage device for storing other data at the particular storage device; and
store the configuration data in the first namespace and the other data in the second namespace.
2 . The storage system of claim 1 , wherein the first namespace is accessible by the one or more storage controllers when an operating system of the storage system is inoperable.
3 . The storage system of claim 1 , wherein an interface of the first namespace comprises a key/value store.
4 . The storage system of claim 3 , wherein the key/value store is provided power loss protection (PLP) by one or more PLP components of the storage system.
5 . The storage system of claim 3 , wherein the key/value store is used to perform one or more atomic updates to the storage system.
6 . The storage system of claim 1 , wherein a storage controller of the one or more storage controllers is configured to:
place a reservation on blocks of the particular storage device storing the configuration data, the reservation preventing other storage controllers of the one or more storage controllers from writing or modifying the configuration data.
7 . The storage system of claim 1 , wherein the plurality of storage devices comprises one or more managed flash storage devices.
8 . A method, comprising:
generating, by one or more storage controllers, a first namespace on a particular storage device of a plurality of storage devices for storing configuration data for a storage system, wherein the first namespace is accessible by the one or more storage controllers;
generate a second namespace on the particular storage device for storing other data at the particular storage device; and
store the configuration data in the first namespace and the other data in the second namespace.
9 . The method of claim 8 , wherein the first namespace is accessible by the one or more storage controllers when an operating system of the storage system is inoperable.
10 . The method of claim 8 , wherein an interface of the first namespace comprises a key/value store.
11 . The method of claim 10 , wherein the key/value store is provided power loss protection (PLP) by one or more PLP components of the storage system.
12 . The method of claim 10 , wherein the key/value store is used to perform one or more atomic updates to the storage system.
13 . The method of claim 8 , further comprising:
placing a reservation on blocks of the particular storage device storing the configuration data, the reservation preventing other storage controllers of the one or more storage controllers from writing or modifying the configuration data.
14 . The method of claim 8 , wherein the plurality of storage devices comprises one or more managed flash storage devices.
15 . A non-transitory computer readable storage medium storing instructions which, when executed, cause a processing device of one or more storage controllers to:
generate a first namespace on a particular storage device of a plurality of storage devices for storing configuration data for a storage system, wherein the first namespace is accessible by the one or more storage controllers;
generate a second namespace on the particular storage device for storing other data in the particular storage device; and
store the configuration data in the first namespace and the other data in the second namespace.
16 . The non-transitory computer readable storage medium of claim 15 , wherein the first namespace is accessible by the one or more storage controllers when an operating system of the storage system is inoperable.
17 . The non-transitory computer readable storage medium of claim 15 , wherein an interface of the first namespace comprises a key/value store.
18 . The non-transitory computer readable storage medium of claim 17 , wherein the key/value store is provided power loss protection (PLP) by one or more PLP components of the storage system.
19 . The non-transitory computer readable storage medium of claim 17 , wherein the key/value store is used to perform one or more atomic updates to the storage system.
20 . The non-transitory computer readable storage medium of claim 15 , wherein the processing device is further to:
place a reservation on blocks of the particular storage device storing the configuration data, the reservation preventing other storage controllers of the one or more storage controllers from writing or modifying the configuration data.