Hi
This is the first time I have posted a question on here.
I am attempting to deploy a Self Hosted Engine with RHV 4.4.8, RHEL 8.4 using a PowerFlex
(ScaleIO) volume. I have done this several times in the past with oVirt 4.3.x and 4.4.?
but for some reason on this occasion I am hitting a problem. I think I might know what it
is but I don't know how to fix it. The deployment appears to go fine up until the
point where the question is asked about which storage device I want the HE copied to, I
select Fibre Channel but unfortunately this fails and does not find any suitable devices -
I know that PowerFlex is not technically FC but the devices are recognised by multipathd
and have always worked previously (I was instrumental in getting the udev rules changed in
the PowerFlex 3.6 version to ensure the devices could be recognised by multipathd, whereas
previously it had required a udev rules edit).
The device I am trying to use is this:
# multipath -v2 -l
1abc8aad74a6630f-c4c045df00000000 dm-2 ##,##
size=120G features='1 queue_if_no_path' hwhandler='0' wp=rw
`-+- policy='service-time 0' prio=0 status=active
`- #:#:#:# scinia 252:0 active undef running
I can see in the log that the device is being partially discovered but it seems that a
'vendor_id' is wanted and this is something that udev does not report for a
PowerFlex device.
2021-11-02 07:07:10,057+0000 INFO otopi.ovirt_hosted_engine_setup.ansible_utils
ansible_utils._process_output:112 TASK [ovirt.ovirt.hosted_engine_setup : Get Fibre
Channel LUNs]
2021-11-02 07:07:10,960+0000 INFO otopi.ovirt_hosted_engine_setup.ansible_utils
ansible_utils._process_output:112 ok: [localhost]
2021-11-02 07:07:11,261+0000 DEBUG otopi.ovirt_hosted_engine_setup.ansible_utils
ansible_utils._process_output:106 PLAY RECAP [localhost] : ok: 5 changed: 0 unreachable: 0
skipped: 0 failed: 0
2021-11-02 07:07:11,362+0000 DEBUG otopi.ovirt_hosted_engine_setup.ansible_utils
ansible_utils.run:223 ansible-playbook rc: 0
2021-11-02 07:07:11,362+0000 DEBUG otopi.ovirt_hosted_engine_setup.ansible_utils
ansible_utils.run:230 ansible-playbook stdout:
2021-11-02 07:07:11,362+0000 DEBUG otopi.ovirt_hosted_engine_setup.ansible_utils
ansible_utils.run:233 ansible-playbook stderr:
2021-11-02 07:07:11,362+0000 DEBUG otopi.plugins.gr_he_ansiblesetup.core.storage_domain
storage_domain._query_fc_lunid:379 {'otopi_fc_devices': {'changed': False,
'ovirt_host_storages': [{'href':
'/ovirt-engine/api/hosts/80308d4a-ef91-40fd-8ee
e-60c8314b7e13/storage/19eadf533875920f-46da4fac00000000', 'id':
'19eadf533875920f-46da4fac00000000', 'host': {'href':
'/ovirt-engine/api/hosts/80308d4a-ef91-40fd-8eee-60c8314b7e13', 'id':
'80308d4a-ef91-40fd-8eee-60c8314b7e13'}, 'logical_unit
s': [{'discard_max_size': 1048576, 'discard_zeroes_data': False,
'id': '19eadf533875920f-46da4fac00000000', 'lun_mapping': 0,
'paths': 1, 'size': 111669149696, 'status': 'free'}],
'type': 'fcp'}], 'invocation': {'module_args':
{'host': 'pfxhci
14.hci.spoc', 'fcp': {'lun_id': -1}, 'fetch_nested': False,
'nested_attributes': [], 'follows': [], 'iscsi': None}},
'_ansible_no_log': False}, 'ansible-playbook_rc': 0}
2021-11-02 07:07:11,362+0000 DEBUG otopi.plugins.gr_he_ansiblesetup.core.storage_domain
storage_domain._select_lun:398 [{'href':
'/ovirt-engine/api/hosts/80308d4a-ef91-40fd-8eee-60c8314b7e13/storage/19eadf533875920f-46da4fac00000000',
'id': '1
9eadf533875920f-46da4fac00000000', 'host': {'href':
'/ovirt-engine/api/hosts/80308d4a-ef91-40fd-8eee-60c8314b7e13', 'id':
'80308d4a-ef91-40fd-8eee-60c8314b7e13'}, 'logical_units':
[{'discard_max_size': 1048576, 'discard_zeroes_data': False, 'i
d': '19eadf533875920f-46da4fac00000000', 'lun_mapping': 0,
'paths': 1, 'size': 111669149696, 'status': 'free'}],
'type': 'fcp'}]
2021-11-02 07:07:11,362+0000 DEBUG otopi.plugins.gr_he_ansiblesetup.core.storage_domain
storage_domain._select_lun:407 [{'href':
'/ovirt-engine/api/hosts/80308d4a-ef91-40fd-8eee-60c8314b7e13/storage/19eadf533875920f-46da4fac00000000',
'id': '1
9eadf533875920f-46da4fac00000000', 'host': {'href':
'/ovirt-engine/api/hosts/80308d4a-ef91-40fd-8eee-60c8314b7e13', 'id':
'80308d4a-ef91-40fd-8eee-60c8314b7e13'}, 'logical_units':
[{'discard_max_size': 1048576, 'discard_zeroes_data': False, 'i
d': '19eadf533875920f-46da4fac00000000', 'lun_mapping': 0,
'paths': 1, 'size': 111669149696, 'status': 'free'}],
'type': 'fcp'}]
2021-11-02 07:07:11,362+0000 DEBUG otopi.context context._executeMethod:145 method
exception
Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/otopi/context.py", line 132, in
_executeMethod
method['method']()
File
"/usr/share/ovirt-hosted-engine-setup/scripts/../plugins/gr-he-ansiblesetup/core/storage_domain.py",
line 738, in _closeup
lun = self._query_fc_lunid()
File
"/usr/share/ovirt-hosted-engine-setup/scripts/../plugins/gr-he-ansiblesetup/core/storage_domain.py",
line 395, in _query_fc_lunid
return self._select_lun(available_luns)
File
"/usr/share/ovirt-hosted-engine-setup/scripts/../plugins/gr-he-ansiblesetup/core/storage_domain.py",
line 418, in _select_lun
'vendorID': entry['logical_units'][0]['vendor_id'],
KeyError: 'vendor_id'
2021-11-02 07:07:11,364+0000 ERROR otopi.context context._executeMethod:154 Failed to
execute stage 'Closing up': 'vendor_id'
2021-11-02 07:07:11,364+0000 DEBUG otopi.context context.dumpEnvironment:765 ENVIRONMENT
DUMP - BEGIN
2021-11-02 07:07:11,364+0000 DEBUG otopi.context context.dumpEnvironment:775 ENV
BASE/error=bool:'True'
2021-11-02 07:07:11,365+0000 DEBUG otopi.context context.dumpEnvironment:775 ENV
BASE/exceptionInfo=list:'[(<class 'KeyError'>,
KeyError('vendor_id',), <traceback object at 0x7ff0f4e6da88>)]'
2021-11-02 07:07:11,365+0000 DEBUG otopi.context context.dumpEnvironment:775 ENV
QUESTION/1/OVEHOSTED_STORAGE_DOMAIN_TYPE=str:'fc'
Is there any way I can edit something to prevent this vendor_id being required?
As I said, this has worked previously so I can only assume something has been added that
now checks this vendor_id
Many thanks in advance