Allow for console access from MAAS

Bug #1885347 reported by Stéphane Graber
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MAAS
Invalid
Wishlist
Unassigned

Bug Description

Definitely in the wishlist/ideas category but given a lot of MAAS managed machines have network accessible console through IPMI/AMT/virsh/LXD, it would be very neat if the BMC plugins could be made to connect to the console and have that be forwarded through websocket so clients can attach live from the UI or API.

This sure would save me a bunch of time not having to figure out the right ipmiconsole/virsh/lxc/amt incantation or worse, have to physically go to the machine.

Revision history for this message
Lee Trager (ltrager) wrote :

We've talked about this a little bit in the past and its more complicated than it seems. Data centers can be setup so that machines only have to be able to communicate with a rack controller. So for an end user to connect the traffic would have to go from the BMC to a rack controller, to a region controller, to the user. Ideally console data would be consistently captured and stored in the database so users could connect at any point and be able to scroll back.

It would be great to have this feature we just have to get some dev time to implement it :)

Changed in maas:
importance: Undecided → Wishlist
Revision history for this message
Stéphane Graber (stgraber) wrote :

Yeah, you definitely wouldn't want a direct connection from the end user, instead you'd probably want a websocket connection to the region controller which would then proxy that to the rack controller that would then run the right BMC plugin and get effectively a PTS output to forward.

That's effectively what we do with consoles and command execution in LXD virtual machines where the user hits LXD over websocket, LXD then connects to the agent in the VM also over websocket and finally spawns the command in there and redirect input/output over the websocket link back to the user.

For LXC containers we've implemented an in-memory ring buffer in liblxc which lets us get historical data (mostly so we can have a simple GET API for boot messages) but we've not been able to implement that for VMs too, we'd effectively need to contribute something similar to qemu and so VMs just don't get access to previous data, so far that's not really been a problem though and mostly worked around by allowing users to immediately attach on startup.

Changed in maas:
status: New → Triaged
Revision history for this message
Thorsten Merten (thorsten-merten) wrote :

We created in issue in our internal feature tracker for this. Unfortunately this involves quite some work and we cannot tell when this could be started.

Changed in maas:
status: Triaged → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.