Ask Your Question
1

KVM or QEMU

asked 2015-07-20 11:49:31 -0500

tab87vn gravatar image

updated 2015-07-21 03:26:07 -0500

Hi there,

Although for sure I've specified the hypervisor as KVM as in /etc/nova/nova.conf

libvirt_type=kvm

Or running

 egrep -c "(vmx|svm)" /proc/cpuinfo

will output

32

but processes that running, or other configs show that qemu is used (though I know that kvm is, or used to be, a fork of qemu):

/usr/bin/qemu-system-x86_64 -name instance-0000003c

Or when running

virsh dumpxml instance-00000039 | grep qemu

I will have the output:

<domain type='qemu' id='22'>
    <emulator>/usr/bin/qemu-system-x86_64</emulator>
      <driver name='qemu' type='qcow2' cache='none'/>
      <driver name='qemu'/>

Is it true that the qemu-kvm fork as been deprecated and merged into qemu development (as stated in http://wiki.qemu.org/KVM)? Is there any way to show exactly that Compute node is using KVM or not?

Thank you!

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted
1

answered 2015-07-20 12:24:42 -0500

dbaxps gravatar image

updated 2015-07-20 15:23:52 -0500

UPDATE

   What is TCG? If your server CPU does not support virtualization extension, then it is the job of the emulator (or hypervisor) to execute the Virtual CPU instruction using translation. QEMU uses TCG or Tiny Code Generator to optimally translate and execute the Virtual CPU instructions on the physical CPU.

By some reason your VM doesn't use KVM acceleration, regardless it should.
END UPDATE

You wrote "Is it true that the qemu-kvm fork as been deprecated and merged into qemu development"
Yes , it happened a while ago. Check on your box :-

[root@ServerCentOS71 ~]# lsmod | grep kvm
kvm_intel             148081  0 
kvm                   461126  1 kvm_intel
[root@ServerCentOS71 ~]# ls -l /dev/kvm
crw-rw-rw-+ 1 root kvm 10, 232 Jul 20 20:06 /dev/kvm

See sample

[root@fedora22server ~(keystone_admin)]# ps -ef | grep qemu
qemu     21319     1 99 13:47 ?        07:23:51 /usr/bin/qemu-system-x86_64 -machine accel=kvm -name instance-00000009 -S -machine pc-i440fx-2.3,accel=kvm,usb=off -cpu Haswell-noTSX,+abm,+pdpe1gb,+rdrand,+f16c,+osxsave,+pdcm,+xtpr,+tm2,+est,+smx,+vmx,+ds_cpl,+monitor,+dtes64,+pbe,+tm,+ht,+ss,+acpi,+ds,+vme -m 4096 -realtime mlock=off -smp 2,sockets=2,cores=1,threads=1 -uuid b93c9526-ded5-4b7a-ae3a-106b34317744 -smbios type=1,manufacturer=Fedora Project,product=OpenStack Nova,version=2015.1.0-3.fc23,serial=f1b336b1-6abf-4180-865a-b6be5670352e,uuid=b93c9526-ded5-4b7a-ae3a-106b34317744 -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/instance-00000009.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc,driftfix=slew -global kvm-pit.lost_tick_policy=discard -no-hpet -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x5 -drive file=/var/lib/nova/instances/b93c9526-ded5-4b7a-ae3a-106b34317744/disk,if=none,id=drive-virtio-disk0,format=qcow2,cache=none -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x6,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -netdev tap,fd=29,id=hostnet0,vhost=on,vhostfd=30 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=fa:16:3e:72:55:e3,bus=pci.0,addr=0x3 -chardev file,id=charserial0,path=/var/lib/nova/instances/b93c9526-ded5-4b7a-ae3a-106b34317744/console.log -device isa-serial,chardev=charserial0,id=serial0 -chardev pty,id=charserial1 -device isa-serial,chardev=charserial1,id=serial1 -chardev spicevmc,id=charchannel0,name=vdagent -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0 -spice port=5901,addr=0.0.0.0,disable-ticketing,seamless-migration=on -k en-us -device qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vgamem_mb=16,bus=pci.0,addr=0x2 -device intel-hda,id=sound0,bus=pci.0,addr=0x4 -device hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x7 -msg timestamp=on
edit flag offensive delete link more

Comments

Thanks. Below is what I have:

root@sys-n03:~# lsmod | grep kvm 
kvm_intel 143590 0 kvm 452043 1 kvm_intel

and root@sys-n03:~# ls -l /dev/kvm crw-rw---- 1 root kvm 10, 232 Jul 16 15:21 /dev/kvm

tab87vn gravatar imagetab87vn ( 2015-07-20 13:33:22 -0500 )edit

On Compute node, did you install nova-compute-kvm or nova-compute-qemu? I suppose OpenStack utilises hypervisors through its own lib/driver rather than linux's kvm/qemu packages.

tab87vn gravatar imagetab87vn ( 2015-07-21 06:24:01 -0500 )edit

Unfortunately, when i replaced the already installed nova-compute-qemu by nova-compute-kvm, the controller doesn't seem to recognise compute service on compute nodes anymore.

[IMG]http://i59.tinypic.com/2utp63n.png[/IMG]

tab87vn gravatar imagetab87vn ( 2015-07-21 08:53:10 -0500 )edit

I would guess you are running Ubuntu 14.04 on yours nodes.

dbaxps gravatar imagedbaxps ( 2015-07-21 09:10:04 -0500 )edit

@dbaxps: yes, it's Ubuntu 14.04.1, with OpenStack Juno.

tab87vn gravatar imagetab87vn ( 2015-07-21 09:25:56 -0500 )edit
0

answered 2015-07-20 13:50:34 -0500

tab87vn gravatar image

updated 2015-07-21 11:15:48 -0500

* UPDATE - SOLVED *

Hi,

I've eventually reinstalled the nova-compute-qemu that its dependency packages, and magically it works this time.

Before that i also attempted to install qemu-kvm as a separate linux packages but it changed nothing, as I guess now that it always comes down qemu that brings the virtualisation, it's only up to the system in whether it supports KVM or not (is it correct?)

Now that when i check the dumpxml of VMs:

root@sys-n07:~/junoscript# virsh dumpxml instance-00000061 | grep kvm
<domain type='kvm' id='31'>
    <emulator>/usr/bin/kvm-spice</emulator>

and

libvirt+  97280      1 11 17:30 ?        00:05:04 qemu-system-x86_64 -enable-kvm -name instance-00000061 -S -machine pc-i440fx-trusty,accel=kvm,usb=off -cpu SandyBridge,+invpcid,+erms,+bmi2,+smep,+avx2,+bmi1,+fsgsbase,+abm,+pdpe1gb,+rdrand,+f16c,+osxsave,+movbe,+dca,+pcid,+pdcm,+xtpr,+fma,+tm2,+est,+smx,+vmx,+ds_cpl,+monitor,+dtes64,+pbe,+tm,+ht,+ss,+acpi,+ds,+vme -m 512 -realtime mlock=off -smp 1,sockets=1,cores=1,threads=1 -uuid acd86f52-d2f7-48f0-a1b2-baad51ff01b3 -smbios type=1,manufacturer=OpenStack Foundation,product=OpenStack Nova,version=2014.2.3

Thanks for your concern!

* END OF UPDATE *

* UPDATE *

CPU Info:

Intel(R) Xeon(R) CPU E5-2640 v3 @ 2.60GHz

I think the server surely supports virtualisation and is particularly is ready to run KVM

Running

virsh capabilities

Will output

...
  <domain type='kvm'>
    <emulator>/usr/bin/qemu-system-x86_64</emulator>
  </domain>
...

As I installed OpenStack Juno, I notice that there's no nova-compute-kvm package is installed. I don't know it's because qemu kvm has been merged into the mainstream.

* END OF UPDATE *

================

Thanks. Below is what I have:

root@sys-n03:~# lsmod | grep kvm
kvm_intel             143590  0
kvm                   452043  1 kvm_intel

root@sys-n03:~# ls -l /dev/kvm
crw-rw---- 1 root kvm 10, 232 Jul 16 15:21 /dev/kvm

No sign of KVM running though:

root@sys-n03:~# ps -ef | grep qemu
libvirt+   2777      1  0 Jul17 ?        00:19:14 /usr/bin/qemu-system-x86_64 -name instance-00000048 -S -machine pc-i440fx-trusty,accel=tcg,usb=off -cpu SandyBridge,+invpcid,+erms,+bmi2,+smep,+avx2,+bmi1,+fsgsbase,+abm,+pdpe1gb,+rdrand,+f16c,+osxsave,+movbe,+dca,+pcid,+pdcm,+xtpr,+fma,+tm2,+est,+smx,+vmx,+ds_cpl,+monitor,+dtes64,+pbe,+tm,+ht,+ss,+acpi,+ds,+vme -m 512 -realtime mlock=off -smp 1,sockets=1,cores=1,threads=1 -uuid 48ceba01-fdea-4801-a60e-f81c8b6c843e -smbios type=1,manufacturer=OpenStack Foundation,product=OpenStack Nova,version=2014.2.3,serial=44454c4c-5400-1030-8033-b3c04f313532,uuid=48ceba01-fdea-4801-a60e-f81c8b6c843e -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/instance-00000048.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=utc -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=/var/lib/nova/instances/48ceba01-fdea-4801-a60e-f81c8b6c843e/disk,if=none,id=drive-virtio-disk0,format=qcow2,cache=none -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x4,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -netdev tap,fd=26,id=hostnet0 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=fa:16:3e:b1:c8:b6,bus=pci.0,addr=0x3 -chardev file,id=charserial0,path=/var/lib/nova/instances/48ceba01-fdea-4801-a60e-f81c8b6c843e/console.log -device isa-serial ...
(more)
edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Get to know Ask OpenStack

Resources for moderators

Question Tools

2 followers

Stats

Asked: 2015-07-20 11:49:31 -0500

Seen: 2,312 times

Last updated: Jul 21 '15