surface@me.is-a-linux-user.org
2013-Aug-09  13:44 UTC
[libvirt-users] Hyper-V driver API version support
Hello
The "version" function is not supported by the hyperv driver:
$ virsh --connect=hyperv://hypervhost version
Compiled against library: libvirt 1.1.1
Using library: libvirt 1.1.1
Using API: Hyper-V 1.1.1
error: failed to get the hypervisor version
error: this function is not supported by the connection driver: 
virConnectGetVersion
But we need this funtion for the "external/libvirt" stonith plugin of 
clusterglue:
$ cat /usr/lib/stonith/plugins/libvirt | more
# get status of stonith device (*NOT* of the domain).
# If we can retrieve some info from the hypervisor
# the stonith device is OK.
libvirt_status() {
     out=$($VIRSH -c $hypervisor_uri version 2>&1)
     if [ $? -eq 0 ]
     then
         out=`echo "$out" | tail -1`
         ha_log.sh notice "$hypervisor_uri: $out"
         return 0
     fi
     ha_log.sh err "Failed to get status for $hypervisor_uri"
     ha_log.sh err "$out"
     return 1
}
So, we can't implement libvirt stonith with hyperv support in our 
corosync/pacemaker cluster. Is it possible to implement the "version" 
function for hyperv into virConnectGetVersion? Or exist any workaround 
for this problem?
Regards
Rocco
