Hi all.  Having trouble figuring out the magic to set up VMChannel comms 
between EL6.x host/guests.  My end goal is to enable fence_virt in the guest to 
talk to fence_virtd on the host via VMChannel.  I'd prefer to use that instead 
of multicast because it is supposed to work even if networking in the guest is 
down/borked.

My analysis is that there is a mismatch between what libvirt is feeding 
qemu-kvm and what qemu-kvm is willing to accept:

virt-install option:
--channel 
unix,path=/var/run/cluster/fence/foobar,mode=bind,target_type=guestfwd,target_address=10.0.2.179:1229

turns into this XML:
<channel type='unix'>
  <source mode='bind' path='/var/run/cluster/fence/foobar'/>
  <target type='guestfwd' address='10.0.2.179' port='1229'/>
</channel>

Which then gets fed to qemu-kvm as this:
-chardev 
socket,id=charchannel0,path=/var/run/cluster/fence/foobar,server,nowait -netdev 
user,guestfwd=tcp:10.0.2.179:1229,chardev=charchannel0,
id=user-channel0 

And then qemu-kvm barfs like so:
qemu-kvm: -netdev 
user,guestfwd=tcp:10.0.2.179:1229,chardev=charchannel0,id=user-channel0: 
Invalid parameter 'chardev'

Versions:
libvirt-0.9.10-21.el6.1
qemu-kvm-0.12.1.2-2.295.el6

NB: I did try this with the versions in 6.2, got the same result.  Upgraded to 
these versions to see if the problem went away, but no joy.

NB2: The fence_virt.conf manpage lists the following as example XML for 
defining a channel device:
<channel type=’unix’>
    <source mode=’bind’ path=’/sandbox/guests/fence_molly_vmchannel’/>
    <target type=’guestfwd’ address=’10.0.2.179’ port=’1229’/>
</serial>

Any advice would be greatly appreciated.  I can fall back to multicast, of 
course, but I'd like to make this work if possible.

Thanks!
Mike

_______________________________________________
libvirt-users mailing list
libvirt-users@redhat.com
https://www.redhat.com/mailman/listinfo/libvirt-users

Reply via email to