OpenHPI (Service Availability)

Last updated
OpenHPI
Developer(s) OpenHPI Project
Initial release31 January 2003;20 years ago (2003-01-31)
Written in C++
Type Computer hardware
License BSD
Website openhpi.org

OpenHPI is an open-source software system providing an abstracted interface to managing computer hardware, typically for chassis and rack based servers. [1] [2] It is production ready implementation of the Hardware Platform Interface specification from Service Availability Forum, complimenting existing hardware management standards. Founded in 2003, OpenHPI is maintained by the OpenHPI Project. [3] [4]

Contents

OpenHPI provides resource modeling, sensor management, control, watchdog, inventory data associated with resources, abstracted system event log, hardware events/alarms, and a managed hot-swap interface. [5] It aims for Service Availability beyond High Availability (HA) expectations. [1] [4]

History

The OpenHPI project was conceived by Carrier Grade Linux hardware experts, [3] and announced on the Linux kernel mailing list on 19 March 2003, by Andrea Brugger. OpenHPI was described as "a universal interface for creating resource system models, such as chassis and rack-based servers, but extendable for other domains such as clustering, virtualization, and simulation". It had modular hardware support implemented using a plugin architecture, the top-level OpenHPI implementation being independent of the underlying hardware. [6] Supporters include IBM, Intel, Samsung, HPE, and others technical equipment manufacturers.

Features

The following features are supported by OpenHPI software: [2]

OpenHPI also provides a set of client programs as examples for typical HPI usage, for testing, or invocation from scripts. The hpi_shell is a command shell for calling HPI functions interactively.

Releases

The following table summarizes the main OpenHPI releases:

Main Releases history
VersionRelease dateNotes
Old version, no longer maintained: 1.0030 June 2004Support for IPMI based servers and blades (via OpenIPMI or IPMIDirect plugins), IBM Blade Center (via SNMP Blade Center plugin), IBM xSeries servers (via SNMP RSA plugin), Linux 2.4 & 2.6 watchdog devices (via watchdog plugin), Linux 2.6 systems (via sysfs plugin), A Dummy Plugin designed for testing and writing HPI applications; Sample commands: hpisensor, hpiinv, hipsel, hpipower/hpireset. Along with the release there is a companion SNMP subagent. SuSE/Fedora/RedHat packages. [7] [8]
Old version, no longer maintained: 2.0.224 February 2005Threading bug fixes. [7]
Old version, no longer maintained: 2.6.031 July 2006Highlights: Hotswap management enhancements; Daemon/Plugin enhancements; Persistence of Domain Alarm Table; Features: Blade Center Telco H support, IPMI ATCA support, Blade Center topology is now ATCA topology friendly, More blade sensors supported, PowerPC support, Unicode text buffer validation added. Extras: PyOpenHPI python module, SNMP sub-agent, HPIView. [7]
Old version, no longer maintained: 2.15.02009Features: Build, Clients, Dynamic Simulator; Bug fixes; Accumulated features: Support for Windows, FreeBSD, IPv6; Improved HPI support. Plugins for oa_soap, HP ProLiant Rack (iLO2), HP BladeSystem c-Class; HPI-B.03.01; Bugfixes; Refactoring. Base libraries for C#/Java/Python. [7] [8]
Older version, yet still maintained: 3.0.023 DecemberFeatures: Documentation; HP c-Class, OpenHPI Daemon. Bug fixes. Accumulated features. [7] [8]
Older version, yet still maintained: 3.6.026 August 2015Stable release. [8]
Current stable version: 3.8.09 March 2018Stable release. Changes to many plugins, build, utils, clients and daemon; Bug fixes. [8]
Legend:
Old version
Older version, still maintained
Latest version
Latest preview version
Future release

See also

Service Availability, Principles and Practice, Textbook Service-Availability-Principles-and-Practice.jpg
Service Availability, Principles and Practice, Textbook

Related Research Articles

<span class="mw-page-title-main">Operating system</span> Software that manages computer hardware resources

An operating system (OS) is system software that manages computer hardware and software resources, and provides common services for computer programs.

