Bug 1352160 - hosted-engine-setup fails on iSCSI when tgpt is negative
Summary: hosted-engine-setup fails on iSCSI when tgpt is negative
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: ovirt-hosted-engine-setup
Classification: oVirt
Component: Plugins.Block
Version: 2.0.0.1
Hardware: x86_64
OS: Linux
unspecified
high
Target Milestone: ovirt-4.0.1
: 2.0.1
Assignee: Simone Tiraboschi
QA Contact: Nikolai Sednev
URL:
Whiteboard:
Depends On: 1354199
Blocks: 1306965
TreeView+ depends on / blocked
 
Reported: 2016-07-01 20:40 UTC by Thiago Linhares
Modified: 2019-04-28 13:52 UTC (History)
6 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2016-07-19 06:23:26 UTC
oVirt Team: Integration
Embargoed:
rule-engine: ovirt-4.0.z+
rule-engine: planning_ack+
dfediuck: devel_ack+
gklein: testing_ack+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
oVirt gerrit 60261 0 master MERGED storage: allow parsing negative tgpt 2016-07-11 07:41:11 UTC
oVirt gerrit 60460 0 ovirt-hosted-engine-setup-2.0 MERGED storage: allow parsing negative tgpt 2016-07-11 08:18:43 UTC

Description Thiago Linhares 2016-07-01 20:40:04 UTC
Description of problem:
When trying to install oVirt 4 hosted-engine, using iscsi storage, it outputs the following error:
[ ERROR ] Failed to execute stage 'Environment customization': 'NoneType' object has no attribute 'groupdict'

How reproducible:


Steps to Reproduce:
Install Centos 7.2 and all its updates
Install oVirt 4.0 repository and download ovirt-hosted-engine-setup package
Choose "iscsi" as Storage configuration.
Fill in IP ADDRESS of target.
In my case, I've got NONE authentication
Thats it. It will return and error output.

Actual results:
Error while installing hosted-engine on iscsi.

Expected results:
Success on installing hosted-engine on iscsi storage, as it worked on oVirt 3.6

Additional info:


2016-07-01 18:15:33 DEBUG otopi.plugins.gr_he_setup.storage.blockd blockd._iscsi_discovery:321 {'status': {'message': 'Done', 'code': 0}, 'items': [u'172.16.0.230:3260,-1 nas.fixit.local:engine.fixit', u'172.16.0.230:3260,-1 nas.fixit.local:lun.dc', u'172.16.0.230:3260,-1 nas.fixit.local:lun.fixit']}
2016-07-01 18:15:33 DEBUG otopi.context context._executeMethod:142 method exception
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/otopi/context.py", line 132, in _executeMethod
    method['method']()
  File "/usr/share/ovirt-hosted-engine-setup/scripts/../plugins/gr-he-setup/storage/blockd.py", line 590, in _customization
    password,
  File "/usr/share/ovirt-hosted-engine-setup/scripts/../plugins/gr-he-setup/storage/blockd.py", line 332, in _iscsi_discovery
    mg = m.groupdict()
AttributeError: 'NoneType' object has no attribute 'groupdict'
2016-07-01 18:15:33 ERROR otopi.context context._executeMethod:151 Failed to execute stage 'Environment customization': 'NoneType' object has no attribute 'groupdict'
2016-07-01 18:15:33 DEBUG otopi.context context.dumpEnvironment:760 ENVIRONMENT DUMP - BEGIN
2016-07-01 18:15:33 DEBUG otopi.context context.dumpEnvironment:770 ENV BASE/error=bool:'True'
2016-07-01 18:15:33 DEBUG otopi.context context.dumpEnvironment:770 ENV BASE/exceptionInfo=list:'[(<type 'exceptions.AttributeError'>, AttributeError("'NoneType' object has no attribute 'groupdict'",), <traceback object at 0x2cc15a8>)]'
2016-07-01 18:15:33 DEBUG otopi.context context.dumpEnvironment:774 ENVIRONMENT DUMP - END

Comment 1 Simone Tiraboschi 2016-07-02 13:41:50 UTC
This is not specific to ovirt-hosted-engine-setup from 4.0.

^(?P<portal_hostname>[\w\d\-\.]+):(?P<portal_port>\d+),(?P<tgpt>\d+) (?P<iqn>[\w\d\-\.:]+)$
We use this regular expression to decode the response of discoverSendTargets

But in your case you received:
172.16.0.230:3260,-1 nas.fixit.local:engine.fixit
172.16.0.230:3260,-1 nas.fixit.local:lun.dc
172.16.0.230:3260,-1 nas.fixit.local:lun.fixit

And we didn't get any match since our regular expression is not accepting the '-' in the tgpt parameter.

