Bug 1123754 - Direct FC lun disk details aren't validated
Summary: Direct FC lun disk details aren't validated
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Virtualization Manager
Classification: Red Hat
Component: ovirt-engine
Version: 3.4.0
Hardware: x86_64
OS: Linux
high
high
Target Milestone: ---
: 3.5.0
Assignee: Daniel Erez
QA Contact: Elad
URL:
Whiteboard: storage
Depends On: 1096217
Blocks: rhev3.5beta 1156165
TreeView+ depends on / blocked
 
Reported: 2014-07-28 08:00 UTC by Udayendu Sekhar Kar
Modified: 2019-05-20 11:17 UTC (History)
17 users (show)

Fixed In Version: vt2.2
Doc Type: Enhancement
Doc Text:
Upon creating a new DirectLUN disk, the LUN visibility on a host is now validated. If the specified LUN isn't visible to the host, the action would be aborted and a proper error message returned. Note that the validation is only executed if a host is specified by the user; otherwise, no validation is performed.
Clone Of: 1096217
Environment:
Last Closed: 2015-02-11 18:06:53 UTC
oVirt Team: Storage
Target Upstream Version:
Embargoed:
amureini: needinfo+


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2015:0158 0 normal SHIPPED_LIVE Important: Red Hat Enterprise Virtualization Manager 3.5.0 2015-02-11 22:38:50 UTC
oVirt gerrit 31676 0 'None' 'MERGED' 'core,restapi: DirectLUN disk - validate LUN visibilty' 2019-11-18 03:16:13 UTC
oVirt gerrit 31924 0 'None' 'MERGED' 'core,restapi: DirectLUN disk - validate LUN visibilty' 2019-11-18 03:16:13 UTC

Description Udayendu Sekhar Kar 2014-07-28 08:00:21 UTC
+++ This bug was initially created as a clone of Bug #1096217 +++

When adding a direct iSCSI direct LUN disk using the RESTAPI without creating a storage domain, the details given by the user aren't validated, and stored in the database regardless of their correctness. In particular the LUN id isn't validated, just stored in the database. Other attributes, like the vendor id, the model id, the serial number and the size aren't retrieved from the iSCSI server and left empty in the database.

This can be reproduced with a Python script like this:

#!/usr/bin/python

import ovirtsdk.api
import ovirtsdk.xml.params

api = ovirtsdk.api.API(
    url="https://rhel.example.com/ovirt-engine/api",
    username="admin@internal",
    password="******",
    insecure=True,
    debug=True)

# Create the iSCSI storage connection:
sc = ovirtsdk.xml.params.StorageConnection()
sc.set_address("192.168.122.1")
sc.set_type("iscsi")
sc.set_port(3260)
sc.set_target("iqn.2014-01.com.example:iscsi")
sc = api.storageconnections.add(sc)

# Add the direct LUN disk:
lu = ovirtsdk.xml.params.LogicalUnit()
lu.set_id("something_that_doesnt_exist")
lu.set_address(sc.get_address())
lu.set_port(sc.get_port())
lu.set_target(sc.get_target())
storage = ovirtsdk.xml.params.Storage()
storage.set_type("iscsi")
storage.set_logical_unit([lu])
disk = ovirtsdk.xml.params.Disk()
disk.set_name("mylun")
disk.set_interface("virtio")
disk.set_type("iscsi")
disk.set_format("raw")
disk.set_lun_storage(storage)
disk = api.disks.add(disk)

api.disconnect()

This succeeds, and the LUN disk is created, but will never work. The expected result is that incorrect LUN ids are detected, and that the additional attributes are populated correctly.

Comment 1 Allon Mureinik 2014-07-28 11:38:46 UTC
Udayendu, as far as I can see this is just a clone to track the same issue as Bug #1096217 for RHEV (as opposed to oVirt).
Am I missing anything?

Comment 2 Udayendu Sekhar Kar 2014-07-28 13:37:32 UTC
Yes Allon,

This is just a clone some that I can map it to the service request opened by customer for RHEV as we can't map the upstream BZ to the ticket.

But customer is having this issue, so we need some quick fix.

Thanks,
Uday

Comment 3 Udayendu Sekhar Kar 2014-08-05 03:07:58 UTC
Allon,

One more point I would like to add here:

- Customer is using the FC lun.

Thanks,
Uday

Comment 5 Elad 2014-09-15 11:44:42 UTC
When trying to add a FC direct LUN via REST with wrong parameters, the LUN is not added to the DB and the operation fails with:
<fault>
<reason>Operation Failed</reason>
<detail>Entity not found: null</detail>
</fault>


note that in order to validate the existence of the LUN with the right parameters, need to pass the host in the XML request.


Verified using rhev 3.5 vt3.1

Comment 6 Tal Nisan 2014-11-26 11:32:49 UTC
Please supply doc text

Comment 8 errata-xmlrpc 2015-02-11 18:06:53 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

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

https://rhn.redhat.com/errata/RHSA-2015-0158.html


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