Free IPMI Library for Java
Verax IPMI is an asynchronous, highly scalable Java library implementing IPMI (Intelligent Platform Management Interface) protocol 2.0 over UDP in accordance with the v2.0, revision 1.0 standard. The IPMI interface has been adopted as a SNMP alternative for hardware management by many vendors.
Version: 2.0.0 | Size: 2.0 MB
Released on: 2017-20-06 | Changelog
Features
- UDP session management: connect, disconnect, keep-alive, sliding window for messages and message sequence numbers
- Encoders and decoders for: event log, sensor values and hardware information (FRU – Field Replaceable Unit)
- Extensibility with additional, user-defined encoders
- Timeout and retry handling for UDP IPMI messages
- Support for unlimited concurrent sessions
- IPMP standard-required, encryption algorithms for authentication (RAKP-HMAC-SHA1), confidentiality (AES-CBC-128) and integrity (HMAC-SHA1-96). Additional, user-defined algorithms can be plugged in
- JVM Thread Management: incoming messages are handled in a separate JVM Thread for each connection
- Supported for LAN – RMCP+ interfaces
- Unlimited IPMI message throughput
- Unlimited number of maximum managed CPUs per IPMI instance
IMPI 1.5 limited support
The library supports encoders/decoders for IMPI version 1.5 messages, however session management is provided only for version 2.0.
Implementation
- Efficient, fully asynchronous, stage machine based API
- Synchronous API support
- Native Java 1.6 implementation – no additional native libraries or drivers required
- JProfiler tested for memory leaks & performance
Documentation
JavaDoc documentation and examples are provided within the library .zip file available for downloads
IPMI monitoring templates |
---|
Temperature |
Voltage |
Current |
Fan |
Physical Security (Chassis Intrusion) |
Platform Security Violation Attempt |
Processor |
Power supply |
Power unit |
Cooling device |
Memory |
Disk Drive Bay |
POST Memory Resize |
System Firmware Progress |
Event Logging Disabled |
Watchdog 1 |
System Event |
Critical Interrupt |
Button / Switch |
Module / Board |
Microcontroller / Coprocessor |
Add-in Card |
Chassis |
Chip set |
Other FRU |
Cable / Interconnect |
Terminator |
System Boot / Restart Initiated |
Boot Error |
OS Boot |
OS Stop / Shutdown |
Slot / Connector |
System ACPI Power State |
Watchdog 2 |
Platform Alert |
Entity Presence |
Monitor ASIC / IC |
LAN |
Management subsystem health |
Battery |
Session Audit |
Version Change |
FRU State |
The following IPMI commands are supported by the library (additional, user-defined commands can be plugged-in):
IPMI chassis commands |
Chassis Control |
Get Chassis Status |
IPMI FRU (Field Replaceable Unit) commands |
Get FRU inventory area info |
Read FRU data |
IPMI SDR (Sensor Data Record) commands |
Get SDR repository info |
Get SDR |
Get sensor reading |
Reserve SDR repository |
IPMI SEL (System Event Log) commands |
Get SEL info |
Get SEL entry |
Reserve SEL |
IPMI session commands |
Get channel cipher suites |
Get channel authentication capabilities |
Open session |
RAKP1-4 |
Close session |
License
The software is provided “as is” with no warranty and no support under the GPL v3 license. For a commercial, non-GPL license and support please contact sales at veraxsystems.com.