Unified Open Source Hardware Raid Management Tools and Kernel API+Framework

Latest response

Unified Open Source Hardware Raid Management Tools and Kernel Management Framework
--

There is no unified standard tools and corresponding kernel framework for hardware raid card management in Linux.

Hardware raid cards are configured either in the bios or with vendor provided tools. Monitoring of the card status is
left up to vendor provided tools and sometimes system log messages. Other advanced functions are often not available to be manipulated from within the linux OS (for example, configuring raid arrays, flashing disks, expanding raid sets).

Ideally, linux should have a standard tool set and corresponding kernel frameworks to configure and perform functions on hardware raid cards, regardless of the model or vendor (although limited by the cards actual functionality).

An excellent example of an existing vendor neutral configuration tool and framework is the ethernet interface tools.

ifconfig, iwconfig, ethtool (etc) allow a user to configure network cards and their various settings in a vendor neutral way.
For example, forcing the duplex or speed of a nic is always performed with ethtool irrespective of the chipset or manufacturer. Similarly, the essid and encryption settings of a wireless nic are configured with iwconfig, regardless if the card is a usb, onboard or pci card, regardless who manufactures it and whos logo is stamped on the side.

OpenBSD already has implemented this concept since 2005 in their 'bio' tools and framework[1]

I really want to see a tool set in the same vein as ifconfig (etc), but for hardware raid cards.

This tool set and kernel framework should facilitate at least these most basic functions (some lifted from the openbsd goals)

* list arrays and component disks
* create and destroy arrays
* grow and convert arrays (if supported by the card)
* to be able to upgrade newly inserted drives to Hot Swap status
* provide notification when something is wrong in a standard way
* facilitate automatic Hot Swap allocation on volume degrade
* allow a user to blink and unblink drives (to find them physically)
* to shut off the damn beeper

Particularly, the kernel should make syslog messages in a standard way and a user space daemon should be able to send snmp traps and or email alarms in response to array or disk events.

 

An in kernel framework will also provide a reduced entry cost for vendors to create drivers for their hardware, and corresponding user space tools will eliminate the need for card specific management tools.

This request is not trivial, but addresses a serious deficit in the linux operating system. Such a framework would allow
hardware vendors to spend more time writing quality drivers and less time writing tools. Such a tool set would allow
administrators to care less about a servers hardware configuration and more about the servers operational performance.

[1] http://kerneltrap.org/node/5649

Responses