SMI-S File Storage Profile
This profile is fully implemented. See the next chapter for its usage and
mapping to LMI_ classes.
SMI-S Filesystem Profile
OpenLMI-Storage implements the Filesystem Profile with these adjustments:
- Local Access is not implemented, we use LMI_MountService to mount local
filesystems:
- SMI-S expects that one filesystem can be mounted only once using Local
Access, which is not true on Linux, we might mount one filesystem multiple
times.
- Mounting a filesystem is totally different operation to
creating/modifying of a filesystem, these two functions should be
separated. Therefore we introduce LMI_MountService to mount various
filesystems.
- Directory Services are not implemented.
Implementation
All mandatory classes and methods are implemented.
Classes
Implemented SMI-S classes:
Not implemented classes:
- `CIM_FileStorage
- SNIA_LocalAccessAvailable
- SNIA_LocalFileSystem
- SNIA_LocallyAccessibleFileSystemSetting
- and all related references.
Methods
There are no methods in this profile.
Warning
Mandatory indications are not implemented.
Blivet does not provide such functionality and it would be very
CPU-intensive to periodically scan for modified filesystems.
SMI-S Filesystem Manipulation Profile
OpenLMI-Storage implements the Filesystem Profile with these adjustments:
- Local Access is not implemented, we use LMI_MountService to mount local
filesystems:
- SMI-S expects that one filesystem can be mounted only once using Local
Access, which is not true on Linux, we might mount one filesystem multiple
times.
- Mounting a filesystem is totally different operation to
creating/modifying of a filesystem, these two functions should be separated.
- Directory Services are not implemented.
Implementation
SNIA-specific classes and methods (with SNIA_ prefix) are not implemented to
avoid any copyright problems - SNIA MOF files have a license which does not
allow us to implement it in open source project.
We implement our LMI_ counterparts, inspired by CIM_StorageService and
CIM_StorageSetting. The major difference to CIM_ and
SNIA_FileSystemConfigurationService is that all methods accepts a Setting
argument as reference and not as embedded instance to match the rest of the
methods (mainly in Block Services profile).
Classes
Implemented SMI-S classes:
Not implemented classes:
- SNIA_FileSystemCapabilities
- SNIA_FileSystemConfigurationCapabilities
- SNIA_FileSystemConfigurationService
- SNIA_FileSystemSetting
- SNIA_LocalFileSystem
- SNIA_LocalAccessAvailable
- SNIA_LocallyAccessibleFileSystemCapabilities
- SNIA_LocallyAccessibleFileSystemSetting
- and all related references.
Methods
Implemented:
- LMI_CreateSetting
- LMI-CreateFileSystem
- Similar to plain CIM CreateFileSystem, with these modifications:
- Goal parameters is passed as reference and not as embedded
instance, i.e. all LMI_FileSystemSetting
instances reside on server and are created using
LMI_CreateSetting
- Multiple extents can be passed in InExtents parameter. The
method then creates one filesystem on multiple devices. Currently only
btrfs supports this behavior, other filesystems can be created only on
one device.
- DeleteFileSystem
Not implemented:
Warning
Mandatory indications are not implemented.
Blivet does not provide such functionality and it would be very CPU-intensive
to periodically scan for modified filesystems.