[libvirt] Virt-install Error on Centos 5.4 64bit and kvm

Hi everyone: using this command to install a kvm virtual machine: virt-install --connect qemu:///system \ --name p3k0401 \ --ram 2048 \ --file //dev/VolGroup01/p3k0401logvol \ --accelerate \ -s 10 \ --nographics \ --hvm \ --location='http://10.1.4.80' I get: Starting install... Retrieving file vmlinuz... | 1.8 MB 00:00 Retrieving file initrd.img... | 7.1 MB 00:00 ERROR internal error Domain p3k0401 didn't show up Domain installation may not have been successful. If it was, you can restart your domain by running 'virsh start p3k0401'; otherwise, please restart your installation. ERROR internal error Domain p3k0401 didn't show up Traceback (most recent call last): File "/usr/sbin/virt-install", line 889, in ? main() File "/usr/sbin/virt-install", line 751, in main start_time, guest.start_install) File "/usr/sbin/virt-install", line 813, in do_install dom = install_func(conscb, progresscb, wait=(not wait)) File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 541, in start_install return self._do_install(consolecb, meter, removeOld, wait) File "/usr/lib/python2.4/site-packages/virtinst/Guest.py", line 633, in _do_install self.domain = self.conn.createLinux(install_xml, 0) File "/usr/lib64/python2.4/site-packages/libvirt.py", line 974, in createLinux if ret is None:raise libvirtError('virDomainCreateLinux() failed', conn=self) libvirtError: internal error Domain p3k0401 didn't show up On the /var/log/libvirt/qemu/p3k0401.log: LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin HOME=/ /usr/bin/qemu-system-x86_64 -S -M rhel5.4.0 -m 1024 -smp 1 -name p3k0401 -uuid 7658c102-0738-724c-40eb-e1c58b2c2369 -domid 3 -nographic -monitor pty -pidfile /var/run/libvirt/qemu//p3k0401.pid -no-reboot -boot c -kernel /var/lib/libvirt/boot/virtinst-vmlinuz.O_SOVo -initrd /var/lib/libvirt/boot/virtinst-initrd.img.0ba0Fp -append method=http://10.1.4.80 -drive file=//dev/VolGroup01/p3k0401logvol,if=ide,index=0,cache=none -net nic,macaddr=54:52:00:15:c4:50,vlan=0 -net tap,fd=16,script=,vlan=0,ifname=vnet0 -serial pty -parallel none -usb Supported machines are: pc Standard PC (alias of pc-0.12) pc-0.12 Standard PC (default) pc-0.11 Standard PC, qemu 0.11 pc-0.10 Standard PC, qemu 0.10 isapc ISA-only PC xenpv Xen Para-virtualized PC And my packages installed: # rpm -qa | grep qemu qemu-0.12.4-1.el5.rf # rpm -qa | grep kvm etherboot-zroms-kvm-5.4.4-13.el5.centos kmod-kvm-83-164.el5_5.12 kvm-83-164.el5_5.12 # rpm -qa | grep libvirt libvirt-0.6.3-33.el5_5.1 libvirt-0.6.3-33.el5_5.1 libvirt-python-0.6.3-33.el5_5.1 # uname -a Linux gs1p304 2.6.18-164.el5 #1 SMP Thu Sep 3 03:28:30 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux Please any pointer is appreciated... Thanks Cris

On the /var/log/libvirt/qemu/p3k0401.log:
LC_ALL=C PATH=/sbin:/usr/sbin:/bin:/usr/bin HOME=/ /usr/bin/qemu-system-x86_64 -S -M rhel5.4.0 -m 1024 -smp 1 -name p3k0401 -uuid 7658c102-0738-724c-40eb-e1c58b2c2369 -domid 3 -nographic -monitor pty -pidfile /var/run/libvirt/qemu//p3k0401.pid -no-reboot -boot c -kernel /var/lib/libvirt/boot/virtinst-vmlinuz.O_SOVo -initrd /var/lib/libvirt/boot/virtinst-initrd.img.0ba0Fp -append method=http://10.1.4.80 -drive file=//dev/VolGroup01/p3k0401logvol,if=ide,index=0,cache=none -net nic,macaddr=54:52:00:15:c4:50,vlan=0 -net tap,fd=16,script=,vlan=0,ifname=vnet0 -serial pty -parallel none -usb Supported machines are: pc Standard PC (alias of pc-0.12) pc-0.12 Standard PC (default) pc-0.11 Standard PC, qemu 0.11 pc-0.10 Standard PC, qemu 0.10 isapc ISA-only PC xenpv Xen Para-virtualized PC
And my packages installed:
# rpm -qa | grep qemu qemu-0.12.4-1.el5.rf ^^^ This is your problem. You have an alternative qemu installed. By default, libvirt will use rhel5.4.0 machine type, which is supported by kvm-83-164.el5_5.12 but not supported by upstream qemu (you can see the supported machine types in the log above).
So you have two options: - either use /usr/libexec/qemu-kvm as the emulator - or explicitly change machine type to something which is supported by /usr/bin/qemu-system-x86_64 (e.g., pc-0.12) You can do both in guest XML but I'm not sure if any of these can be done using virt-install. Another option is to use current upstream libvirt since it is able to automatically detect supported machine types and doesn't try to use rhel5.4.0 if the emulator doesn't support it. Jirka
participants (2)
-
Cristian Rojas
-
Jiri Denemark