<span class="mw-page-title-main">Server (computing)</span> Computer to access a central resource or service on a network

In computing, a server is a piece of computer hardware or software that provides functionality for other programs or devices, called "clients". This architecture is called the client–server model. Servers can provide various functionalities, often called "services", such as sharing data or resources among multiple clients or performing computations for a client. A single server can serve multiple clients, and a single client can use multiple servers. A client process may run on the same device or may connect over a network to a server on a different device. Typical servers are database servers, file servers, mail servers, print servers, web servers, game servers, and application servers.

<span class="mw-page-title-main">Beowulf cluster</span> Type of computing cluster

A Beowulf cluster is a computer cluster of what are normally identical, commodity-grade computers networked into a small local area network with libraries and programs installed which allow processing to be shared among them. The result is a high-performance parallel computing cluster from inexpensive personal computer hardware.

<span class="mw-page-title-main">Windowing system</span> Software that manages separately different parts of display screens

In computing, a windowing system is a software suite that manages separately different parts of display screens. It is a type of graphical user interface (GUI) which implements the WIMP paradigm for a user interface.

The Open Sound System (OSS) is an interface for making and capturing sound in Unix and Unix-like operating systems. It is based on standard Unix devices system calls. The term also sometimes refers to the software in a Unix kernel that provides the OSS interface; it can be thought of as a device driver for sound controller hardware. The goal of OSS is to allow the writing of sound-based applications that are agnostic of the underlying sound hardware.

<span class="mw-page-title-main">MontaVista</span> Software company

MontaVista Software is a company that develops embedded Linux system software, development tools, and related software. Its products are made for other corporations developing embedded systems such as automotive electronics, communications equipment, mobile phones, and other electronic devices and infrastructure.

<span class="mw-page-title-main">UEFI</span> Operating system and firmware specification

Unified Extensible Firmware Interface is a specification that defines the architecture of the platform firmware used for booting the computer hardware and its interface for interaction with the operating system. Examples of firmware that implement the specification are AMI Aptio, Phoenix SecureCore, TianoCore EDK II, InsydeH2O. UEFI replaces the BIOS which was present in the boot ROM of all personal computers that are IBM PC compatible, although it can provide backwards compatibility with the BIOS using CSM booting. Intel developed the original Extensible Firmware Interface (EFI) specification. Some of the EFI's practices and data formats mirror those of Microsoft Windows. In 2005, UEFI deprecated EFI 1.10.

<span class="mw-page-title-main">Blade server</span> Server computer that uses less energy and space than a conventional server

A blade server is a stripped-down server computer with a modular design optimized to minimize the use of physical space and energy. Blade servers have many components removed to save space, minimize power consumption and other considerations, while still having all the functional components to be considered a computer. Unlike a rack-mount server, a blade server fits inside a blade enclosure, which can hold multiple blade servers, providing services such as power, cooling, networking, various interconnects and management. Together, blades and the blade enclosure form a blade system, which may itself be rack-mounted. Different blade providers have differing principles regarding what to include in the blade itself, and in the blade system as a whole.

<span class="mw-page-title-main">NetworkManager</span> Software

NetworkManager is a daemon that sits on top of libudev and other Linux kernel interfaces and provides a high-level interface for the configuration of the network interfaces.

<span class="mw-page-title-main">Logitech Media Server</span>

Logitech Media Server is a streaming audio server supported by Logitech, developed in particular to support their Squeezebox range of digital audio receivers.

<span class="mw-page-title-main">PulseAudio</span> Sound server for Unix-like operating systems

PulseAudio is a network-capable sound server program distributed via the freedesktop.org project. It runs mainly on Linux, including Windows Subsystem for Linux on Microsoft Windows and Termux on Android; various BSD distributions such as FreeBSD, OpenBSD, and macOS; as well as Illumos distributions and the Solaris operating system. It serves as a middleware in between applications and hardware and handles raw PCM audio streams.

<span class="mw-page-title-main">Linux</span> Family of Unix-like operating systems

Linux is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution (distro), which includes the kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses and recommends the name "GNU/Linux" to emphasize the use and importance of GNU software in many distributions, causing some controversy.

