Hi, According to this support matrix https://libvirt.org/hvsupport.html#virNetworkDriver there is no support for any APIs other than hypervisor ones for qemu. For example virConnectNumOfNetworks is not supported. Is there any particular reason this is not supported? Has any development in that area been attempted in the past? Would contributions adding support be welcomed? Thanks, Radek Simko -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://listman.redhat.com/archives/libvirt-users/attachments/20210327/eddeed9a/attachment.htm>
On 3/27/21 8:39 AM, Radek Simko wrote:> Hi, > According to this support matrix > https://libvirt.org/hvsupport.html#virNetworkDriver > <https://libvirt.org/hvsupport.html#virNetworkDriver> > there is no support for any APIs other than hypervisor ones for qemu. > For example virConnectNumOfNetworks is not supported.I'm afraid I don't understand your question. Which hypervisor are you using that you think virConnectNumOfNetworks isn't supported. The only possible meaning I can get from the above sentences is that you think virConnectNumOfNetworks isn't supported when qemu is the hypervisor, which is definitely *not* true. As a matter of fact, essentiall *all* of the functions in the matrix are supported when qemu is the hypervisor, pretty much every one of them ever since their original introduction (e.g., the function you reference has been supported since libvirt 0.2.0, which was released in February 2007). Are you possibly misinterpreting the contents of the support matrix?> Is there any particular reason this is not supported? Has any > development in that area been attempted in the past? Would contributions > adding support be welcomed? > > Thanks, > > Radek Simko
On 3/27/21 1:39 PM, Radek Simko wrote:> Hi, > According to this support matrix > https://libvirt.org/hvsupport.html#virNetworkDriver > <https://libvirt.org/hvsupport.html#virNetworkDriver> > there is no support for any APIs other than hypervisor ones for qemu. > For example virConnectNumOfNetworks is not supported. > > Is there any particular reason this is not supported? Has any > development in that area been attempted in the past? Would contributions > adding support be welcomed?To extend Laine's reply: Libvirt has two set of drivers: statefull (where libvirt keeps the state of resources like domains, networks, ...) and stateless (where libvirt merely translates from/to APIs exposed by hypervisor). QEMU can be an example of a statefull driver, ESX or hyperv are examples of stateless drivers. Stateless drivers also implement network APIs (again, by translating from/to APIs exposed by the underlying hypervisor - ESX or hypverv in this example), whereas statefull drivers use bridge driver. Therefore, QEMU doesn't implement any network APIs. This is even more visible with split daemons (where monolithic libvirtd is broken into smaller daemons) - if virnetworkd is not running then things like 'virsh net-list' return an error [*]. Is there any particular problem you're facing? Michal * - except not really, because these split daemons are socket activated, so virnetworkd is stared automatically when needed.