设置SAN主机上的队列深度
您可能需要更改主机上的队列深度,以达到每个节点和 FC 端口扇入的 ITN 的最大值。
AIX 主机
您可以使用更改AIX主机上的队列深度 chdev
命令:使用进行的更改 chdev
命令在重新启动后仍会保留。
示例
-
要更改 hdisk7 设备的队列深度,请使用以下命令:
chdev -l hdisk7 -a queue_depth=32
-
要更改 fcs0 HBA 的队列深度,请使用以下命令:
chdev -l fcs0 -a num_cmd_elems=128
的默认值
num_cmd_elems
为200。最大值为 2 , 048 。要进行更改、可能需要使HBA脱机
num_cmd_elems
然后使用将其恢复联机rmdev -l fcs0 -R
和makdev -l fcs0 -P
命令
HP-UX 主机
您可以使用内核参数更改HP-UX主机上的LUN或设备队列深度 scsi_max_qdepth
。您可以使用内核参数更改HBA队列深度 max_fcp_reqs
。
-
的默认值
scsi_max_qdepth
为8。最大值为255。scsi_max_qdepth
可以使用在正在运行的系统上动态更改-u
选项kmtune
命令:此更改将对系统上的所有设备生效。例如,使用以下命令将 LUN 队列深度增加到 64 :kmtune -u -s scsi_max_qdepth=64
可以使用更改单个设备文件的队列深度
scsictl
命令:使用进行更改scsictl
命令在系统重新启动后不会持久保留。要查看和更改特定设备文件的队列深度,请执行以下命令:scsictl -a /dev/rdsk/c2t2d0
scsictl -m queue_depth=16 /dev/rdsk/c2t2d0
-
的默认值
max_fcp_reqs
为512。最大值为 1024 。要对进行更改、必须重建内核并重新启动系统
max_fcp_reqs
以生效。例如,要将 HBA 队列深度更改为 256 ,请使用以下命令:kmtune -u -s max_fcp_reqs=256
Solaris 主机
您可以为 Solaris 主机设置 LUN 和 HBA 队列深度。
-
对于 LUN 队列深度:主机上正在使用的 LUN 数乘以每个 LUN 的限制( lun-queue-depth )必须小于或等于主机上的 tgt-queue-depth 值。
-
对于Sun堆栈中的队列深度:本机驱动程序不允许按LUN或按目标运行
max_throttle
HBA级别的设置。建议的设置方法max_throttle
本机驱动程序的值位于中的每设备类型(VID_PID)级别/kernel/drv/sd.conf
和/kernel/drv/ssd.conf
文件。对于 MPxIO 配置, Host 实用程序会将此值设置为 64 ,对于 Veritas DMP 配置,则会将此值设置为 8 。
-
# cd/kernel/drv
-
# vi lpfc.conf
-
搜索
/tft-queue (/tgt-queue)
tgt-queue-depth=32
安装时,默认值设置为 32 。
-
根据您的环境配置设置所需的值。
-
保存文件。
-
使用重新启动主机
sync; sync; sync; reboot -- -r
命令:
QLogic HBA 的 VMware 主机
使用 esxcfg-module
命令以更改HBA超时设置。手动更新 esx.conf
不建议使用文件。
-
以 root 用户身份登录到服务控制台。
-
使用
#vmkload_mod -l
命令以验证当前已加载的逻辑HBA模块。 -
对于 Qlogic HBA 的单个实例,运行以下命令:
#esxcfg-module -s ql2xmaxqdepth=64 qla2300_707
此示例使用 qla2300_707 模块。根据的输出使用相应的模块
vmkload_mod -l
。 -
使用以下命令保存所做的更改:
#/usr/sbin/esxcfg-boot -b
-
使用以下命令重新启动服务器:
#reboot
-
使用以下命令确认更改:
-
#esxcfg-module -g qla2300_707
-
qla2300_707 enabled = 1 options = 'ql2xmaxqdepth=64'
-
适用于 Emulex HBA 的 VMware 主机
使用 esxcfg-module
命令以更改HBA超时设置。手动更新 esx.conf
不建议使用文件。
-
以 root 用户身份登录到服务控制台。
-
使用
#vmkload_mod -l grep lpfc
命令以验证当前已加载的Emulex HBA。 -
对于 Emulex HBA 的单个实例,输入以下命令:
#esxcfg-module -s lpfc0_lun_queue_depth=16 lpfcdd_7xx
根据 HBA 的型号,此模块可以是 lpfcdd_7xx 或 lpfcdd_732 。上述命令使用 lpfcdd_7xx 模块。您应根据的结果使用相应的模块
vmkload_mod -l
。运行此命令会将 lpfc0 表示的 HBA 的 LUN 队列深度设置为 16 。
-
对于 Emulex HBA 的多个实例,运行以下命令:
a esxcfg-module -s "lpfc0_lun_queue_depth=16 lpfc1_lun_queue_depth=16" lpfcdd_7xx
lpfc0 的 LUN 队列深度和 lpfc1 的 LUN 队列深度均设置为 16 。
-
输入以下命令:
#esxcfg-boot -b
-
使用重新启动
#reboot
。
适用于 Emulex HBA 的 Windows 主机
在Windows主机上、您可以使用 LPUTILNT
用于更新Emulex HBA的队列深度的实用程序。
-
运行
LPUTILNT
实用程序、位于中C:\WINNT\system32
目录。 -
从右侧菜单中选择 * 驱动器参数 * 。
-
向下滚动并双击 * 队列深度 * 。
如果要将 * 队列深度 * 设置为大于 150 ,则还需要相应地增加以下 Windows 注册表值:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\lpxnds\Parameters\Device\NumberOfRequests
Qlogic HBA 的 Windows 主机
在Windows主机上、您可以使用和 SANsurfer
HBA管理器实用程序、用于更新qlogic HBA的队列深度。
-
运行
SANsurfer
HBA管理器实用程序。 -
单击 * HBA port* > * 设置 * 。
-
单击列表框中的 * 高级 HBA 端口设置 * 。
-
更新
Execution Throttle
参数。
适用于 Emulex HBA 的 Linux 主机
您可以在 Linux 主机上更新 Emulex HBA 的队列深度。要使更新在重新启动后保持持久性,必须创建新的 RAM 磁盘映像并重新启动主机。
-
确定要修改的队列深度参数:
modinfo lpfc|grep queue_depth
此时将显示队列深度参数及其问题描述的列表。根据您的操作系统版本,您可以修改以下一个或多个队列深度参数:
-
lpfc_lun_queue_depth
:可以排队到特定LUN的最大FC命令数(uint) -
lpfc_hba_queue_depth
:可以排队到lpfc HBA的最大FC命令数(uint) -
lpfc_tgt_queue_depth
:可以排队到特定目标端口的最大FC命令数(uint)。
lpfc_tgt_queue_depth
参数仅适用于Red Hat Enterprise Linux 7.x系统、SUSE Linux Enterprise Server 11 SP4系统和12.x系统。
-
-
通过向添加队列深度参数来更新队列深度
/etc/modprobe.conf
文件(用于Red Hat Enterprise Linux 5.x系统)和/etc/modprobe.d/scsi.conf
文件。根据您的操作系统版本,您可以添加以下一个或多个命令:
-
options lpfc lpfc_hba_queue_depth=new_queue_depth
-
options lpfc lpfc_lun_queue_depth=new_queue_depth
-
options lpfc_tgt_queue_depth=new_queue_depth
-
-
创建新的 RAM 磁盘映像,然后重新启动主机,使更新在重新启动后保持不变。
有关详细信息,请参见 "系统管理" 适用于您的 Linux 操作系统版本。
-
验证是否已为您修改的每个队列深度参数更新队列深度值:
root@localhost ~]#cat /sys/class/scsi_host/host5/lpfc_lun_queue_depth 30
此时将显示队列深度的当前值。
适用于 QLogic HBA 的 Linux 主机
您可以在 Linux 主机上更新 QLogic 驱动程序的设备队列深度。要使更新在重新启动后保持持久性,必须创建新的 RAM 磁盘映像并重新启动主机。您可以使用 QLogic HBA 管理 GUI 或命令行界面( CLI )修改 QLogic HBA 队列深度。
此任务显示如何使用 QLogic HBA 命令行界面修改 QLogic HBA 队列深度
-
确定要修改的设备队列深度参数:
modinfo qla2xxx | grep ql2xmaxqdepth
您只能修改
ql2xmaxqdepth
队列深度参数、表示可为每个LUN设置的最大队列深度。对于 RHEL 7.5 及更高版本,默认值为 64 。对于 RHEL 7.4 及更早版本,默认值为 32 。root@localhost ~]# modinfo qla2xxx|grep ql2xmaxqdepth parm: ql2xmaxqdepth:Maximum queue depth to set for each LUN. Default is 64. (int)
-
更新设备队列深度值:
-
如果要使修改持久,请执行以下步骤:
-
通过向添加队列深度参数来更新队列深度
/etc/modprobe.conf
文件(用于Red Hat Enterprise Linux 5.x系统)和/etc/modprobe.d/scsi.conf
文件(适用于Red Hat Enterprise Linux 6.x或7.x系统或SUSE Linux Enterprise Server 11.x或12.x系统):options qla2xxx ql2xmaxqdepth=new_queue_depth
-
创建新的 RAM 磁盘映像,然后重新启动主机,使更新在重新启动后保持不变。
有关详细信息,请参见 "系统管理" 适用于您的 Linux 操作系统版本。
-
-
如果要仅修改当前会话的参数,请运行以下命令:
echo new_queue_depth > /sys/module/qla2xxx/parameters/ql2xmaxqdepth
在以下示例中,队列深度设置为 128 。
echo 128 > /sys/module/qla2xxx/parameters/ql2xmaxqdepth
-
-
验证队列深度值是否已更新:
cat /sys/module/qla2xxx/parameters/ql2xmaxqdepth
此时将显示队列深度的当前值。
-
通过更新固件参数修改QLogic HBA队列深度
Execution Throttle
从QLogic HBA BIOS。-
登录到 QLogic HBA 管理 CLI :
/opt/QLogic_Corporation/QConvergeConsoleCLI/qaucli
-
从主菜单中、选择
Adapter Configuration
选项[root@localhost ~]# /opt/QLogic_Corporation/QConvergeConsoleCLI/qaucli Using config file: /opt/QLogic_Corporation/QConvergeConsoleCLI/qaucli.cfg Installation directory: /opt/QLogic_Corporation/QConvergeConsoleCLI Working dir: /root QConvergeConsole CLI - Version 2.2.0 (Build 15) Main Menu 1: Adapter Information **2: Adapter Configuration** 3: Adapter Updates 4: Adapter Diagnostics 5: Monitoring 6: FabricCache CLI 7: Refresh 8: Help 9: Exit Please Enter Selection: 2
-
从适配器配置参数列表中、选择
HBA Parameters
选项1: Adapter Alias 2: Adapter Port Alias **3: HBA Parameters** 4: Persistent Names (udev) 5: Boot Devices Configuration 6: Virtual Ports (NPIV) 7: Target Link Speed (iiDMA) 8: Export (Save) Configuration 9: Generate Reports 10: Personality 11: FEC (p or 0: Previous Menu; m or 98: Main Menu; ex or 99: Quit) Please Enter Selection: 3
-
从 HBA 端口列表中,选择所需的 HBA 端口。
Fibre Channel Adapter Configuration HBA Model QLE2562 SN: BFD1524C78510 1: Port 1: WWPN: 21-00-00-24-FF-8D-98-E0 Online 2: Port 2: WWPN: 21-00-00-24-FF-8D-98-E1 Online HBA Model QLE2672 SN: RFE1241G81915 3: Port 1: WWPN: 21-00-00-0E-1E-09-B7-62 Online 4: Port 2: WWPN: 21-00-00-0E-1E-09-B7-63 Online (p or 0: Previous Menu; m or 98: Main Menu; ex or 99: Quit) Please Enter Selection: 1
此时将显示 HBA 端口的详细信息。
-
从HBA Parameters菜单中、选择
Display HBA Parameters
选项以查看的当前值Execution Throttle
选项的默认值
Execution Throttle
选项为65535。
HBA Parameters Menu ======================================================= HBA : 2 Port: 1 SN : BFD1524C78510 HBA Model : QLE2562 HBA Desc. : QLE2562 PCI Express to 8Gb FC Dual Channel FW Version : 8.01.02 WWPN : 21-00-00-24-FF-8D-98-E0 WWNN : 20-00-00-24-FF-8D-98-E0 Link : Online ======================================================= 1: Display HBA Parameters 2: Configure HBA Parameters 3: Restore Defaults (p or 0: Previous Menu; m or 98: Main Menu; x or 99: Quit) Please Enter Selection: 1 -------------------------------------------------------------------------------- HBA Instance 2: QLE2562 Port 1 WWPN 21-00-00-24-FF-8D-98-E0 PortID 03-07-00 Link: Online -------------------------------------------------------------------------------- Connection Options : 2 - Loop Preferred, Otherwise Point-to-Point Data Rate : Auto Frame Size : 2048 Hard Loop ID : 0 Loop Reset Delay (seconds) : 5 Enable Host HBA BIOS : Enabled Enable Hard Loop ID : Disabled Enable FC Tape Support : Enabled Operation Mode : 0 - Interrupt for every I/O completion Interrupt Delay Timer (100us) : 0 **Execution Throttle : 65535** Login Retry Count : 8 Port Down Retry Count : 30 Enable LIP Full Login : Enabled Link Down Timeout (seconds) : 30 Enable Target Reset : Enabled LUNs Per Target : 128 Out Of Order Frame Assembly : Disabled Enable LR Ext. Credits : Disabled Enable Fabric Assigned WWN : N/A Press <Enter> to continue:
-
按 * 输入 * 继续。
-
从HBA Parameters菜单中、选择
Configure HBA Parameters
选项以修改HBA参数。 -
从Configure Parameters菜单中、选择
Execute Throttle
选项并更新此参数的值。Configure Parameters Menu ======================================================= HBA : 2 Port: 1 SN : BFD1524C78510 HBA Model : QLE2562 HBA Desc. : QLE2562 PCI Express to 8Gb FC Dual Channel FW Version : 8.01.02 WWPN : 21-00-00-24-FF-8D-98-E0 WWNN : 20-00-00-24-FF-8D-98-E0 Link : Online ======================================================= 1: Connection Options 2: Data Rate 3: Frame Size 4: Enable HBA Hard Loop ID 5: Hard Loop ID 6: Loop Reset Delay (seconds) 7: Enable BIOS 8: Enable Fibre Channel Tape Support 9: Operation Mode 10: Interrupt Delay Timer (100 microseconds) 11: Execution Throttle 12: Login Retry Count 13: Port Down Retry Count 14: Enable LIP Full Login 15: Link Down Timeout (seconds) 16: Enable Target Reset 17: LUNs per Target 18: Enable Receive Out Of Order Frame 19: Enable LR Ext. Credits 20: Commit Changes 21: Abort Changes (p or 0: Previous Menu; m or 98: Main Menu; x or 99: Quit) Please Enter Selection: 11 Enter Execution Throttle [1-65535] [65535]: 65500
-
按 * 输入 * 继续。
-
从Configure Parameters菜单中、选择
Commit Changes
选项以保存更改。 -
退出菜单。
-