Tabla de contenido
In this article, we’ll explain how to increase the LUN ID limit in storage systems by modifying kernel modules, tweaking the grub, and using modprobe.d files and echo. Additionally, we’ll show you how to check the current limits using the CAT command.
Why is it necessary to increase the LUN ID limit?
In storage systems, logical units (LUNs) are unique addresses assigned to each storage device on a storage area network (SAN). These addresses allow servers to access storage devices efficiently. However, FC (Fibre Channel) and SCSI (Small Computer System Interface) cards have default LUN limits that may be insufficient for large or growing storage environments. Increasing the maximum number of LUNs on these cards allows for greater scalability and flexibility, especially in cases where managing a large number of storage devices is required.
Kernel Modules: scsi_mod and lpfc
Before diving into the process of increasing the maximum number of LUNs, it’s essential to understand the kernel modules involved. Kernel modules are pieces of code that can be dynamically loaded and unloaded in the operating system kernel, allowing you to modify its functionality without needing to reboot.
The scsi_mod module is the main module of the SCSI subsystem in the Linux kernel. It provides basic SCSI functionality, including device detection, command management, and communication with SCSI device drivers.
The lpfc module is a Fibre Channel device driver for Emulex cards, enabling communication between the operating system and FC cards. This module is responsible for the configuration and operation of Emulex cards in the system.
Increasing the LUN ID Limit in Kernel Modules
Modifying the grub
Open the grub configuration file with a text editor:
sudo nano /etc/default/grub
Look for the line that starts with GRUB_CMDLINE_LINUX and add the following parameters at the end of the list of options:
The modified line should look like this:
GRUB_CMDLINE_LINUX="quiet splash scsi_mod.max_luns=65535 lpfc.max_lun=65535"
Save the changes and close the file.
Update the grub configuration for the changes to take effect:
Reboot the system to apply the new values:
Using modprobe.d files
Create a new configuration file in the /etc/modprobe.d directory:
sudo nano /etc/modprobe.d/scsi-lun.conf
Add the following lines to the file to set the maximum LUN limits for scsi_mod and lpfc:
options scsi_mod max_luns=65535 options lpfc lpfc_max_lun=65535
Save the changes and close the file.
Reload the kernel modules to apply the changes:
sudo depmod -a sudo modprobe -r scsi_mod lpfc sudo modprobe scsi_mod lpfc
To temporarily modify the LUN ID limit until the next reboot, you can use the echo command to write the new value to the corresponding parameter files:
echo 65535 | sudo tee /sys/module/scsi_mod/parameters/max_luns echo 65535 | sudo tee /sys/module/lpfc/parameters/lpfc_max_lun
Checking the Current Limits with CAT
To verify the current LUN ID limits in scsi_mod and lpfc, use the CAT command:
cat /sys/module/scsi_mod/parameters/max_luns cat /sys/module/lpfc/parameters/lpfc_max_lun
These commands will display the current values of the LUN limits for each module.
By default, the qla2xxx module has a LUN ID limit of 65535, so there’s no need to modify it. The scsi_mod and lpfc modules have a default limit of 255 LUNs. By increasing the limit to 65535, you achieve greater flexibility and scalability in large storage environments.
Remember, it’s essential to perform thorough testing after making changes to your system’s configuration. A poor adjustment can negatively affect performance and stability. Moreover, it’s always a good idea to back up configuration files before modifying them so you can restore them if you run into any issues.
We hope this article has been helpful in learning how to overcome the LUN ID limit in storage systems, and how to increase the maximum number of LUNs in FC and SCSI cards. Now, you’ll be able to manage a larger number of storage devices on your network and take full advantage of the scalability and flexibility these systems offer.