Bug 1426219 - [RFE] Comapre SHE VM devices vs a regular default devices VM in 4.2
Summary: [RFE] Comapre SHE VM devices vs a regular default devices VM in 4.2
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: ovirt-hosted-engine-ha
Classification: oVirt
Component: RFEs
Version: 2.1.0.3
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ovirt-4.2.0
: ---
Assignee: bugs@ovirt.org
QA Contact: Nikolai Sednev
URL:
Whiteboard:
Depends On: 1479776
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-02-23 13:10 UTC by Yaniv Kaul
Modified: 2019-04-28 13:18 UTC (History)
6 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2017-12-20 11:39:13 UTC
oVirt Team: SLA
Embargoed:
rule-engine: ovirt-4.2+
gklein: testing_plan_complete-
ylavi: planning_ack+
rule-engine: devel_ack+
mavital: testing_ack+


Attachments (Terms of Use)
screencast (2.00 MB, application/octet-stream)
2017-08-14 14:56 UTC, Nikolai Sednev
no flags Details

Description Yaniv Kaul 2017-02-23 13:10:52 UTC
Description of problem:
Please compare the devices of SHE VM with a regular VM running in 4.2.
For example, I'd add kvmclock. I've also seen virtio-scsi there, though we are not using it - I guess it cannot hurt (if we add a virtio-scsi disk later, perhaps it's useful?). I assume the IDE CDROM (could have been SCSI) is for the cloud-init payload.

Version-Release number of selected component (if applicable):
4.1.

How reproducible:
Always

Steps to Reproduce:
1. Look at the qemu-kvm command line of the SHE VM

Comment 2 Nikolai Sednev 2017-08-13 06:52:28 UTC
Can you explain a bit more about reproduction steps for this bug?
Can you explain in more details what this bug is about?
What is expected and what is currently being shown?

Comment 3 Yaniv Kaul 2017-08-13 06:55:49 UTC
(In reply to Nikolai Sednev from comment #2)
> Can you explain a bit more about reproduction steps for this bug?
> Can you explain in more details what this bug is about?
> What is expected and what is currently being shown?

Run a regular VM - check its devices (for example, virtio-rng, virtio-blk (or virtio-SCSI?), etc.). I suggest saving the qemu-kvm command line, as there's more than just devices involved.
Run the HE VM - check its devices. Again, save the qemu-kvm command line - and compare it with the above. There shouldn't be significant differences.

Comment 4 Nikolai Sednev 2017-08-14 14:55:35 UTC
Adding my screencast from reproduction here, just to get an example of UI difference between SHE-VM and regular guest-VM.

Comment 5 Nikolai Sednev 2017-08-14 14:56:14 UTC
Created attachment 1313225 [details]
screencast

Comment 6 Nikolai Sednev 2017-08-14 15:23:04 UTC
Comparing SHE-VM with guest-VM I don't see much difference between these two, except for:
1)On SHE-VM there are 3 unix channels (ports 1-3, while on guest-VM only 2 (ports 1-2)
2)On SHE-VM there is a CD-Rom device, which does not exist on guest-VM.
3)RNG device is missing on SHE-VM, but exists on guest-VM.
4)On SHE-VM no balloon device, while exists on guest-VM.

Omitting sound and video, as I've intentionally added these two to the guest-
VM.

Does this meets the expectations?

SHE-VM:
alma03 ~]# ps aux | grep qemu
qemu      48405  4.8 31.2 17535112 10244764 ?   Sl   Aug13  69:39 /usr/libexec/qemu-kvm -name guest=HostedEngine,debug-threads=on -S -object secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-2-HostedEngine/master-key.aes -machine pc-i440fx-rhel7.3.0,accel=kvm,usb=off,dump-guest-core=off -cpu SandyBridge -m 16384 -realtime mlock=off -smp 4,sockets=4,cores=1,threads=1 -uuid b7470707-0c9a-479c-9e4c-cb9577ceea37 -smbios type=1,manufacturer=oVirt,product=oVirt Node,version=7.4-18.el7,serial=4C4C4544-0059-4410-8053-B7C04F573032,uuid=b7470707-0c9a-479c-9e4c-cb9577ceea37 -no-user-config -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-2-HostedEngine/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=2017-08-13T15:05:21,driftfix=slew -global kvm-pit.lost_tick_policy=delay -no-hpet -no-reboot -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x4 -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,addr=0x5 -drive if=none,id=drive-ide0-1-0,readonly=on -device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -drive file=/var/run/vdsm/storage/789fa066-1175-46f4-a3aa-22d2883761d8/c84bfe55-751a-4231-9eda-465146ee8383/a0cd13cc-486a-4fa2-ae11-14cab385ac68,format=raw,if=none,id=drive-virtio-disk0,serial=c84bfe55-751a-4231-9eda-465146ee8383,cache=none,werror=stop,rerror=stop,aio=threads -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x6,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -netdev tap,fd=28,id=hostnet0,vhost=on,vhostfd=30 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=00:16:3e:7b:b8:53,bus=pci.0,addr=0x3 -chardev socket,id=charchannel0,path=/var/lib/libvirt/qemu/channels/b7470707-0c9a-479c-9e4c-cb9577ceea37.com.redhat.rhevm.vdsm,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.rhevm.vdsm -chardev socket,id=charchannel1,path=/var/lib/libvirt/qemu/channels/b7470707-0c9a-479c-9e4c-cb9577ceea37.org.qemu.guest_agent.0,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=2,chardev=charchannel1,id=channel1,name=org.qemu.guest_agent.0 -chardev socket,id=charchannel2,path=/var/lib/libvirt/qemu/channels/b7470707-0c9a-479c-9e4c-cb9577ceea37.org.ovirt.hosted-engine-setup.0,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=3,chardev=charchannel2,id=channel2,name=org.ovirt.hosted-engine-setup.0 -chardev pty,id=charconsole0 -device virtconsole,chardev=charconsole0,id=console0 -vnc 0:0,password -device VGA,id=video0,vgamem_mb=32,bus=pci.0,addr=0x2 -object rng-random,id=objrng0,filename=/dev/urandom -device virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.0,addr=0x7 -msg timestamp=on


