Skip to content

Suggestion to proxy serial console from vm; basic HTML UI #2

@gbraad

Description

@gbraad

I like the idea of this tool, as it allows to easily expose a VM to anyone on a tailnet. However, while the idea of SSH to control the VM state is novel, it is probably a better idea to proxy the actual SSH of the host to UI. Below is a quick mockup of a minimal interface that looks a lot like the one provided by cockpit.

image

For example, the dropdown allows switching between VNC Console and an SSH terminal. Under the menu that popped out is a Expand [] button to allow the desktop/terminal to take over the whole area. The URL vmproxy/#terminal would automagically open an expanded terminal:

image

and similarly for #desktop.

Note: Migrate has no meaning here (copy/paste) from the Cockpit UI. And Console being a placeholder for the vmname.

Also, this would mean the command line could be:

$ vmproxy <vmname> <IP address> <vnc session|:0> [--ssh]

With [--ssh] to allow SSH forwarding or not, and the VNC sessions defaulting to :0 for port 5900.

Note: --ssh should also register the node as it was run with setArgs.runSSH, and therefore allow the Dashboard to allow the javascript terminal.


Actually, in that case it becomes more of a generic machine-proxy tool, as VNC and SSH aren't only for a VM... so what about:

$ machineproxy <name> <IP address> <vnc session|:0> [--ssh] [--vm]

which only registers the Libvirt/virsh interaction when --vm is provided, and otherwise will just act as a proxy for a machine at a given IP address.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions