在为存储设备使用 HPP 时,设置该设备的延迟敏感阈值,使 I/O 可以绕过 I/O 调度程序。

默认情况下,ESXi通过 I/O 调度程序传递每个 I/O。但是,使用调度程序可能会创建内部队列,这不是利用高速存储设备的有效方法。

您可以配置延迟敏感阈值并启用直接提交机制,帮助 I/O 绕过调度程序。若启用此机制,则 I/O 会通过 HPP 直接从 PSA 传递到设备驱动程序。

要顺利执行直接提交,观察到的平均 I/O 延迟必须低于您指定的延迟阈值。如果 I/O 延迟超过延迟阈值,系统会停止直接提交,并暂时恢复到使用 I/O 调度程序。当平均 I/O 延迟再次下降至低于延迟阈值时会恢复直接提交。

过程

  1. 通过运行以下命令,设置设备的延迟敏感阈值:
    esxcli storage core device latencythreshold set --device=device name --latency-sensitive-threshold=value in milliseconds
  2. 确认延迟阈值已设置:
    esxcli storage core device latencythreshold list
    Device                Latency Sensitive Threshold
    --------------------  ---------------------------
    naa.55cd2e404c1728aa               0 milliseconds
    naa.500056b34036cdfd               0 milliseconds
    naa.55cd2e404c172bd6              50 milliseconds
    
  3. 监控延迟敏感阈值的状态。检查以下条目的 VMkernel 日志:
    • Latency Sensitive Gatekeeper turned on for device 设备. Threshold of XX msec is larger than max completion time of YYY msec
    • Latency Sensitive Gatekeeper turned off for device 设备. Threshold of XX msec is exceeded by command completed in YYY msec