简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

设置 SAN 主机上的队列深度

您可能需要更改主机上的队列深度,以达到每个节点和 FC 端口扇入的 ITN 的最大值。

AIX 主机

您可以使用 chdev 命令更改 AIX 主机上的队列深度。使用 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 -Rmakdev -l fcs0 -P 命令将其恢复联机。

HP-UX 主机

您可以使用内核参数 scsI_max_qdepth 更改 HP-UX 主机上的 LUN 或设备队列深度。您可以使用内核参数 max_fcp_reqs 更改 HBA 队列深度。

  • sCSI 最大 qdepth 的默认值为 8 。最大值为 255 。

    可以在运行的系统上使用 kmtune 命令上的 ` -u` 选项动态更改 scsI_max_qdepth 。此更改将对系统上的所有设备生效。例如,使用以下命令将 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 堆栈中的队列深度:原生驱动程序不允许在 HBA 级别设置每个 LUN 或每个目标 max_throttle 。为原生驱动程序设置 max_throttle 值的建议方法是在每个设备类型( VID_PID )级别上的 ` /kernel/drv/sd.conf` 和 ` /kernel/drv/sfs.conf` 文件中。对于 MPxIO 配置, Host 实用程序会将此值设置为 64 ,对于 Veritas DMP 配置,则会将此值设置为 8 。

步骤
  1. ` # cd/kernel/drv`

  2. ` # vi lpfc.conf`

  3. 搜索 ` /ttp-queue ( /tgt-queue )`

    tgt-queue-depth=32

    注

    安装时,默认值设置为 32 。

  4. 根据您的环境配置设置所需的值。

  5. 保存文件。

  6. 使用 ` sync ; sync ; sync ; reboot — -r` 命令重新启动主机。

QLogic HBA 的 VMware 主机

使用 esxcfg-module 命令更改 HBA 超时设置。不建议手动更新 esx.conf 文件。

步骤
  1. 以 root 用户身份登录到服务控制台。

  2. 使用 ` #vmkload_mod -l` 命令验证当前已加载的 Qlogic HBA 模块。

  3. 对于 Qlogic HBA 的单个实例,运行以下命令:

    ` #esxcfg-module -s ql2xmaxqdepth=64 qla2300_707`

    注

    此示例使用 qla2300_707 模块。根据 vmkload_mod -l 的输出使用相应的模块。

  4. 使用以下命令保存所做的更改:

    ` #/usr/sbin/esxcfg-boot -b`

  5. 使用以下命令重新启动服务器:

    ` # 重新启动`

  6. 使用以下命令确认更改:

    1. ` #esxcfg-module -g qla2300_707`

    2. qla2300_707 enabled = 1 个选项 = "ql2xmaxqdepth=64"

适用于 Emulex HBA 的 VMware 主机

使用 esxcfg-module 命令更改 HBA 超时设置。不建议手动更新 esx.conf 文件。

步骤
  1. 以 root 用户身份登录到服务控制台。

  2. 使用 ` #vmkload_mod -l grep lpfc` 命令验证当前已加载的 Emulex HBA 。

  3. 对于 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 。

  4. 对于 Emulex HBA 的多个实例,运行以下命令:

    esxcfg-module -s "lpfc0_lun_queue_depth=16 lpfc1_lun_queue_depth=16" lpfcdd_7xx

    lpfc0 的 LUN 队列深度和 lpfc1 的 LUN 队列深度均设置为 16 。

  5. 输入以下命令:

    ` #esxcfg-boot -b`

  6. 使用 ` # reboot` 重新启动。

适用于 Emulex HBA 的 Windows 主机

在 Windows 主机上,您可以使用 LPUTILNT 实用程序更新 Emulex HBA 的队列深度。

步骤
  1. 运行 C : \WINNT\system32 目录中的 LPUTILNT 实用程序。

  2. 从右侧菜单中选择 * 驱动器参数 * 。

  3. 向下滚动并双击 * 队列深度 * 。

    注

    如果要将 * 队列深度 * 设置为大于 150 ,则还需要相应地增加以下 Windows 注册表值:

    HKEY_LOCAL_MACHINE \System\CurrentControlSet\Services\lpxnds\Parameters\Device\NumberOfRequests

Qlogic HBA 的 Windows 主机

在 Windows 主机上,您可以使用和 SAnsurfer HBA 管理器实用程序来更新 Qlogic HBA 的队列深度。

