[ovirt-users] Failed to read hardware information

David Pinkerton dpinkert at redhat.com
Mon Oct 10 01:48:12 UTC 2016

I've spent the weekend trying to get to the bottom of this issue.

Adding a Host fails:

>From RHVM

VDSM rhv1 command failed: Connection reset by peer
Could not get hardware information for host rhv1
VDSM rhv1 command failed: Failed to read hardware information
Host rhv1 installed
Network changes were saved on host rhv1
Installing Host rhv1. Stage: Termination.
Installing Host rhv1. Retrieving installation logs to:
Installing Host rhv1. Stage: Pre-termination.
Installing Host rhv1. Starting ovirt-vmconsole-host-sshd.
Installing Host rhv1. Starting vdsm.
Installing Host rhv1. Stopping libvirtd.
Installing Host rhv1. Stage: Closing up.
Installing Host rhv1. Setting kernel arguments.
Installing Host rhv1. Stage: Transaction commit.
Installing Host rhv1. Enrolling serial console certificate.
Installing Host rhv1. Enrolling certificate.
Installing Host rhv1. Stage: Misc configuration.

This was in the /var/log/vdsm/vdsm.log on the host trying to be added:

11:57:10,276::API::1340::vds::(getHardwareInfo) failed to retrieve hardware
Traceback (most recent call last):
  File "/usr/share/vdsm/API.py", line 1337, in getHardwareInfo
    hw = supervdsm.getProxy().getHardwareInfo()
  File "/usr/lib/python2.7/site-packages/vdsm/supervdsm.py", line 53, in
    return callMethod()
  File "/usr/lib/python2.7/site-packages/vdsm/supervdsm.py", line 51, in
  File "<string>", line 2, in getHardwareInfo
  File "/usr/lib64/python2.7/multiprocessing/managers.py", line 759, in
    kind, result = conn.recv()

and then VDSM fails to start.

Looking at the source code...

def getHardwareInfoStructure():
    dmiInfo = getAllDmidecodeInfo()
    sysStruct = {}
    for k1, k2 in (('system', 'Manufacturer'),
                   ('system', 'Product Name'),
                   ('system', 'Version'),
                   ('system', 'Serial Number'),
                   ('system', 'UUID'),
                   ('system', 'Family')):
        val = dmiInfo.get(k1, {}).get(k2, None)
        if val not in [None, 'Not Specified']:
            sysStruct[(k1 + k2).replace(' ', '')] = val

return sysStruct

Running dmidecode from command line I get..

System Information
        Manufacturer: Supermicro
        Product Name: H8DM8-2
        Version: 1234567890
        Serial Number: 1234567890
        UUID: 00020003-0004-0005-0006-000700080009
        Wake-up Type: Power Switch
        SKU Number: To Be Filled By O.E.M.
        Family: To Be Filled By O.E.M.

Q: Is the string in Family the source of my problems??

Q: Any work arounds??


David Pinkerton
Red Hat Asia Pacific Pty. Ltd.
Level 11, Canberra House
40 Marcus Clarke Street
Canberra 2600 ACT

Mobile: +61-488-904-232
Email: david.pinkerton at redhat.com
Web: http://apac.redhat.com/ <http://apac.redhat.com/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/users/attachments/20161010/9d547b9c/attachment-0001.html>

More information about the Users mailing list