Guest-VM:
alma04 ~]# ps aux | grep qemu
qemu      83228  1.9  2.1 1812556 687492 ?      Sl   17:35   0:33 /usr/libexec/qemu-kvm -name guest=guestVM1,debug-threads=on -S -object secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-2-guestVM1/master-key.aes -machine pc-i440fx-rhel7.3.0,accel=kvm,usb=off,dump-guest-core=off -cpu SandyBridge -m size=1048576k,slots=16,maxmem=4194304k -realtime mlock=off -smp 1,maxcpus=16,sockets=16,cores=1,threads=1 -numa node,nodeid=0,cpus=0,mem=1024 -uuid 4496b49b-2894-4c9c-8c7d-1a482fba4c2e -smbios type=1,manufacturer=oVirt,product=oVirt Node,version=7.4-18.el7,serial=4C4C4544-0059-4410-8054-B8C04F573032,uuid=4496b49b-2894-4c9c-8c7d-1a482fba4c2e -no-user-config -nodefaults -device sga -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-2-guestVM1/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=2017-08-14T17:35:37,driftfix=slew -global kvm-pit.lost_tick_policy=delay -no-hpet -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x5 -device virtio-serial-pci,id=virtio-serial0,max_ports=16,bus=pci.0,addr=0x6 -drive if=none,id=drive-ide0-1-0,readonly=on -device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -drive file=/rhev/data-center/mnt/yellow-vdsb.qa.lab.tlv.redhat.com:_Compute__NFS_nsednev__he__1__data__sd__1/49e93688-92ad-452d-8e88-80f34b5c210a/images/cf41cc36-b9a0-4b46-80ad-7271cf170b83/a27be6e1-1e2d-4844-9422-62448ecd6167,format=qcow2,if=none,id=drive-virtio-disk0,serial=cf41cc36-b9a0-4b46-80ad-7271cf170b83,cache=none,werror=stop,rerror=stop,aio=threads -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x7,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -netdev tap,fd=28,id=hostnet0,vhost=on,vhostfd=30 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=00:1a:4a:16:01:01,bus=pci.0,addr=0x3 -chardev socket,id=charserial0,path=/var/run/ovirt-vmconsole-console/4496b49b-2894-4c9c-8c7d-1a482fba4c2e.sock,server,nowait -device isa-serial,chardev=charserial0,id=serial0 -chardev socket,id=charchannel0,path=/var/lib/libvirt/qemu/channels/4496b49b-2894-4c9c-8c7d-1a482fba4c2e.ovirt-guest-agent.0,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=ovirt-guest-agent.0 -chardev socket,id=charchannel1,path=/var/lib/libvirt/qemu/channels/4496b49b-2894-4c9c-8c7d-1a482fba4c2e.org.qemu.guest_agent.0,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=2,chardev=charchannel1,id=channel1,name=org.qemu.guest_agent.0 -chardev spicevmc,id=charchannel2,name=vdagent -device virtserialport,bus=virtio-serial0.0,nr=3,chardev=charchannel2,id=channel2,name=com.redhat.spice.0 -spice tls-port=5900,addr=10.35.72.4,x509-dir=/etc/pki/vdsm/libvirt-spice,tls-channel=default,seamless-migration=on -device qxl-vga,id=video0,ram_size=67108864,vram_size=33554432,vram64_size_mb=0,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=0x8 -object rng-random,id=objrng0,filename=/dev/urandom -device virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.0,addr=0x9 -msg timestamp=on


