Improve efficiency of Hyper-V attaching iSCSI volumes

Bug #1372827 reported by Luis Fernández Álvarez
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
os-win
Fix Released
Medium
Lucian Petrut

Bug Description

The Hyper-V driver in Nova is not very efficient attaching Cinder volumes to the VMs.

It always tries to refresh the entire connection to the iSCSI target:

https://github.com/openstack/nova/blob/master/nova/virt/hyperv/volumeutilsv2.py#L87

This is a time consuming task that also blocks additional calls during this time.

The class should be refactored to work in a more efficient way. Calling the 'Update' method everytime a volume is attached should be replaced by a more intelligent mechanism. As reported in https://bugs.launchpad.net/nova/+bug/1372823 a call to 'self._conn_storage.query("SELECT * FROM MSFT_iSCSISessionToDisk")' could help.

Sean Dague (sdague)
Changed in nova:
status: New → Confirmed
importance: Undecided → Wishlist
Changed in nova:
status: Confirmed → Triaged
assignee: nobody → Lucian Petrut (petrutlucian94)
Changed in os-win:
assignee: nobody → Lucian Petrut (petrutlucian94)
Changed in os-win:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to os-win (master)

Reviewed: https://review.openstack.org/249291
Committed: https://git.openstack.org/cgit/openstack/os-win/commit/?id=b72790bacfd356021b2dd870ade6c9c216fd14a0
Submitter: Jenkins
Branch: master

commit b72790bacfd356021b2dd870ade6c9c216fd14a0
Author: Lucian Petrut <email address hidden>
Date: Fri Nov 20 16:20:40 2015 +0200

    iSCSI initiator refactoring using iscsidsc.dll

    This patch adds a new iscsi initiator utils class,
    leveraging iscsidsc.dll functions.

    The advantages are:
    * Same error output as iscsicli, without the proccess spawn
      overhead
    * Improved overall performance, having finer control over
      the iSCSI initiator and avoiding unnecessary operations
    * Fixed bugs related to LUN discovery
    * Static targets are used instead of having portal discovery
      sessions. This will let us use backends that require
      discovery credentials (which may be different than the
      credentials used when logging in targets)
    * improved MPIO support (the caller must request logging in the
      target for each of the available portals. Logging in multiple
      targets exporting the same LUN is also supported). Also, a
      specific initiator can be requested when creating sessions.

    Closes-Bug: #1403836
    Closes-Bug: #1372823
    Closes-Bug: #1372827

    Co-Authored-By: Alin Balutoiu <email address hidden>
    Change-Id: Ie037cf1712a28e85e5eca445eea3df883c6b6831

Changed in os-win:
status: In Progress → Fix Released
Claudiu Belu (cbelu)
Changed in os-win:
importance: Undecided → Medium
Revision history for this message
Davanum Srinivas (DIMS) (dims-v) wrote :

Anything else to do in Nova?

Changed in nova:
status: Triaged → Incomplete
Revision history for this message
Claudiu Belu (cbelu) wrote :

Don't think so.

Revision history for this message
Claudiu Belu (cbelu) wrote :

No change was necessary to be done in nova. The issue has been addressed in os-win. Removing nova.

no longer affects: nova
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.