I want to give my clients access to their Xen domU consoles using VNC. This works great using vfb device configured as type=vnc.
However I have 2 problems:
* I can't figure out how I can add a vfb device to a running domain without restarting it (I have 100+ domU's I want to enable this on, and want to avoid restarting them all if possible)
* Related, I can't figure out how I can change the VNC password without restarting the domU, as the password is specified in the vfb config.
Is what I am trying to do possible? How?
In case it matters: # xm info host : <my.supersecret.hostname> release : 2.6.18-194.26.1.el5xen version : #1 SMP Tue Nov 9 13:35:30 EST 2010 machine : x86_64 nr_cpus : 4 nr_nodes : 1 sockets_per_node : 1 cores_per_socket : 4 threads_per_core : 1 cpu_mhz : 2394 hw_caps : bfebfbff:28100800:00000000:00000140:0098e3fd:00000000:00000001 total_memory : 24566 free_memory : 8317 node_to_cpu : node0:0-3 xen_major : 3 xen_minor : 1 xen_extra : .2-194.26.1.el5 xen_caps : xen-3.0-x86_64 xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p hvm-3.0-x86_64 xen_pagesize : 4096 platform_params : virt_start=0xffff800000000000 xen_changeset : unavailable cc_compiler : gcc version 4.1.2 20080704 (Red Hat 4.1.2-48) cc_compile_by : mockbuild cc_compile_domain : centos.org cc_compile_date : Tue Nov 9 12:45:24 EST 2010 xend_config_format : 2
Thanks in advance
-- Chris Wik Anu Internet Services Ltd
On Tue, Jan 11, 2011 at 01:16:28PM +0100, Chris Wik wrote:
I want to give my clients access to their Xen domU consoles using VNC. This works great using vfb device configured as type=vnc.
However I have 2 problems:
- I can't figure out how I can add a vfb device to a running domain without restarting it (I have 100+ domU's I want to enable this on, and want to avoid restarting them all if possible)
I've never heard about vfb hotplug..
- Related, I can't figure out how I can change the VNC password without restarting the domU, as the password is specified in the vfb config.
Is what I am trying to do possible? How?
I wonder if the password is stored inside the qemu-dm process (vnc server), or in xenstore..
If it's in xenstore then it's easy to change it.
-- Pasi
On 16.01.2011, at 00:12, Pasi Kärkkäinen wrote:
- Related, I can't figure out how I can change the VNC password without restarting the domU, as the password is specified in the vfb config.
Is what I am trying to do possible? How?
I wonder if the password is stored inside the qemu-dm process (vnc server), or in xenstore..
If it's in xenstore then it's easy to change it.
Thanks for the tip, I never looked into xenstore before.
So I found that the vncpass is stored in xenstore:
# xenstore-read /local/domain/0/backend/vfb/<domain id>/0/vncpasswd -> test123
# xenstore-write /local/domain/0/backend/vfb/19/0/vncpasswd test234
# xenstore-read /local/domain/0/backend/vfb/<domain id>/0/vncpasswd -> test234
OK, so I can read and write the password. However, when I open a VNC connection, the new password is not in effect, instead the old one is still valid.
I noticed the qemu-dm process which looks like it might be responsible for setting up the vnc server:
# ps ax | grep vnc ,,, 12301 pts/0 Sl 0:00 /usr/lib64/xen/bin/qemu-dm -M xenpv -d <domain id> -domain-name <domain name> -vnc 0.0.0.0:<vnc port>,password -k en-us
I tried sending this pid a HUP signal to see if it would reload the password, but instead it just died. Do you think I'm on the right track here? Any further suggestions would be very much appreciated.
Chris
-- Chris Wik Anu Internet Services Ltd
On Sun, Jan 16, 2011 at 01:22:30AM +0100, Chris Wik wrote:
On 16.01.2011, at 00:12, Pasi Kärkkäinen wrote:
- Related, I can't figure out how I can change the VNC password without restarting the domU, as the password is specified in the vfb config.
Is what I am trying to do possible? How?
I wonder if the password is stored inside the qemu-dm process (vnc server), or in xenstore..
If it's in xenstore then it's easy to change it.
Thanks for the tip, I never looked into xenstore before.
So I found that the vncpass is stored in xenstore:
# xenstore-read /local/domain/0/backend/vfb/<domain id>/0/vncpasswd -> test123
# xenstore-write /local/domain/0/backend/vfb/19/0/vncpasswd test234
# xenstore-read /local/domain/0/backend/vfb/<domain id>/0/vncpasswd -> test234
OK, so I can read and write the password. However, when I open a VNC connection, the new password is not in effect, instead the old one is still valid.
I noticed the qemu-dm process which looks like it might be responsible for setting up the vnc server:
# ps ax | grep vnc ,,, 12301 pts/0 Sl 0:00 /usr/lib64/xen/bin/qemu-dm -M xenpv -d <domain id> -domain-name <domain name> -vnc 0.0.0.0:<vnc port>,password -k en-us
I tried sending this pid a HUP signal to see if it would reload the password, but instead it just died. Do you think I'm on the right track here? Any further suggestions would be very much appreciated.
Sorry, I don't know more about this.. Try reading xen qemu-dm sources?
-- Pasi