On Tue, Feb 09, 2010 at 03:57:28PM -0800, Ed Swierk wrote: > After staring at the code implementing node devices in libvirt, I have > decided that they're really neat, but I have no idea what they are for > or how to use them. > > Reading the API docs and searching libvir-list didn't help much, and > the user documentation (http://libvirt.org/archnode.html and > http://libvirt.org/formatnode.html) is a bit, err, high-level. > > Can someone enlighten me? Mostly what Alex already said :-) The libvirt APIs are split into several functional areas - virDomain - guest management - virInterface - host network interface configuration - virStorage - storage manangement - virNetwork - virtual networking The goal is that an app should be able to accomplish all its virtualization management tasks without needing any other remote access to the host via SSH or other systems. Many of the APIs for those areas I mention above require knowledge of what physical devices are present on the machine. For example, assigning a PCI or USB device to a guests requires that you know what PCI / USB devices the host has. Setting up a storage pool requires knowing what disks are available. Configuring network interfaces requires knowing what NICs are available, etc. So 'virNodeDev' APIs provide the missing link that lets you discover the information about a host that you need in order to use the other APIs. Regards, Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list