Adding the relevant components versions here from hosts:
ovirt-hosted-engine-ha-2.2.0-0.0.master.20170811094025.20170811094022.git1ef5937.el7.centos.noarch
ovirt-release-master-4.2.0-0.5.master.20170813000025.gitf718d23.el7.centos.noarch
ovirt-host-deploy-1.7.0-0.0.master.20170720074349.gitd8609b1.el7.centos.noarch
ovirt-imageio-daemon-1.1.0-0.201708081655.git4c2a6da.el7.centos.noarch
ovirt-host-4.2.0-0.0.master.20170720074407.git05ab3a1.el7.centos.noarch
ovirt-setup-lib-1.1.4-0.0.master.20170811141057.gite647a9a.el7.centos.noarch
libvirt-client-3.2.0-14.el7_4.2.x86_64
mom-0.5.10-1.el7.noarch
ovirt-vmconsole-1.0.4-0.0.master.20170301155209.git50f0014.el7.centos.noarch
vdsm-4.20.2-60.git06231e5.el7.centos.x86_64
ovirt-hosted-engine-setup-2.2.0-0.0.master.20170810054632.git5b6b57c.el7.centos.noarch
sanlock-3.5.0-1.el7.x86_64
ovirt-engine-sdk-python-3.6.9.2-0.1.20161204.gite99bbd1.el7.centos.noarch
ovirt-imageio-common-1.1.0-0.201708081655.git4c2a6da.el7.centos.noarch
ovirt-vmconsole-host-1.0.4-0.0.master.20170301155209.git50f0014.el7.centos.noarch
Linux version 3.10.0-693.1.1.el7.x86_64 (mockbuild.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Thu Aug 3 08:15:31 EDT 2017
Linux 3.10.0-693.1.1.el7.x86_64 #1 SMP Thu Aug 3 08:15:31 EDT 2017 x86_64 x86_64 x86_64 GNU/Linux
Red Hat Enterprise Linux Server release 7.4 (Maipo)

From engine:
Linux version 3.10.0-514.26.2.el7.x86_64 (builder.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Tue Jul 4 15:04:05 UTC 2017
Linux 3.10.0-514.26.2.el7.x86_64 #1 SMP Tue Jul 4 15:04:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
CentOS Linux release 7.3.1611 (Core)

Comment 7 Yaniv Kaul 2017-08-14 16:50:34 UTC
A different format would have been more helpful. I've noticed some additional differences:
1. Memory:
guest: -m size=1048576k,slots=16,maxmem=4194304k
HE: -m 16384

(Does that affect Hot-Add, if and when needed?)

2. NUMA settings for the guest:
-numa node,nodeid=0,cpus=0,mem=1024

3. device sga for the guest:
-device sga

4. I think these are OK, but need to understand the differences:
HE: -no-reboot
Guest VM: -no-shutdown

5. You are running one with Spice and one with VGA, please switch the guest to VNC as well and check.

6. We could probably have removed the USB from HE.


- I see both have virtio-rng?
- It's OK the HE doesn't have a balloon device.

Comment 8 Nikolai Sednev 2017-08-15 11:25:29 UTC
(In reply to Yaniv Kaul from comment #7)
> A different format would have been more helpful. I've noticed some
> additional differences:
> 1. Memory:
> guest: -m size=1048576k,slots=16,maxmem=4194304k
> HE: -m 16384
I've created guest VM using template, so memory values were taken from there.
> 
> (Does that affect Hot-Add, if and when needed?)
> 
> 2. NUMA settings for the guest:
> -numa node,nodeid=0,cpus=0,mem=1024

NUMA not being supported on SHE-VM, it requires pinning to host, thus making NUMA feature irrelevant to SHE's VM, regarding guest-vm, I really have no idea why these parameters used as default, IMHO dev should know better than me regarding these.

> 
> 3. device sga for the guest:
> -device sga

Graphic adapters are different between guest and SHE-VM, I've used VNC for SHE during its deployment, while spice is the default for guest VMs, hence the difference here.

> 
> 4. I think these are OK, but need to understand the differences:
> HE: -no-reboot
> Guest VM: -no-shutdown

I have no answer to this one, for us this is an abstruction, while dev should probably know why this value being used.

> 
> 5. You are running one with Spice and one with VGA, please switch the guest
> to VNC as well and check.
Switched my guest to VNC and attaching the results here as follows:
alma04 ~]# ps aux | grep qemu
qemu     114194 68.9  1.4 1767412 471744 ?      Sl   14:17   0:16 /usr/libexec/qemu-kvm -name guest=guestVM1,debug-threads=on -S -object secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-3-guestVM1/master-key.aes -machine pc-i440fx-rhel7.3.0,accel=kvm,usb=off,dump-guest-core=off -cpu SandyBridge -m size=1048576k,slots=16,maxmem=4194304k -realtime mlock=off -smp 1,maxcpus=16,sockets=16,cores=1,threads=1 -numa node,nodeid=0,cpus=0,mem=1024 -uuid 4496b49b-2894-4c9c-8c7d-1a482fba4c2e -smbios type=1,manufacturer=oVirt,product=oVirt Node,version=7.4-18.el7,serial=4C4C4544-0059-4410-8054-B8C04F573032,uuid=4496b49b-2894-4c9c-8c7d-1a482fba4c2e -no-user-config -nodefaults -device sga -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-3-guestVM1/monitor.sock,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=2017-08-15T14:17:41,driftfix=slew -global kvm-pit.lost_tick_policy=delay -no-hpet -no-shutdown -boot strict=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -device virtio-scsi-pci,id=scsi0,bus=pci.0,addr=0x5 -device virtio-serial-pci,id=virtio-serial0,max_ports=16,bus=pci.0,addr=0x6 -drive if=none,id=drive-ide0-1-0,readonly=on -device ide-cd,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -drive file=/rhev/data-center/mnt/yellow-vdsb.qa.lab.tlv.redhat.com:_Compute__NFS_nsednev__he__1__data__sd__1/49e93688-92ad-452d-8e88-80f34b5c210a/images/cf41cc36-b9a0-4b46-80ad-7271cf170b83/a27be6e1-1e2d-4844-9422-62448ecd6167,format=qcow2,if=none,id=drive-virtio-disk0,serial=cf41cc36-b9a0-4b46-80ad-7271cf170b83,cache=none,werror=stop,rerror=stop,aio=threads -device virtio-blk-pci,scsi=off,bus=pci.0,addr=0x7,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1 -netdev tap,fd=28,id=hostnet0,vhost=on,vhostfd=30 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=00:1a:4a:16:01:01,bus=pci.0,addr=0x3 -chardev socket,id=charserial0,path=/var/run/ovirt-vmconsole-console/4496b49b-2894-4c9c-8c7d-1a482fba4c2e.sock,server,nowait -device isa-serial,chardev=charserial0,id=serial0 -chardev socket,id=charchannel0,path=/var/lib/libvirt/qemu/channels/4496b49b-2894-4c9c-8c7d-1a482fba4c2e.ovirt-guest-agent.0,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=ovirt-guest-agent.0 -chardev socket,id=charchannel1,path=/var/lib/libvirt/qemu/channels/4496b49b-2894-4c9c-8c7d-1a482fba4c2e.org.qemu.guest_agent.0,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=2,chardev=charchannel1,id=channel1,name=org.qemu.guest_agent.0 -device usb-tablet,id=input0,bus=usb.0,port=1 -vnc 10.35.72.4:0,password -k en-us -device qxl-vga,id=video0,ram_size=67108864,vram_size=33554432,vram64_size_mb=0,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=0x8 -object rng-random,id=objrng0,filename=/dev/urandom -device virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.0,addr=0x9 -msg timestamp=on


> 
> 6. We could probably have removed the USB from HE.

I don't think so, I do see "usb {type=pci, slot=0x01, bus=0x00, domain=0x0000, function=0x2}" in UI at "Compute->Virtual->MachinesHostedEngine->Vm Devices".
> 
> 
> - I see both have virtio-rng?
> - It's OK the HE doesn't have a balloon device.

Yes, both has the same values.
SHE-VM has:
"-device virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.0,addr=0x7 -msg timestamp=on"; 
guest has:
"-device virtio-rng-pci,rng=objrng0,id=rng0,bus=pci.0,addr=0x9 -msg timestamp=on"

Is there anything missing to move this to verified?

Comment 9 Nikolai Sednev 2017-08-15 11:33:16 UTC
> 4. I think these are OK, but need to understand the differences:
> HE: -no-reboot
> Guest VM: -no-shutdown
There is a high probability that this might be related to https://bugzilla.redhat.com/show_bug.cgi?id=1455119#c25.

Comment 10 Yaniv Kaul 2017-08-15 11:44:51 UTC
Looks good to me. The USB might be needed for Spice. 
Regular VM should not have NUMA settings, might be a 4.2 regression.

I'll ask about the '-device sga'.

Comment 11 Sandro Bonazzola 2017-12-20 11:39:13 UTC
This bugzilla is included in oVirt 4.2.0 release, published on Dec 20th 2017.

Since the problem described in this bug report should be
resolved in oVirt 4.2.0 release, published on Dec 20th 2017, it has been closed with a resolution of CURRENT RELEASE.

If the solution does not work for you, please open a new bug report.


Note You need to log in before you can comment on or make changes to this bug.