iSCSI Setup with FlashArray

This blog post covers the steps required to connect FlashArray volumes over iSCSI on RHEL variant Linux systems (RHEL, Oracle Linux, CentOS).

iSCSI

image_pdfimage_print

Required package on RHEL for iSCSI
iscsi-initiator-utils

Multipathing package
device-mapper-multipath

High level process with iSCSI

  1. Setup iSCSI at the initiator
  2. Setup Host at the FlashArray level
  3. Discover the iSCSI targets
  4. Login to the iSCSI targets
  5. Create volumes, attach to the hosts, scan them and create the filesystems

1. To set up iSCSI at the host level, install the package iscsi-initiator-utils and start the iscsi service.  Make sure to include the multipathing package as well.

Implement all the Linux best practices for FlashArray that can be found here.
https://support.purestorage.com/Solutions/Linux/Reference/Linux_Recommended_Settings

2. Setup the host at the FlashArray level by first getting the initiator’s IQN which can be found at /etc/iscsi/initiatorname.iscsi

Example:
[root@oraprod ~]# cat /etc/iscsi/initiatorname.iscsi
InitiatorName=iqn.1988-12.com.oracle:abd254f8bba0

Go the Pure FlashArray, click Storage on the left frame and select the Hosts tab.  Click the + sign on the right side to create a new host. Provide the IQN name you got from the initiator.

Configure IQN for a host in FlashArray
Configure IQN for a host in FlashArray
Configure iSCSI IQN Port
Configure IQN for a host in FlashArray Hosts

3. On the host, discover the iSCSI targets

$ iscsiadm -m discovery -t st -p <target IP address>

Example:

Configure IQN for a host in FlashArray Network

4. Create a volume on Pure FlashArray and attach to the host.  Without a volume/lun attached to the host, trying to login to the target will result in following errors.

iscsiadm -m node –targetname iqn.2010-06.com.purestorage:flasharray.7b87f11aad2d06c8 -p 192.168.154.254 -l

5. Using the IQN information of the target, login to iSCSI target using iscsiadm command.

iscsiadm -m node –targetname <target iqn> -p <target IP address> –login

Example:

Login on all the iSCSI ports on the target.  As of now, we have connected only to the first iSCSI target IP and hence Purity GUI shows Uneven paths. Run the above login command across all available iscsi paths .

Blog - iSCSI Setup with FlashArray - Connection Map

To login automatically on the host startup, run the following command to update the config at the host level.  Do it on all the available iSCSI target IP addresses.

iscsiadm -m node -T <target iqn> -p <target IP> –op update -n node.startup -v automatic

Example:

You can verify if the iSCSI setup is successful by checking at the FlashArray GUI.  Click Health on the left frame and go to the Connections tab. Look for the Paths against the host you just added.  If it shows “Unused Port” and if you don’t see any entries against the host initiator it means the host has not logged into the target.

Blog - iSCSI Setup with FlashArray - Connections

Clicking on the “Unused Port” shows the connection map of the host ports.

Blog - iSCSI Setup with FlashArray - Unused Posts

After discovering and logging into the target from all the initiators, we can see that the Paths shows Redundant across all of them.

Blog - iSCSI Setup with FlashArray - Redundant

5. Create the volumes on Pure Flasharray and attach to the host.

6. Update /etc/multipath.conf or udev rules based on your standard operating procedures to create a persistent name for the multipath device.

7.  Scan for the devices on the host using rescan-scsi-bus.sh (sg3_utils package).

8.  The devices should be available for use now.

[root@oraprod ~]# ls -ltr /dev/mapper/fs*
lrwxrwxrwx. 1 root root 8 May  1 18:06 /dev/mapper/fs_prod_data01p1 -> ../dm-14
lrwxrwxrwx. 1 root root 8 May  1 18:06 /dev/mapper/fs_prod_data01 -> ../dm-13
lrwxrwxrwx. 1 root root 8 May  1 18:06 /dev/mapper/fs_prod_data02p1 -> ../dm-15
lrwxrwxrwx. 1 root root 8 May  1 18:06 /dev/mapper/fs_prod_data02 -> ../dm-11
lrwxrwxrwx. 1 root root 8 May  1 18:06 /dev/mapper/fs_prod_fra1 -> ../dm-16
lrwxrwxrwx. 1 root root 8 May  1 18:06 /dev/mapper/fs_prod_fra -> ../dm-12

10. Create the filesystem on top of the partitions.

11.  Mount the filesystem using _netdev option to make sure to inform the kernel that these filesystems should be mounted after all network interfaces are brought up to avoid missing device issues if it comes up earlier.

Conclusion

FlashArray simplifies and enhances the iSCSI storage configuration process for RHEL systems, providing high-performance, scalable, and reliable storage solutions. By combining iSCSI initiator utilities, multipathing, and FlashArray’s user-friendly interface, administrators can seamlessly integrate volumes and ensure persistent device naming through udev rules or multipath configurations.

With FlashArray, users benefit from efficient volume management, redundant paths, and optimized connectivity to iSCSI targets, all of which contribute to improved data access and storage performance. These features are especially valuable for mission-critical applications, offering robust support for dynamic workloads while minimizing downtime and complexity. By following Linux best practices and leveraging FlashArray’s advanced capabilities, organizations can achieve a highly available, streamlined, and scalable storage environment tailored to their needs.

flash array test drive

Written By: