The OpenLMI project provides a common infrastructure for the management of Linux systems. Capabilities include configuration, management and monitoring of hardware, operating systems, and system services. OpenLMI includes a set of services that can be accessed both locally and remotely, multiple language bindings, standard APIs, and standard scripting interfaces.
OpenLMI supports both the common Linux system management approach which is built on scripts as well as providing a rich API that can be used by other system management tools. OpenLMI can be used on either physical servers or on virtual machine guests.
Having said that, the primary initial focus of OpenLMI is aimed at bare metal production servers – configuring and managing enterprise hardware, especially storage and networks. OpenLMI is intended to simplify the task of configuring and managing production servers.
Longer term, OpenLMI can provide a wide range of capabilities for monitoring and managing system configuration, system services, and system operations.
OpenLMI is designed to provide a common management interface to multiple versions of Red Hat Enterprise Linux and Fedora. It builds on top of existing tools, providing an abstraction layer that hides much of the complexity of the underlying system from systems administrators.
- Standard interface for system management.
- Configure, manage and monitor bare metal production servers as well as virtual machine guests.
- Configure, manage and monitor local or remote systems.
- Configure, manage and monitor complex storage and networks.
- Call system management functions from C/C++, Python, Java, or CLI.
- Based on open industry standards.
What is OpenLMI?
OpenLMI = Open Linux Management Infrastructure.
OpenLMI consists of a set of system management agents installed on a managed system, a OpenLMI controller which manages these agents and provides an interface to them, and client applications or scripts which call the system management agents through the OpenLMI controller.
OpenLMI is, at its core, an implementation of open industry standards for remote system management. It builds on top of a standards based infrastructure, and provides a set of system agents that execute functions on managed systems. The infrastructure used by OpenLMI already exists in Linux. However, the existing Linux system agents implement monitoring and reporting functions – they do little work, and do not implement the ability to configure or modify a system.
OpenLMI is focused on building system agents that perform these management tasks, with the primary target being bare metal production servers. The initial agents implemented in OpenLMI include storage configuration and network configuration. Later work will address additional elements of system management, with the long term goal of providing a complete systems management infrastructure.
OpenLMI does not, by itself, deliver a complete systems management solution. OpenLMI provides the low-level functions, capabilities and APIs that can be called from scripts or system management consoles. Thus, OpenLMI complements existing management initiatives by providing a low-level interface to server hardware configuration that can be used by these management systems. Interfaces provided by OpenLMI include C/C++, Python, Java, and a CLI. These interfaces are implemented as language bindings to the underlying system agents – this means that all interfaces provide the same full access to all capabilities implemented in each agent. You have exactly the same capabilities in OpenLMI no matter which programming interface you use.