iSCSI LUNs and Targets

 

Overview

Sharing block devices via iSCSI is a common way to make network-attached storage available. An iSCSI LUN is a logical unit of storage. In SoftNAS Cloud®, the basic storage LUN is a volume that is accessed as a block device. The block device volumes have a mount point in the Linux /dev/zvol filesystem because they are disk block devices.
 
For example, a storage pool naspool1 with volume name lun01 would be named /dev/zvol/naspool1/lun01 as its mount point. These device references are links to Linux block devices used to access the volume's raw data blocks via iSCSI.
 
iSCSI targets are used by iSCSI initiators to establish a network connection. The target serves up the LUNs, which are collections of disk blocks accessed via the iSCSI protocol over the network. A target can offer one or more LUNs to the iSCSI clients, who initiate a connection with the iSCSI server.
 
For example, VMware vSphere or Windows connects to the iSCSI server and retrieves a list of available targets. Then, for each target, the list of its published LUNs are available for use.
 

Creating a Volume and Sharing as iSCSI Target

To share a volume as an iSCSI target:
 
1. Create a new volume and choose the Block Device option as shown below as by default. The new volume will be shared as an iSCSI LUN upon creation. The block device volume is automatically added to the default iSCSI target.
 
Note: The mountpoint for block device volumes is named LUN_lun1 (in the example below). Block device volume mount points always use the prefix LUN_ followed by the user-assigned volume name, to distinguish LUNs from regular filesystem volumes. Block devices are comprised of a sparsely-allocated file named lundata.dat. So for a pool name naspool and block device volume named lun1, the full mount point path is /naspool1/LUN_lun1/lundata.dat. These LUN names are automatically maintained by SoftNAS Cloud® and shown in the iSCSI Targets configuration panel, as well as the Volumes list.
 
For more information on creating a volume, refer to the Configuring Volumes section.
 
 
 
Note the default is Thick Provision, which reserves space for the LUN at time of creation. Alternatively, choose Thin Provision, which will create a "sparse" LUN that only consumes space as it is actually used.
 

Configuring and Sharing Storage using iSCSI

iSCSI LUN volumes can be shared by applying LUN Targets to the storage.
 
This can be done directly at time of Volume creation, when selecting Block device (iSCSI LUN). It can also be done after the fact, via the iSCSI LUN Targets applet.
 
Applying The Target at Volume Creation Time
1. From Volumes and LUNS, click on Create.
 
2. Follow the standard instructions for creating a new Volume, and select Block Device (iSCI LUN).
 
The LUN Targets tab is displayed.
 
 
3. Select the appropriate LUN Target from the dropdown.
 
 
Applying The Target Using the Applet
1. Log on to SoftNAS StorageCenter.
 
2. In the Left Navigation Pane, select the iSCSI LUN Targets option under the Storage section.
 
The iSCSI LUN Targets panel will be displayed. From here, configure and share storage using iSCSI.
 
 
 
 
 
3. By default, an empty iSCSI target will be presented for you. However, if you need more than one, click Create Target.
 
Once the target is created, either double-click the empty target, or click Add LUN.
 
 
The iSCSI Add A LUN dialog box will be displayed.
 
4.  Either select the volume's block device from the dropdown (which will show available volumes)...
 
 
...or check the box for Create a New Device, and enter the path, and the desired size to associate with the LUN.
 
 
 
5. Click Add LUN to link the block device to the iSCSI Target as a LUN.
 
The LUN is created and added to the target.
 
You may have to refresh the screen for the targets to present themselves.
 
 
Note: Publish any number of block device volumes via a single iSCSI target. However, you can use the Create Target button to add new targets as needed.
 
 

Target Settings and Options

Each iSCSI target can be configured to restrict access to one or more iSCSI client IP addresses. It can also be configured to require authentication using a user name and password.
 
1. To do so, on the iSCSI LUN Targets panel, select the LUN target and then click the Modify Settings option in the tool bar.
 
The Modify Target Settings dialog will be displayed.
 
2. In the Settings section, check the box in the Enable Write Cache field. This provides the option to cache incoming iSCSI write requests for faster I/O operations.
 
3. By default, targets have unrestricted access from any IP address. To restrict which iSCSI initiators are allowed to connect to the target, enter one or more comma-separated IP addresses (or DNS names, if using DNS) in the Allowed Initiators text entry box. Use the CIDN notation to provide a range of network addresses; e.g., 172.16.150.0/24 restricts access to iSCSI initiators in the 172.16.150.* subnet only.
 
4. In order to use login credentials while accessing the target, enter the user name in the User Name text entry box.
 
5. Enter the password in the User Password text entry box.
 
6. Click Save.
 
Note: To skip login credentials to the access target, then simply leave the User Name and User Password fields blank.
 
7. Once the required changes are made, click Save.
 
8. To enforce the changes, click Restart on the iSCSI LUN Targets panel.
 
 

Accessing the Target and LUN

To access the iSCSI target and its LUNs, make use of an SCSI initiator from another system on the network.
 
For more information, refer to the SoftNAS Reference Guide or the operating system reference guide associated with an iSCSI initiator.