Nir, is -1 a valid tgpt?

Comment 2 Thiago Linhares 2016-07-04 14:47:40 UTC
(In reply to Simone Tiraboschi from comment #1)
> This is not specific to ovirt-hosted-engine-setup from 4.0.
> 
> ^(?P<portal_hostname>[\w\d\-\.]+):(?P<portal_port>\d+),(?P<tgpt>\d+)
> (?P<iqn>[\w\d\-\.:]+)$
> We use this regular expression to decode the response of discoverSendTargets
> 
> But in your case you received:
> 172.16.0.230:3260,-1 nas.fixit.local:engine.fixit
> 172.16.0.230:3260,-1 nas.fixit.local:lun.dc
> 172.16.0.230:3260,-1 nas.fixit.local:lun.fixit
> 
> And we didn't get any match since our regular expression is not accepting
> the '-' in the tgpt parameter.
> 
> Nir, is -1 a valid tgpt?

I'm not sure whether its a valid tpgt or not, as it's just the default setup of freenas software.

Anyway, I've managed to change the regex, allowing it to recognize "-" character, as follow:
full_target_template = (
            '^(?P<portal_hostname>[\w\d\-\.]+):(?P<portal_port>\d+),'
            '(?P<tgpt>[\d\-]+) (?P<iqn>[\w\d\-\.:]+)$'

Comment 3 Nir Soffer 2016-07-04 16:02:07 UTC
(In reply to Simone Tiraboschi from comment #1)
> Nir, is -1 a valid tgpt?

In vdsm we treat it as integer. -1 is valid for vdsm, and should be valid for
hosted engine setup. If the value is not specified we use 1 as default.

Comment 4 Nikolai Sednev 2016-07-18 15:05:07 UTC
Successfully deployed HE over iSCSI on these components:

Host:
rhevm-appliance-20160714.0-1.el7ev.noarch.rpm
ovirt-engine-sdk-python-3.6.7.0-1.el7ev.noarch                             
qemu-kvm-rhev-2.3.0-31.el7_2.18.x86_64                              
mom-0.5.5-1.el7ev.noarch         
ovirt-setup-lib-1.0.2-1.el7ev.noarch
libvirt-client-1.2.17-13.el7_2.5.x86_64
ovirt-vmconsole-host-1.0.4-1.el7ev.noarch
ovirt-hosted-engine-ha-2.0.1-1.el7ev.noarch
ovirt-hosted-engine-setup-2.0.1-1.el7ev.noarch
ovirt-host-deploy-1.5.1-1.el7ev.noarch
ovirt-vmconsole-1.0.4-1.el7ev.noarch
vdsm-4.18.6-1.el7ev.x86_64
sanlock-3.2.4-2.el7_2.x86_64
ovirt-imageio-daemon-0.3.0-0.el7ev.noarch
ovirt-imageio-common-0.3.0-0.el7ev.noarch
Linux version 3.10.0-327.30.1.el7.x86_64 (mockbuild.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) ) #1 SMP Wed Jul 13 22:09:46 EDT 2016
Linux 3.10.0-327.30.1.el7.x86_64 #1 SMP Wed Jul 13 22:09:46 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux
Red Hat Enterprise Linux Server release 7.2 (Maipo)

Engine:
rhevm-doc-4.0.0-2.el7ev.noarch
rhev-guest-tools-iso-4.0-4.el7ev.noarch
rhevm-4.0.1.1-0.1.el7ev.noarch
rhevm-spice-client-x86-msi-4.0-2.el7ev.noarch
rhevm-branding-rhev-4.0.0-3.el7ev.noarch
rhevm-spice-client-x64-msi-4.0-2.el7ev.noarch
rhevm-guest-agent-common-1.0.12-2.el7ev.noarch
rhevm-dependencies-4.0.0-1.el7ev.noarch
rhevm-setup-plugins-4.0.0.1-1.el7ev.noarch
Linux version 3.10.0-327.22.2.el7.x86_64 (mockbuild.eng.bos.redhat.com) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-4) (GCC) ) #1 SMP Thu Jun 9 10:09:10 EDT 2016
Linux 3.10.0-327.22.2.el7.x86_64 #1 SMP Thu Jun 9 10:09:10 EDT 2016 x86_64 x86_64 x86_64 GNU/Linux
Red Hat Enterprise Linux Server release 7.2 (Maipo)

Comment 5 Sandro Bonazzola 2016-07-19 06:23:26 UTC
Since the problem described in this bug report should be
resolved in oVirt 4.0.1 released on July 19th 2016, it has been closed with a
resolution of CURRENT RELEASE.

For information on the release, and how to update to this release, follow the link below.

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

http://www.ovirt.org/release/4.0.1/


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