Richard W.M. Jones
2020-Jan-10 14:26 UTC
Re: [Libguestfs] [PATCH Fedora libguestfs] Don't depend on libvirt-daemon-kvm monolith.
On Fri, Jan 10, 2020 at 02:15:10PM +0000, Daniel P. Berrangé wrote:> Do you use the libvirt "secret" APIs at all (disk encryption, network > disk auth passwords) ? If so you will need "libvirt-daemon-driver-secret" > too. How about any other libvirt sub-driver APIs ? Networking ? Host > dev, etc ?The full list of APIs we use is attached, assuming I got my regexp correct.> > +Recommends: libvirt-daemon-driver-storage-disk > > +Recommends: libvirt-daemon-driver-storage-gluster > > +Recommends: libvirt-daemon-driver-storage-iscsi > > +Recommends: libvirt-daemon-driver-storage-logical > > +Recommends: libvirt-daemon-driver-storage-rbd > > +Recommends: libvirt-daemon-driver-storage-scsiIn his response Pino questioned if we need these at all. I may not understand exactly what they do, but we *do* use libvirt XML containing disk elements to refer to disks, as well as elements referring to gluster, iscsi, ceph, etc.> > Requires: libvirt-daemon-qemu >= 0.10.2-3 > > You need to cull this last existing line tooYes, this was left over by accident. Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones Read my programming and virtualization blog: http://rwmj.wordpress.com Fedora Windows cross-compiler. Compile Windows programs, test, and build Windows installers. Over 100 libraries supported. http://fedoraproject.org/wiki/MinGW --rbKG8BlqS9xyY7Uh Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=apis virConnectClose ( virConnectDomainEventRegisterAny( virConnectGetAllDomainStats ( virConnectGetCapabilities ( virConnectGetDomainCapabilities ( virConnectGetMaxVcpus ( virConnectGetVersion ( virConnectListDefinedDomains ( virConnectListDomains ( virConnectNumOfDefinedDomains ( virConnectNumOfDomains ( virConnectOpen ( virConnectOpenAuth ( virConnectOpenReadOnly ( virConnectRef( virConnectSetKeepAlive( virConnResetLastError ( virConnSetErrorFunc ( virDomainAttachDeviceFlags ( virDomainBlockPeek ( virDomainBlockStats ( virDomainCreateXML ( virDomainDestroy ( virDomainDestroyFlags ( virDomainDetachDeviceFlags ( virDomainFree ( virDomainGetConnect ( virDomainGetCPUStats( virDomainGetID ( virDomainGetInfo ( virDomainGetMaxMemory ( virDomainGetName ( virDomainGetSchedulerParameters ( virDomainGetSchedulerType ( virDomainGetUUID ( virDomainGetUUIDString ( virDomainGetVcpus ( virDomainGetXMLDesc ( virDomainInterfaceStats ( virDomainLookupByID ( virDomainLookupByName ( virDomainLookupByUUIDString ( virDomainMemoryPeek ( virDomainMigrate ( virDomainPinVcpu ( virDomainRef( virDomainSetMaxMemory ( virDomainSetMemory ( virDomainSetSchedulerParameters ( virDomainSetVcpus ( virDomainStatsRecordListFree ( virEventAddTimeout( virEventRegisterDefaultImpl ( virEventRemoveTimeout( virEventRunDefaultImpl ( virGetLastError ( virGetVersion ( virInitialize ( virNetworkFree ( virNodeGetCellsFreeMemory ( virNodeGetFreeMemory ( virNodeGetInfo ( virResetLastError ( virSecretDefineXML ( virSecretFree ( virSecretGetUUIDString ( virSecretGetValue ( virSecretLookupByUsage ( virSecretLookupByUUIDString ( virSecretSetValue ( virSetErrorFunc ( virStoragePoolFree ( virStoragePoolGetInfo ( virStoragePoolLookupByName ( virStorageVolFree ( virStorageVolGetInfo ( virStorageVolGetPath ( virStorageVolLookupByName ( --rbKG8BlqS9xyY7Uh--
Daniel P. Berrangé
2020-Jan-10 14:39 UTC
Re: [Libguestfs] [PATCH Fedora libguestfs] Don't depend on libvirt-daemon-kvm monolith.
On Fri, Jan 10, 2020 at 02:26:35PM +0000, Richard W.M. Jones wrote:> On Fri, Jan 10, 2020 at 02:15:10PM +0000, Daniel P. Berrangé wrote: > > Do you use the libvirt "secret" APIs at all (disk encryption, network > > disk auth passwords) ? If so you will need "libvirt-daemon-driver-secret" > > too. How about any other libvirt sub-driver APIs ? Networking ? Host > > dev, etc ? > > The full list of APIs we use is attached, assuming I got my regexp > correct. > > > > +Recommends: libvirt-daemon-driver-storage-disk > > > +Recommends: libvirt-daemon-driver-storage-gluster > > > +Recommends: libvirt-daemon-driver-storage-iscsi > > > +Recommends: libvirt-daemon-driver-storage-logical > > > +Recommends: libvirt-daemon-driver-storage-rbd > > > +Recommends: libvirt-daemon-driver-storage-scsi > > In his response Pino questioned if we need these at all. I may not > understand exactly what they do, but we *do* use libvirt XML > containing disk elements to refer to disks, as well as elements > referring to gluster, iscsi, ceph, etc.These are specific impls of the libvirt storage pool APIs. If you're only usng domain <disk>s which directly reference gluster/iscsi/etc, you don't need the storage pool APIs. If you're using domain <disk>s which use type=volume, then you'll need the storage pool APIs & any impls that are relevant> virStoragePoolFree ( > virStoragePoolGetInfo ( > virStoragePoolLookupByName ( > virStorageVolFree ( > virStorageVolGetInfo ( > virStorageVolGetPath ( > virStorageVolLookupByName (So something in libguestfs is using storage pools, which would mean you want libvirt-daemon-driver-storage-core, and one or more of the pool impls that you use. Regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
Pino Toscano
2020-Jan-10 16:21 UTC
Re: [Libguestfs] [PATCH Fedora libguestfs] Don't depend on libvirt-daemon-kvm monolith.
On Friday, 10 January 2020 15:39:21 CET Daniel P. Berrangé wrote:> On Fri, Jan 10, 2020 at 02:26:35PM +0000, Richard W.M. Jones wrote: > > On Fri, Jan 10, 2020 at 02:15:10PM +0000, Daniel P. Berrangé wrote: > > > Do you use the libvirt "secret" APIs at all (disk encryption, network > > > disk auth passwords) ? If so you will need "libvirt-daemon-driver-secret" > > > too. How about any other libvirt sub-driver APIs ? Networking ? Host > > > dev, etc ? > > > > The full list of APIs we use is attached, assuming I got my regexp > > correct. > > > > > > +Recommends: libvirt-daemon-driver-storage-disk > > > > +Recommends: libvirt-daemon-driver-storage-gluster > > > > +Recommends: libvirt-daemon-driver-storage-iscsi > > > > +Recommends: libvirt-daemon-driver-storage-logical > > > > +Recommends: libvirt-daemon-driver-storage-rbd > > > > +Recommends: libvirt-daemon-driver-storage-scsi > > > > In his response Pino questioned if we need these at all. I may not > > understand exactly what they do, but we *do* use libvirt XML > > containing disk elements to refer to disks, as well as elements > > referring to gluster, iscsi, ceph, etc. > > These are specific impls of the libvirt storage pool APIs. > > If you're only usng domain <disk>s which directly reference > gluster/iscsi/etc, you don't need the storage pool APIs. > > If you're using domain <disk>s which use type=volume, > then you'll need the storage pool APIs & any impls > that are relevantThe way we tell libvirt to access disks in remote protocols is using <disk> with type=file, type=block, and type=network. See construct_libvirt_xml_disk() in lib/launch-libvirt.c: https://github.com/libguestfs/libguestfs/blob/c9543de73d264943fef88f5e53403bbe32917b01/lib/launch-libvirt.c#L1372 AFAICT that way does not use the storage pool drivers.> > virStoragePoolFree ( > > virStoragePoolGetInfo ( > > virStoragePoolLookupByName ( > > virStorageVolFree ( > > virStorageVolGetInfo ( > > virStorageVolGetPath ( > > virStorageVolLookupByName ( > > So something in libguestfs is using storage pools, which would > mean you want libvirt-daemon-driver-storage-core, and one or > more of the pool impls that you use.This is when libguestfs is told to open a libvirt domain, and the disks are specified as volumes in a local fs pool: libguestfs then gets the actual paths of the volumes. See filename_from_pool() in lib/libvirt-domain.c: https://github.com/libguestfs/libguestfs/blob/c9543de73d264943fef88f5e53403bbe32917b01/lib/libvirt-domain.c#L893 -- Pino Toscano
Reasonably Related Threads
- Re: [PATCH Fedora libguestfs] Don't depend on libvirt-daemon-kvm monolith.
- Re: [PATCH Fedora libguestfs] Don't depend on libvirt-daemon-kvm monolith.
- Re: [PATCH Fedora libguestfs] Don't depend on libvirt-daemon-kvm monolith.
- Re: [PATCH Fedora libguestfs] Don't depend on libvirt-daemon-kvm monolith.
- [PATCH] libvirt: read disk paths from pools (RHBZ#1366049)