Feature #1254

Full iSCSI support

Added by SZTAKI LPDS about 9 years ago. Updated about 9 years ago.

Status:ClosedStart date:04/25/2012
Priority:LowDue date:
Assignee:Jaime Melis% Done:

0%

Category:Drivers - Auth
Target version:Release 3.6
Resolution:fixed Pull request:

Description

Dear Developers,

We improved the stock iscsi drivers to support the non persistent disk images. There are other small improvements, like tgtd configuration auto saving, and iscsi TID vs image id independency. Please check the attached patch.

iscsi_persistent.patch Magnifier (10.6 KB) SZTAKI LPDS, 04/25/2012 09:28 AM

iscsi_persistent_v2.patch Magnifier (10.6 KB) SZTAKI LPDS, 05/11/2012 06:55 PM

iscsi_persistent_v3.patch Magnifier (12.4 KB) SZTAKI LPDS, 05/15/2012 03:42 PM

Associated revisions

Revision b91bb292
Added by Jaime Melis about 9 years ago

Feature #1254: datastore_mad part of the full iscsi support.

This commit has adapted from the contribution provided by SZTAKI LPDS.

Revision d3d12259
Added by Jaime Melis about 9 years ago

Feature #1254: BASE_TID is hardcoded to 1. TARGET_CONF is globally defined in the configuration file.

Revision 3058af7c
Added by Jaime Melis about 9 years ago

Feature #1254: tm_mad part of the full iSCSI support.

This commit has adapted from the contribution provided by SZTAKI LPDS.

Revision 7619c2f6
Added by Jaime Melis about 9 years ago

Feature #1254: Dump tgtadmin configuration in the clone and rm events.

Revision 4abee17e
Added by Jaime Melis about 9 years ago

Feature #1254: Completely drop BASE_TID

Revision 14f6f1c8
Added by Jaime Melis about 9 years ago

Feature #1254: fix small clone typos

Revision 666c0eef
Added by Jaime Melis about 9 years ago

Feature #1254: load iscsi.conf from all the tm iscsi scripts

Revision 7bdc2ab1
Added by Jaime Melis about 9 years ago

Feature #1254: Enhance TM MV action

Revision 432ad0ab
Added by Jaime Melis about 9 years ago

Feature #1254: Fix bugs in full iSCSI support

History

#1 Updated by Jaime Melis about 9 years ago

  • Status changed from New to Assigned
  • Assignee set to Jaime Melis
  • Target version set to Release 3.8

This patch is completely aligned with our roadmap. Thanks a lot for your contribution, we will include it for OpenNebula 3.6 almost as is, with a few changes. Thanks again and congratulations for a really good job!

#2 Updated by SZTAKI LPDS about 9 years ago

We are really glad that you can use it!

Jaime Melis wrote:

This patch is completely aligned with our roadmap. Thanks a lot for your contribution, we will include it for OpenNebula 3.6 almost as is, with a few changes. Thanks again and congratulations for a really good job!

#3 Updated by SZTAKI LPDS about 9 years ago

Dear Developers,

We found a bug in the previous patch, the tgtadm_get_next_free_tid function at scripts_common.sh returns NULL when called for the first time (when there is no iscsi targets).
The new patch is attached.

#4 Updated by SZTAKI LPDS about 9 years ago

Dear Developers,

We further improved the driver to solve a race condition which happens when 2 or more virtual machines deployed in the same time. We increased the delay time between the iSCSI initiator login, and symlinking of the iscsi device because 1 second delay is not adequate for 3 or more virtual machine parallel deployment to the same node. It should be considered to make this delay dynamic.

#5 Updated by Ruben S. Montero about 9 years ago

  • Target version changed from Release 3.8 to Release 3.6

#6 Updated by Jaime Melis about 9 years ago

Hello Sztaki,

one question regarding your patch. What are the benefits of iscsi TID vs image id independency?

#7 Updated by SZTAKI LPDS about 9 years ago

Dear Jamie,

It is required for the support of the non persistent images. At first we calculated the TID like this: TID=BASE_NONPERSISTENT_TID+VmID, but it fails if one VM has two or more ISCSI disks, the TID=BASE_NONPERSISTENT_TID+VmID+DiskID causes overlap. So it is much better if we code everything into the IQN and create functions to
translate between IQN and TID. This is what we call TID vs Image ID independency.

Jaime Melis wrote:

Hello Sztaki,

one question regarding your patch. What are the benefits of iscsi TID vs image id independency?

#8 Updated by Jaime Melis about 9 years ago

SZTAKI LPDS wrote:

Dear Jamie,

It is required for the support of the non persistent images. At first we calculated the TID like this: TID=BASE_NONPERSISTENT_TID+VmID, but it fails if one VM has two or more ISCSI disks, the TID=BASE_NONPERSISTENT_TID+VmID+DiskID causes overlap. So it is much better if we code everything into the IQN and create functions to
translate between IQN and TID. This is what we call TID vs Image ID independency.

Thanks for the clarification, it makes sense.

#9 Updated by Jaime Melis about 9 years ago

  • Status changed from Assigned to Closed
  • Priority changed from Normal to Low
  • Resolution set to fixed

Functionality has been merge.

Also available in: Atom PDF