Chapter 26. External Array Management (libStorageMgmt)
26.1. Introduction to libStorageMgmt
libStorageMgmtlibrary is a storage array independent Application Programming Interface (API). It provides a stable and consistent API that allows developers the ability to programmatically manage different storage arrays and leverage the hardware accelerated features provided.
libStorageMgmtlibrary allows operations such as:
- List storage pools, volumes, access groups, or file systems.
- Create and delete volumes, access groups, file systems, or NFS exports.
- Grant and remove access to volumes, access groups, or initiators.
- Replicate volumes with snapshots, clones, and copies.
- Create and delete access groups and edit members of a group.
- A stable C and Python API for client application and plug-in developers.
- A command-line interface that utilizes the library (
- A daemon that executes the plug-in (
- A simulator plug-in that allows the testing of client applications (
- Plug-in architecture for interfacing with arrays.
libStorageMgmtlibrary in Red Hat Enterprise Linux 7 adds a default udev rule to handle the REPORTED LUNS DATA HAS CHANGED unit attention.
/lib/udev/rules.d/90-scsi-ua.rulescontains example rules to enumerate other events that the kernel can generate.
libStorageMgmtlibrary uses a plug-in architecture to accommodate differences in storage arrays. For more information on
libStorageMgmtplug-ins and how to write them, refer to the Red Hat Developer Guide.