步骤
  1. 运行 SAnsurfer HBA 管理器实用程序。

  2. 单击 * HBA port* > * 设置 * 。

  3. 单击列表框中的 * 高级 HBA 端口设置 * 。

  4. 更新 Execution Throttle 参数。

适用于 Emulex HBA 的 Linux 主机

您可以在 Linux 主机上更新 Emulex HBA 的队列深度。要使更新在重新启动后保持持久性,必须创建新的 RAM 磁盘映像并重新启动主机。

步骤
  1. 确定要修改的队列深度参数:

    modinfo lpfc|grep queue_depth

    此时将显示队列深度参数及其问题描述的列表。根据您的操作系统版本,您可以修改以下一个或多个队列深度参数:

    • lpfc_lun_queue_depth :可排队到特定 LUN 的最大 FC 命令数( uint )

    • lpfc_hba_queue_depth :可排队到 lpfc HBA 的最大 FC 命令数( uint )

    • lpfc_tgt_queue_depth :可排队到特定目标端口( uint )的最大 FC 命令数

      lpfc_tgt_queue_depth 参数仅适用于 Red Hat Enterprise Linux 7.x 系统, SUSE Linux Enterprise Server 11 SP4 系统和 12.x 系统。

  2. 通过将队列深度参数添加到 Red Hat Enterprise Linux 5.x 系统的 ` /etc/modprobe.conf` 文件以及 Red Hat Enterprise Linux 6.x 或 7.x 系统或 SUSE Linux Enterprise Server 11.x 或 12.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

  3. 创建新的 RAM 磁盘映像,然后重新启动主机,使更新在重新启动后保持不变。

    有关详细信息,请参见 "系统管理" 适用于您的 Linux 操作系统版本。

  4. 验证是否已为您修改的每个队列深度参数更新队列深度值:

    cat /sys/class/scsi_host/host_number/lpfc_lun_queue_depthcat /sys/class/scsi_host/host_number/lpfc_tgt_queue_depthcat /sys/class/scsi_host/host_number/lpfc_hba_queue_depth

    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 队列深度

步骤
  1. 确定要修改的设备队列深度参数:

    modinfo qla2xxx grep ql2xmaxqdepth

    您只能修改 ql2xmaxqdepth queue depth 参数,该参数表示可以为每个 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)
  2. 更新设备队列深度值:

    • 如果要使修改持久,请执行以下步骤:

      1. 通过将队列深度参数添加到 Red Hat Enterprise Linux 5.x 系统的 ` /etc/modprobe.conf` 文件和 Red Hat Enterprise Linux 6.x 或 7.x 系统的 ` /etc/modprobe.d/scsi.conf` 文件或 SUSE Linux Enterprise Server 11.x 或 12.x 系统的 /etc/modprobe.d/mscsi.conf 文件来更新队列深度: options qmax_qla2xxx 或 maxqfase=new depth

      2. 创建新的 RAM 磁盘映像,然后重新启动主机,使更新在重新启动后保持不变。

        有关详细信息,请参见 "系统管理" 适用于您的 Linux 操作系统版本。

    • 如果要仅修改当前会话的参数,请运行以下命令:

      echo new_queue_depth > /sys/module/qla2xxx/parameters/ql2xmaxqdepth

      在以下示例中,队列深度设置为 128 。

    echo 128 > /sys/module/qla2xxx/parameters/ql2xmaxqdepth
  3. 验证队列深度值是否已更新:

    cat /sys/module/qla2xxx/parameters/ql2xmaxqdepth

    此时将显示队列深度的当前值。

  4. 通过在 QLogic HBA BIOS 中更新固件参数 Execution Throttle 来修改 QLogic HBA 队列深度。

    1. 登录到 QLogic HBA 管理 CLI :

      ` /opt/QLogic_Corporation/QConvergeConsoleCLI/qaucli`

    2. 从主菜单中,选择 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
    3. 从适配器配置参数列表中,选择 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
    4. 从 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 端口的详细信息。

    5. 从 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:
    1. 按 * 输入 * 继续。

    2. 从 HBA Parameters 菜单中,选择 Configure HBA Parameters 选项以修改 HBA 参数。

    3. 从 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
    4. 按 * 输入 * 继续。

    5. 从 Configure Parameters 菜单中,选择 Commit Changes 选项以保存更改。

    6. 退出菜单。