Pi-KVM - manage your Neth (or other) server remotely

This really isn’t for the people who (like me) run their Neth servers on a VPS provider, but more for those who run servers on-premise (which I do–just not my main Neth server). I’ve long been a fan of IPMI, which lets you manage hardware remotely, including giving you an IP KVM so that you can have a console from anywhere (and usually includes virtual media, so you can “plug in” an ISO as if it were a real CD/DVD into the real hardware). But there are a few problems with it:

  • It generally only comes on “server” hardware, which tends to be relatively expensive
  • For some vendors (I’m thinking HPE is one, but my memory could be off here), it’s an extra-cost option on lots of their hardware
  • Except for the latest implementations, it’s using Java or other legacy technologies–which just don’t work as smoothly as they once did (and, IME at least, never worked all that smoothly)

To address these, some clever developer came up with Pi-KVM:

It uses a Raspberry Pi to replicate that functionality, and more, on pretty much any PC. You get a remote console via VNC or HTML5, you get storage support, etc. And it looks like it integrates with many physical KVM switches, so you could use one Pi to manage several servers (which will be very handy indeed for me).

6 Likes

Being a monitoring / secondary-managment tool is one of the role’s imagined the ns-arm side project could grow to. Running on real hardware besides the servers while consuming low power (it can run for day’s on a modest ups…).

This takes it a step further though, fun to see !

Here’s a video that gives a pretty good overview, I think:

The issue for me is going to be getting it integrated. I have about a half-dozen servers, all of which use VGA for video rather than HDMI. That means I’m going to need to:

  • Convert VGA to HDMI (easy enough with the right adapter, which are cheap and readily available), and
  • Find a VGA KVM switch that this thing can control.

The latter seems like it could be tricky. Or, at least, to do it without any hardware hacking could be tricky. It looks like the Pi-KVM software has the ability to manipulate the GPIO pins of the Pi directly, so no doubt (with the appropriate supporting hardware, whatever that would be) I could wire it to spoof pressing the buttons on my existing KVM switch–but that’s sounding a lot messier. But a switch that supports hotkey control may work.

Another possibility would be a switch that does both HDMI and VGA, and converts between them–but anything I’m finding like that is much more expensive.

I think that is feasable, the PI-KVM has to emulate a keyboard and mouse anyway… So why would it not be able to control a VGA-KVM switch :thinking:

That was my thought. But this one is intriguing:
https://www.amazon.com/gp/product/B08F7NBPZ9

In addition to hotkeys, it says it also supports RS-232 control.

1 Like

This may work with a simple uart to rs-232 (voltage) level-switch.
(and documentation for the right commands…)

was looking to order some parts to have an look at this,

Still puzzled which USB_C-otg-power splitter you need, @danb35 have figured this out?

Don’t have that one figured out quite yet. It really seems to me like a better way to go would be to just feed the Pi power on its GPIO pins, and then you could use the USB-C like any other USB-C port–but their docs don’t seem to mention that possibility.

I’d be inclined to go with ready-made, but the .us store they recommend is out of stock (as is the one in .ca). I guess I could buy it from the UK (which would be much closer for you than for me):

I’m waiting for the HDMI in board to ship from China anyway, so I don’t think the wait for this would be any worse.

That works like a charm, however be a ware you are bypassing the RPI’s build-in overload- / power-protection circuit this way.

True, after brexit it is just distance… ATM it is likely harder to import from the UK to EU compared to US :cold_sweat:

what is the advantage of this over running your server as a VM with an HyperVisor like Proxmox, Hyper-V or VMWare ?

Hi @JOduMonT, if NS runs on a hypervisor this does you no good managing your nethserver. It can help to manage your hardware Proxmox is installed on.

What Pi-KVM basically does is capture the video-out of the hardware (HDMI port) and emulate an USB keyboard and mouse. This way you can interact with the hardware like you can with a monitor and keyboard attached to it from a distance. (change bios/efi settings as an example)

The project recommends to capture the video with a HDMI to CSI bridge. ( CSI is the camera input a RPI has). For hardware with VGA they recommend: VGA > HDMI > CSI

1 Like

@mark_nl

Hi Mark

Not quite true…

I’m using Proxmox as Hypervisor.

Like with hardware with IPMI, I can remotely turn on and turn off the server.
See the screen from any box supporting a html5 browser.
I can interact with the console - EVEN if NethServer has no working Network!

Additionally, I can reinstall NethServer, change the boot sequence, boot image, EFI or MBR and more…
And all this from remote…

So tell me WHY using a current Hypervisor does NOT do the same thing?

My 2 cents
Andy

PS: Then again, the local GUI console on NethServer is VERY important… :slight_smile:
The NethServer GUI console has NO advantages over a SSH console - NethServer has no GUI on it’s local console. And Proxmox allows access to the console even if Neth has no working network…

Hi @Andy_Wismer,

I’m a bit confused :confused:

with this I refer to PI-KVM so let me rephrase:

If NS runs on a hypervisor PI-KVM does you no good managing your nethserver, you manage your virtual-machines with the web-ui from the hypervisor.
However it can help to manage your server (hardware) Proxmox is installed on.

1 Like

Ok, that’s clear now…
I understood that as PI-KVM alongside Proxmox - to manage NethServer… :slight_smile:

Thx!

And best regards from snow Switzerland in “Flockdown”.
-> Friday/Saturday, they had to close down public Transport in several places, including Zürich.
No Busses, no Streetcars (Trams) - just walking…
A few train lines were operational. The snow tore down the electric lines - and we don’t run diesel in our cities! :slight_smile:
2nd time in Zürich since they started operation a long time ago…

For english speakers:

Snowflake is Schneeflocke in German, so a “Flockdown” is a lockdown due to snow… :slight_smile:

1 Like

My interest in this project is for something much more modest to be frank…
It’s for images for SBC’s who do not have sshd enabled by default or some problem with network / u-boot : do not have to hook it up to a (serial)monitor, and can install / manage them from my laptop. :wink:

1 Like

What if you need to manage the hypervisor? Of course, if it’s easily accessible, and has a screen and keyboard attached, you’re good. But if not…

@mark_nl

A friend of mine works in a similiar area as you, using SBCs and similiar stuff since almost 20 years now…

His “old school” solution:

In his lab he runs a small Proxmox. The server has 2 PCI cards to permit 4 serial interfaces.
These are - you guessed it - to enable “remote” monitoring / working from his Laptop -> Jumphost on Proxmox -> Serial Port Console of SBC…

It’s still working… :slight_smile:

My 2 cents
Andy

@danb35

My Proxmox - almost all 30 - have a full IPMI… (html5 supported!)

And I also have Mesh-Agent installed.

Does one need anything else? :slight_smile:

So your systems are newer than mine–mine all use Java for the virtual console. And that’s getting to be a PITA.

And as a separate issue, my pfSense router doesn’t have IPMI, and I sure could have used that today.

1 Like