On Wed, Jun 20, 2018 at 9:25 PM Nir Soffer <nsoffer(a)redhat.com> wrote:
On Wed, Jun 20, 2018 at 11:06 AM Sandro Bonazzola
<sbonazzo(a)redhat.com>
wrote:
> 2018-06-20 0:21 GMT+02:00 Nir Soffer <nsoffer(a)redhat.com>:
>
>> I'm trying to add a host running Fedora 28 to engine 4.2, and
>> installation
>> fails with:
>>
>> 2018-06-20 01:14:26,137+0300 DEBUG otopi.context
>> context._executeMethod:143 method exception
>> Traceback (most recent call last):
>> File "/tmp/ovirt-Z5BGYej3Qa/pythonlib/otopi/context.py", line 133,
in
>> _executeMethod
>> method['method']()
>> File
>>
"/tmp/ovirt-Z5BGYej3Qa/otopi-plugins/ovirt-host-deploy/vdsm/vdsmid.py",
>> line 84, in _packages
>> self.packager.install(('dmidecode',))
>> File "/tmp/ovirt-Z5BGYej3Qa/pythonlib/otopi/packager.py", line 102,
in
>> install
>> raise NotImplementedError(_('Packager install not implemented'))
>> NotImplementedError: Packager install not implemented
>> 2018-06-20 01:14:26,138+0300 ERROR otopi.context
>> context._executeMethod:152 Failed to execute stage 'Environment packages
>> setup': Packager install not implemented
>>
>>
> Can you please send output of "rpm -qa|grep otopi" ? Please note that
> otopi and ovirt-host-deploy are installed on the 4.2 engine host and
> executed with ssh on the fedora 28 host. So you'll need otopi and
> ovirt-host-deploy from master installed on the 4.2 engine host.
>
On the 4.2 engine host I'm using latest 4.2 release and repos.
Tried again with engine master (2e3a05ffc83611a2cb18c2ca7268be2d489834f9)
on CentOS 7.5 (1804).
$ rpm -qa | egrep 'otopi|ovit-host'
otopi-common-1.8.0-0.0.master.20180614102257.git6c66781.el7.noarch
python2-otopi-1.8.0-0.0.master.20180614102257.git6c66781.el7.noarch
$ rpm -qa | egrep 'ovirt-release'
ovirt-release-master-4.3.0-0.1.master.20180620000053.git025660e.el7.noarch
Building and installing engine was great pain. Developer documentation is
in the same poor state it was 5 years ago. Thanks Daniel for the help!
Adding Fedora 28 host fails with (in host deploy log):
AttributeError: 'str' object has no attribute 'decode'
2018-06-21 02:12:18,864+0300 ERROR otopi.context context._executeMethod:152
Failed to execute stage 'Initializing': 'str' object has no attribute
'decode'
After fixing this we fail with (in host deploy log):
TypeError: a bytes-like object is required, not 'str'
2018-06-21 02:21:50,148+0300 ERROR otopi.context context._executeMethod:152
Failed to execute stage 'Setup validation': a bytes-like object is
required, not 'str'
Both issues fixed in
https://gerrit.ovirt.org/#/c/92437/
With this patch we reach the next failure in otopi, fixed in
https://gerrit.ovirt.org/#/c/92435/
Next failure is in TASK [ovirt-provider-ovn-driver : Install
ovirt-provider-ovn-driver]:
The conditional check 'ovn_central | ipaddr' failed. The error was: The
ipaddr filter requires python-netaddr be installed on the ansible controller
After installing python-netaddr on the engine host, we passed
this step.
I don't know why this ansible playbook is running, I answered NO
when engine-setup asked about OVN.
I'm not sure where the dependency on python-netaddr should be.
Next failure is in TASK [ovirt-host-deploy-firewalld : Enable SSH port]
unsupported version of firewalld, requires >= 0.2.11
# rpm -q firewalld
firewalld-0.5.2-2.fc28.noarch
Obviously the complain is incorrect, "0.5.2" > "0.2.11".
I worked around this by disabling firewall configuration when adding
a host.
The host was added but was not reachable.
To fix this, I disabled the firewall on the host using:
iptables -F
The next issue is missing ovirtmgmt bridge on the host, using setup networks
fixed the issue - and the host became UP.
I tried to add storage, and found that:
- engine "New Domain" dialog is very broken now. See attached screenshots.
- block storage is broken because of lvm bug, caused by GCC bug
see
https://bugzilla.redhat.com/1593836
- file storage is broken because sanlock fail to write to its lockfile -
selinux again.
see
https://bugzilla.redhat.com/1593853
To work around this, I switch to permissive mode:
setenforce 0
At this point I could upload and download images from engine UI!
So in summary, to add Fedora 28 host:
- patch ovirt-host-deploy:
https://gerrit.ovirt.org/#/c/92437/ and install
on engine host
- patch otopi:
https://gerrit.ovirt.org/#/c/92435/ and install on engine
host
- install python-netaddr on engine host
- need to file a bug
- disable firewall setup in engine "Add host" dialog
- need to file a bug
- disable firewall on the host
- use setup networks to add ovirtmgmt network to the host
- forget about block storage for now
https://bugzilla.redhat.com/1593836
- change selinux to permissive mode
https://bugzilla.redhat.com/1593853
- we need a tracker bug for fedora 28 issues
Nir