[2.2] VNC/SPICE graphical console for debugging purpose on libvirt pod created VMs

Bug #1688066 reported by Nobuto Murata on 2017-05-03
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
MAAS
Medium
Andres Rodriguez
2.2
Medium
Unassigned

Bug Description

VMs created by libvirt "pod" feature do not have any graphical console in libvirt xml definition. It would be nice if graphical console is enabled by default for debugging purpose in addition to serial.

The main purpose in my mind is to debug PXE boot related to some network issues.

Related branches

Vladimir Burlakov (boboba) wrote :

Hi, you can change xml definition at your discretion, just modify 'DOM_TEMPLATE' variable in:
    /usr/lib/python3/dist-packages/provisioningserver/drivers/pod/virsh.py
by adding f.e:
    <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0'/>

and then restart maas services:
    $ sudo systemctl restart maas-regiond.service
    $ sudo systemctl restart maas-rackd.service

i think that's will OK for debugging purpose..

ps:
i'm stuck on the same issue.. so maybe it make sense to add such functionality to web ui?

Peter Matulis (petermatulis) wrote :

I hit this yesterday. So it's by design?

And, yes, I needed graphics because PXE wasn't working. And PXE wasn't working because the guest was put on the NAT network, but I guess that's another issue.

tags: added: docteam
Changed in maas:
importance: Undecided → Low
milestone: none → 2.3.0
status: New → Triaged
importance: Low → Wishlist
tags: added: pod
Changed in maas:
importance: Wishlist → Low
importance: Low → Medium
Andres Rodriguez (andreserl) wrote :

Hi Nobuto,

If you add console=ttyS0 to the kernel command line, it should show the console. Can you try that and see if that works for you?

Nobuto Murata (nobuto) wrote :

Can you create two serials as ttyS0 and ttyS1? When pod and typical track servers are used at the same time, we don't have a control which ttyS0 or ttyS1 should be in the global kennel parameter since hardware vendor/model/configuration dictates that. We cannot put both in the kennel parameter by design. If VM in pod has both, either one gets console output so we can use it for troubleshooting.

Andres Rodriguez (andreserl) wrote :

Nobuto:

MAAS adds 'console' definitions and can be used by passing console=ttyS0 to the kernel command line. See the link above.

http://wiki.libvirt.org/page/Unable_to_connect_to_console_of_a_running_domain

Changed in maas:
assignee: nobody → Andres Rodriguez (andreserl)
status: Triaged → In Progress
Changed in maas:
status: In Progress → Fix Committed
Changed in maas:
milestone: 2.3.0 → 2.3.0alpha3
Changed in maas:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers