Support iSER driver within the ISCSIDriver flow

Registered by Aviram Bar-Haim

Currently the iSER driver is supported over TGT only, and there are a couple of iSER classes that inherits from iSCSI classes, but most of their functionality is the same as the iSCSI classes. This code duplication causes instability in the iSER driver code, when new features or changes are added to the iSCSI driver flow.
This code duplication can be prevented with an easy fix to support enable_iser parameter within iSCSI Tgt/LIO classes.
All needed for RDMA support over iSER, in the Tgt and LIO cases, is to set just one extra parameter in the volume creation stage.

The changes required:
1. Fix bug https://bugs.launchpad.net/cinder/+bug/1396265 and add the correct driver parameter, with a configurable value to VOLUME_CONF and VOLUME_CONF_WITH_CHAP_AUTH.
2. Add a new ‘enable_iser’ parameter that is set to false by default.
3. Set the driver parameter at the VOLUME_CONFs template in TgtAdm, according to the 'enable_iser'.
4. Set ISCSIDriver's 'driver_volume_type' to ‘iscsi’ or ‘iser’ value, according to the ‘enable_iser’ parameter.

This change will act as a replacement to the current iSER Tgt code, so deprecation alert will be added to ISERTgtAdm.

Blueprint information

Status:
Complete
Approver:
Mike Perez
Priority:
Medium
Drafter:
Aviram Bar-Haim
Direction:
Approved
Assignee:
Aviram Bar-Haim
Definition:
Approved
Series goal:
Accepted for kilo
Implementation:
Implemented
Milestone target:
milestone icon 2015.1.0
Started by
Mike Perez
Completed by
Mike Perez

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:bp/support-iscsi-driver,n,z

Addressed by: https://review.openstack.org/142138
    Support iSER driver within the ISCSIDriver flow

https://review.openstack.org/#/c/148097/1

Addressed by: https://review.openstack.org/149897
    Support iSER driver within the ISCSITarget flow

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.