Child pages
  • Appendix E - Drive Identification API
Skip to end of metadata
Go to start of metadata


You can create a customized drive light plug-in to identify storage volumes in the Admin Console. Netmail Store supports a drive identification function that flashes an LED light next to a volume you select in the Admin Console. When the Identify function is enabled, Netmail Store will continuously read blocks from the selected drive to force I/O activity and flash the drive light.

Integrators or hardware vendors with knowledge of manufacturer-specific methods for flashing drive light can substitute an alternative method using the plug-in drive identification API.

Implementation

The Identify function is implemented as a Linux shell script daemon. The daemon monitors a set of control files generated by Netmail Store that tell the daemon when to turn a drive light on or off. Netmail Store turns the drive light on by creating a control file with its name matching the device name. To turn off the drive light, Netmail Store removes the control file.

The default Identify script is provided in the Netmail Store distribution (caringo/samples/genericDrivePlugin.sh) and can be modified or replaced. The resulting custom script can be downloaded to Netmail Store (see volPluginURL below).

For most applications, the customization steps require you to modify the default script to provide an alternate implementation and then configuring Netmail Store to download the custom script.

The functions that typically require modification in the default script are:

  • identifyOn(). Turns the identification light on.
  • identifyOff(). Turns the identification light off.

Creating a Drive Light Plugin

To create a new drive light script:

1. Open your Netmail Store software distribution and navigate to the caringo/samples directory.

2. In the directory, copy the genericDrivePlugin.sh script to a new directory.

3. Rename the script with a unique name that does not contain any periods or special characters..

4. Open the script and modify the identifyOn() and identifyOff() functions as required to implement an alternate drive light identification mechanism.

5. Archive (tar) and compress (gzip) the script and any other required custom files.

6. Deploy the script.

a. Place the .tar file on an HTTP server or Netmail Store USB drive.

b. Update the volPluginURL configuration parameter to point to the location of the .tar file.

When you customize the plug-in, the following additional functions may be helpful:

  • _monitorAndInitiate(). Polls for a drive status file and initiates identification by spawning _identifyOn().
  • _identifyOn(). Spawned as a process when identification is turned on by Netmail Store for a volume (for example, one process per volume). It calls the _identifyOn() function then waits for identify to get turned back off by Netmail Store so that it can call the _identifyOff() function.
  • No labels