Contents |
[edit]
Development Roadmap
[edit]
Next Release
The following features are pieces that are currently on the radar for the next virt-manager release. This isn't a guarantee, just the current pool of priorities we are pulling from. Next major release will likely land at the end of July 2010.
- Snapshot support -- Full VM ram/storage snapshots if backed by the proper storage (qcow2 files, hopefully support LVM soon). This should also be accompanied by a switch to using qcow2 by default for qemu/kvm, rather than raw files.
- Managed save/restore -- Now that libvirt manages this, we can make save/restore a first class citizen in the UI. This will also enable remote VM save/restore.
- Easier storage management -- We need to try and hide the pool/volume concept as much as possible. We should auto-pool-ify any path a user points to so they can leverage advanced storage options like image formats. We should also make it easy to change the 'default' storage pool, and possibly offer a way to point at a default 'media' pool for ISOs.
- Better qemu:///session integration -- qemu:///system for desktop virt has a lot of serious pain points that will inherently never go away. qemu:///session isn't without its own set of problems though, chief among them is lack of proper networking (besides usermode). We need to clearly document the caveats of both, but make a plan to solve the networking issues and figure but how to best expose the session/desktop usecase vs. the system/server usecase in virt-manager's UI.
- Proper fullscreen mode -- Currently the VNC fullscreen mode leaves a menu bar at the top of the screen which sucks for numerous reasons. It would be great if we could use the hiding toolbar 'autoshelf' widget in use by apps like eog and vinagre. Not sure how to best integrate it, maybe a port to python?
- Basic LXC support -- Add some LXC awareness to the UI. Possibly even a simple 'create' wizard for pointing an app in a container. Actually building an OS image for use with a full container will require a bit more thought.
[edit]
Libvirt features not yet supported virt-manager
This gives us an 'at a glance' idea of what major functionality we haven't gotten around to.
- VM CPU model/flags configuration -- Need to expose and allow the user to configure CPU model and flags. At the very least, we need to start specifying a sensible default, since users are missing out on the added performance at the moment.
- More modifiable VM details -- Allow guest hardware to be modified without using "Add Hardware"/"Remove". Some possibilities:
- Switching network source (bridge NIC to virtual network)
- VNC Display options
- VNC to SDL and back
- Domain jobs support -- Progress reporting and job cancellation for migration, core dump, and save functions.
- Proper memory stats reporting -- via virDomainMemoryStats, shows actual VM memory usage.
- Libvirt domain events -- virt-manager polls libvirt on a set interval for the list of existing domains, updating states if anything changed. we need to kill off this polling and support libvirt async domain update events.
- VM XML elements that aren't shown -- There is some VM info that we don't expose in the respective Details window. Currently these are:
- VM's connection URI
- on_destroy / on_shutdown / on_restart
- Loader path
- Kernel/initrd boot info
- Timer XML
- Device alias and PCI config (may not want to show)
- VM Device support gaps -- Filesystem support for LXC, channel devices, controller devices?
- Virtual Networking options -- Virtual networking features not exposed in the creator.
- Core dump -- Providing a memory dump of a VM.
- iSCSI Multi IQN
- virDomainUpdateDeviceFlags
- virDomainSetMigrateMaxDowntime
- Numa support -- Not sure if this even has any place in virt-manager, but possibly some sort of numa info listing for the connection's host.
- Direct kernel/initrd boot support -- Not sure if we ever want to support this in virt-manager, but it is a usecase kernel developers might want, so should be considered. If not virt-manager, then definitely virt-install.
- Scheduler / CGroups / Tuning options
- Support for other hypervisors We currently only support Xen and QEMU/KVM. A next good target would be linux containers (LXC) which has a mature libvirt driver, with hypervisor support available out of the box on new kernels.
- NPIV support -- A bit more libvirt support is probably coming down the pipe, just need to keeps this in mind.
[edit]
Wishlist
If you would like to propose a feature for virt-manager, please do not edit this page. Instead, file a feature request as described at BugReporting. This will ensure the request is tracked, and the developers can interact with the reporter.