Communications servers are open, standards-based computing systems that operate as a carrier-grade common platform for a wide range of communications applications and allow equipment providers to add value at many levels of the system architecture.

<span class="mw-page-title-main">VMware ESXi</span> Enterprise-class, type-1 hypervisor for deploying and serving virtual computers

VMware ESXi is an enterprise-class, type-1 hypervisor developed by VMware for deploying and serving virtual computers. As a type-1 hypervisor, ESXi is not a software application that is installed on an operating system (OS); instead, it includes and integrates vital OS components, such as a kernel.

Ceph is a free and open-source software-defined storage platform that provides object storage, block storage, and file storage built on a common distributed cluster foundation. Ceph provides completely distributed operation without a single point of failure and scalability to the exabyte level, and is freely available. Since version 12 (Luminous), Ceph does not rely on any other conventional filesystem and directly manages HDDs and SSDs with its own storage backend BlueStore and can expose a POSIX filesystem.

The Hardware Platform Interface (HPI) is an open specification that defines an application programming interface (API) for platform management of computer systems. The API supports tasks including reading temperature or voltage sensors built into a processor, configuring hardware registers, accessing system inventory information like model numbers and serial numbers, and performing more complex activities, such as upgrading system firmware or diagnosing system failures.

<span class="mw-page-title-main">Network block device</span> Network storage protocol

On Linux, network block device (NBD) is a network protocol that can be used to forward a block device from one machine to a second machine. As an example, a local machine can access a hard disk drive that is attached to another computer.

<span class="mw-page-title-main">OpenMediaVault</span> NAS operating system

OpenMediaVault (OMV) is a free Linux distribution designed for network-attached storage (NAS). The project's lead developer is Volker Theile, who instituted it in 2009. OMV is based on the Debian operating system, and is licensed through the GNU General Public License v3.

OpenLMI provides a common management infrastructure for Linux systems. Available operations include configuration of various operating system parameters and services, hardware components configuration, and monitoring of system resources. Services provided by OpenLMI can be accessed both locally and remotely, using multiple programming languages and standardized APIs.

<span class="mw-page-title-main">Proxmox Virtual Environment</span> Linux distribution for server virtualization

Proxmox Virtual Environment is a hyper-converged infrastructure open-source software. It is a hosted hypervisor that can run operating systems including Linux and Windows on x64 hardware. It is a Debian-based Linux distribution with a modified Ubuntu LTS kernel and allows deployment and management of virtual machines and containers. Two types of virtualization are supported: container-based with LXC, and full virtualization with KVM. It includes a web-based management interface. There is also a mobile application available for controlling PVE environments.

References

  1. 1 2 "OpenHPI/Wiki". SourceForge. Archived from the original on 2018-06-21. Retrieved 2020-12-28.
  2. 1 2 "OpenHPI". GitHub. Retrieved 2020-12-28.
  3. 1 2 Sean Dauge (2005). "OpenHPI: An Open Source Reference Implementation of the SA Forum Hardware Platform Interface". Service Availability. Lecture Notes in Computer Science. Vol. 3335. Springer, Berlin, Heidelberg. pp. 48–60. doi:10.1007/978-3-540-30225-4_4. ISBN   978-3-540-30225-4.
  4. 1 2 Maria Toeroe; Francis Tam (2012). Service Availability: Principles and Practice. John Wiley & Sons. ISBN   978-1-1199-4167-5.
  5. "OpenHPI". OpenHPI. Archived from the original on 2019-08-19. Retrieved 2020-12-28.
  6. Andrea L. Brugger. ""[ANNOUNCE] OpenHPI – an implementation for SAForum's HPI"". Kernel Traffic. Archived from the original on 2020-09-15. Retrieved 2020-12-28.
  7. 1 2 3 4 5 "OpenHPI CHANGELOGS". Archived from the original on 2018-11-09. Retrieved 29 December 2020.
  8. 1 2 3 4 5 "OpenHPI NEWS". Archived from the original on 2020-01-23. Retrieved 29 December 2020.