2008-04-23 21:08:31 +04:00
< html >
< body >
< h1 > QEMU/KVM hypervisor driver< / h1 >
< p >
The libvirt QEMU driver can manage any QEMU emulator from version 0.8.1
or later. It can also manage anything that provides the same QEMU command
line syntax and monitor interaction. This includes KVM, and Xenner.
< / p >
< h2 > Deployment pre-requisites< / h2 >
< ul >
< li >
< strong > QEMU emulators< / strong > : The driver will probe < code > /usr/bin< / code >
for the presence of < code > qemu< / code > , < code > qemu-system-x86_64< / code > ,
< code > qemu-system-mips< / code > ,< code > qemu-system-mipsel< / code > ,
< code > qemu-system-sparc< / code > ,< code > qemu-system-ppc< / code > . The results
of this can be seen from the capabilities XML output.
< / li >
< li >
< strong > KVM hypervisor< / strong > : The driver will probe < code > /usr/bin< / code >
for the presence of < code > qemu-kvm< / code > and < code > /dev/kvm< / code > device
node. If both are found, then KVM fullyvirtualized, hardware accelerated
guests will be available.
< / li >
< li >
< strong > Xenner hypervisor< / strong > : The driver will probe < code > /usr/bin< / code >
for the presence of < code > xenner< / code > and < code > /dev/kvm< / code > device
node. If both are found, then Xen paravirtualized guests can be run using
the KVM hardware acceleration.
< / li >
< / ul >
2009-01-27 17:49:09 +03:00
< h2 > Connections to QEMU driver< / h2 >
< p >
The libvirt QEMU driver is a multi-instance driver, providing a single
system wide privileged driver (the "system" instance), and per-user
unprivileged drivers (the "session" instance). The of the driver protocol
is "qemu". Some example conection URIs for the libvirt driver are:
< / p >
< pre >
qemu:///session (local access to per-user instance)
qemu+unix:///session (local access to per-user instance)
qemu:///system (local access to system instance)
qemu+unix:///system (local access to system instance)
qemu://example.com/system (remote access, TLS/x509)
qemu+tcp://example.com/system (remote access, SASl/Kerberos)
qemu+ssh://root@example.com/system (remote access, SSH tunnelled)
< / pre >
2008-04-23 21:08:31 +04:00
< h2 > < a name = "xmlconfig" > Example domain XML config< / a > < / h2 >
< h3 > QEMU emulated guest on x86_64< / h3 >
< pre > < domain type='qemu'>
< name> QEmu-fedora-i686< /name>
< uuid> c7a5fdbd-cdaf-9455-926a-d65c16db1809< /uuid>
< memory> 219200< /memory>
< currentMemory> 219200< /currentMemory>
< vcpu> 2< /vcpu>
< os>
< type arch='i686' machine='pc'> hvm< /type>
< boot dev='cdrom'/>
< /os>
< devices>
< emulator> /usr/bin/qemu-system-x86_64< /emulator>
< disk type='file' device='cdrom'>
< source file='/home/user/boot.iso'/>
< target dev='hdc'/>
< readonly/>
< /disk>
< disk type='file' device='disk'>
< source file='/home/user/fedora.img'/>
< target dev='hda'/>
< /disk>
< interface type='network'>
2008-07-08 21:44:56 +04:00
< source network='default'/>
2008-04-23 21:08:31 +04:00
< /interface>
< graphics type='vnc' port='-1'/>
< /devices>
< /domain> < / pre >
< h3 > KVM hardware accelerated guest on i686< / h3 >
< pre > < domain type='kvm'>
< name> demo2< /name>
< uuid> 4dea24b3-1d52-d8f3-2516-782e98a23fa0< /uuid>
< memory> 131072< /memory>
< vcpu> 1< /vcpu>
< os>
< type arch="i686"> hvm< /type>
< /os>
< clock sync="localtime"/>
< devices>
< emulator> /usr/bin/qemu-kvm< /emulator>
< disk type='file' device='disk'>
< source file='/var/lib/libvirt/images/demo2.img'/>
< target dev='hda'/>
< /disk>
< interface type='network'>
< source network='default'/>
< mac address='24:42:53:21:52:45'/>
< /interface>
2008-12-26 16:37:53 +03:00
< graphics type='vnc' port='-1' keymap='de'/>
2008-04-23 21:08:31 +04:00
< /devices>
< /domain> < / pre >
< h3 > Xen paravirtualized guests with hardware acceleration< / h3 >
< / body >
< / html >