Bug 1401303

Summary: run VM failes due to: libvirtError: XML error: file '/dev/urandom' is not a supported random source
Product: [oVirt] ovirt-engine Reporter: Eyal Edri <eedri>
Component: Backend.CoreAssignee: Michal Skrivanek <michal.skrivanek>
Status: CLOSED UPSTREAM QA Contact: Raz Tamir <ratamir>
Severity: urgent Docs Contact:
Priority: unspecified    
Version: 4.1.0CC: bugs, michal.skrivanek
Target Milestone: ---Keywords: Automation, AutomationBlocker, Regression
Target Release: ---Flags: rule-engine: ovirt-4.1+
gklein: blocker?
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-12-08 14:00:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Virt RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Eyal Edri 2016-12-04 13:33:01 UTC
Description of problem:
run VM test fail on ovirt system tests in CI

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


How reproducible:
always


Steps to Reproduce:
1.run ovirt system tests on master branch
2.wait for 004_basic_sanity.vm_run test
3.see failure

Actual results:


Expected results:
As long we we run on 7.2 hosts, tests shouldn't fail on any 7.3 features,
until Centos 7.3 is out. (if this is required for the test to run)


Additional info:

from vdsm.log:

2016-12-02 04:31:12,527-05 DEBUG
[org.ovirt.engine.core.vdsbroker.monitoring.EventVmStatsRefresher]
(ForkJoinPool-1-worker-4) [83b6b5d] processing event for host
lago-basic-suite-master-host0 data:
39710f89-9fa2-423e-9fa8-1448ca51f166:
status = Down
timeOffset = 0
exitReason = 1
exitMessage = XML error: file '/dev/urandom' is not a supported random source
exitCode = 1

and here is the vdsm log:

2016-12-02 04:31:10,618 ERROR (vm/39710f89) [virt.vm]
(vmId='39710f89-9fa2-423e-9fa8-1448ca51f166') The vm start process
failed (vm:613)
Traceback (most recent call last):
  File "/usr/share/vdsm/virt/vm.py", line 549, in _startUnderlyingVm
    self._run()
  File "/usr/share/vdsm/virt/vm.py", line 1980, in _run
    self._connection.createXML(domxml, flags),
  File "/usr/lib/python2.7/site-packages/vdsm/libvirtconnection.py",
line 128, in wrapper
    ret = f(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/vdsm/utils.py", line 936, in wrapper
    return func(inst, *args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/libvirt.py", line 3611, in createXML
    if ret is None:raise libvirtError('virDomainCreateXML() failed', conn=self)
libvirtError: XML error: file '/dev/urandom' is not a supported random source

Full logs can be found on the job:
http://jenkins.ovirt.org/job/test-repo_ovirt_experimental_master/3816/

Specifically engine log:
http://jenkins.ovirt.org/job/test-repo_ovirt_experimental_master/3816/artifact/exported-artifacts/basic_suite_master.sh-el7/exported-artifacts/test_logs/basic-suite-master/post-002_bootstrap.py/lago-basic-suite-master-engine/_var_log_ovirt-engine/engine.log

host 0 vdsm log:
http://jenkins.ovirt.org/job/test-repo_ovirt_experimental_master/3816/artifact/exported-artifacts/basic_suite_master.sh-el7/exported-artifacts/test_logs/basic-suite-master/post-002_bootstrap.py/lago-basic-suite-master-host0/_var_log_vdsm/vdsm.log


host 1 vdsm log:
http://jenkins.ovirt.org/job/test-repo_ovirt_experimental_master/3816/artifact/exported-artifacts/basic_suite_master.sh-el7/exported-artifacts/test_logs/basic-suite-master/post-002_bootstrap.py/lago-basic-suite-master-host1/_var_log_vdsm/vdsm.log

Comment 1 Eyal Edri 2016-12-04 16:23:01 UTC
From first glance this patch looks the one that did it:
https://gerrit.ovirt.org/#/c/67470/


core: New VM has RND device by default

Script adds urandom rng device to Blank template and all predefined
instance types. This causes that new VMs will inherit such RNG device.

Custom instance types are not changed. The assumption is that if they
were created without a RNG device, it was an intentional decision.

Change-Id: I93a51b67c0e8bff06152d9fe7a4315efd509774d
Bug-Url: https://bugzilla.redhat.com/1337101
Signed-off-by: Jakub Niedermertl <jniederm>

Comment 2 Michal Skrivanek 2016-12-05 07:00:16 UTC
You can create a 4.0 cluster for the timeveing. 4.1 requires 7.3/F24+virt-preview

Comment 3 Yaniv Kaul 2016-12-08 14:00:03 UTC
This is not happening on RHEL, nor will happen in CentOS 7.3.