Description is a bit laconic
frx-wintermute opened this issue · 4 comments
Hello!
I am trying to understand what one could do with this project, but the description is a bit laconic. "This project implements an IPMI v2.0 remote console in pure Go, to interact with BMCs." does not really say much. I think the README.md should be enhanced.
First of all: is this a library or a program (with associated library)?
Secondly: could this be used to open a graphical console through a LAN (KVM-over-IP) to interact with a server which has IPMI v2.0 BMC? Or does "remote console" mean something else?
Please clarify, thanks for your time!
Hi there, there are far better introductions than anything I can write! For a more verbose introduction, I'd recommend the ipmitool
README, or even the first few chapters of the v2.0 specification. The README as it stands contains the salient details once a baseline of IPMI and Go knowledge has been reached, though PRs are always welcome.
This is primarily a library, however there are some simple example programs under the cmd/
directory, which is standard for a Go project. bmc_exporter is a larger app leveraging this module behind the scenes.
"Remote console" is used as in the specification - essentially any client talking to the BMC, in this context over UDP. You could use the primitives exposed by this library to implement a graphical interface, however it would be far easier to use the one provided by your BMC/motherboard vendor if this is your only aim.
"Remote console" is used as in the specification - essentially any client talking to the BMC, in this context over UDP. You could use the primitives exposed by this library to implement a graphical interface, however it would be far easier to use the one provided by your BMC/motherboard vendor if this is your only aim.
First off, thanks for your kind reply.
The problem with the tools provided by BMC or motherboard vendors is that they are usually proprietary, clumsy, and often require Java or other inconvenient dependencies. I was searching for Free Software tools that could replace those vendor-provided tools. From a preliminary survey, it seems to me that Free Sofware tools such as impitool, freeipmi, openipmi, impiutil can be used to monitor various data (temperatures, voltages, powers, ...) and to issue power on/off/reset commands. Managing these things through command-line tools seems to be definitely more practical than having to click on a GUI like a trained monkey... Many of those free tools even have serial-over-LAN (SOL) console support. But I am having a hard time in finding a Free Software client that can open a KVM-over-IP console... Do you happen to know any such Free Software tool?
I'm not aware of any. From 13.27.3 in the spec, my understanding is KVM over IPMI has to be implemented as a vendor extension to the protocol. Presumably each vendor does this differently, in an undocumented way.
I'm not aware of any. From 13.27.3 in the spec, my understanding is KVM over IPMI has to be implemented as a vendor extension to the protocol. Presumably each vendor does this differently, in an undocumented way.
Too bad that KVM-over-IP is vendor-specific and non-standard... :-(
This could explain why there are so few Free Software implementations (or maybe even none).
I should perhaps try with serial-over-LAN (SOL) consoles, but I don't fully understand what I should configure on the server BMC in order to enable SOL...