PowerStore:如何配置 ESXi 主机以获得最佳 XCOPY 性能

Summary: XCOPY 是用于将任务转移到存储阵列的 VAAI 原语之一。本文介绍如何配置 ESXi 主机以获得最佳 XCOPY 性能。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

背景:
  • XCOPY 是用于将任务转移到存储阵列的 VAAI 原语之一。例如,您可以使用 XCOPY 将迁移或克隆虚拟机等操作转移到阵列,而不是使用 vSphere 资源来执行这些任务。
  • 默认 ESXi 行为是发出单个段等于或小于 4 MB 的 XCOPY 命令。
  • 在 PowerStore OS 3.0 之前,XCOPY 无法高效工作,导致性能不佳,PowerStore OS 3.0 为 XCOPY 性能引入了许多内部增强功能。
  • 从 PowerStore OS 3.0 开始,PowerStore 将支持最多 8 个段的 XCOPY 命令,其中每个段小于或等于 30 MB。
  • 对于 XCOPY 操作性能是客户主要关注点的应用场景,应将 ESXi 主机配置为使用段大小较大的多段 XCOPY 命令。
 本文介绍如何配置 ESXi 主机以获得最佳 XCOPY 性能。


XCOPY 限制:
PowerStore OS 3.0 当前存在一个已知问题,即不支持在 VMFS 和 vVOL 之间进行 XCOPY(反之亦然)。此限制计划在未来的版本中进行修复。
解决方案:
1.   此解决方案仅影响使用 PowerStore OS 3.0 及更高版本的客户。
2.   NVMe-oF 目前不支持使用 VAAI 插件程序进行硬件加速。
有关更多信息,请参阅 https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.storage.doc/GUID-9AEE5F4D-0CB8-4355-BF89-BB61C5F30C70.html
3.   要为新阵列配置硬件加速,请添加两个声明规则,一个用于 VAAI 过滤器,另一个用于 VAAI 插件程序。要使新的声明规则处于活动状态,您首先应定义规则,然后将其加载到系统中。
4.   使用以下命令验证 PowerStore 设备没有预先存在的“VAAI 过滤器”或“VAAI 插件程序”声明规则:
esxcli storage core claimrule list -c Filter | grep "PowerStore\|Rule"
esxcli storage core claimrule list -c VAAI | grep "PowerStore\|Rule"
提醒:验证没有规则在“Matches”列中包含类似于“vendor=DellEMC model=PowerStore”的条目
提醒:如果为 PowerStore 配置了任何规则,请验证它们不会与以下规则相冲突,如果会冲突,请将它们更正。

5.   使用以下命令向每个 ESXi 主机添加 VAAI 过滤器声明规则:
esxcli storage core claimrule add -u -c Filter -P VAAI_FILTER -t vendor -V DellEMC -M PowerStore
验证规则是否已正确添加
esxcli storage core claimrule list -c Filter | grep "PowerStore\|Rule"
Rule Class   Rule  Class    Type    Plugin       Matches                          XCOPY Use Array Reported Values  XCOPY Use Multiple Segments  XCOPY Max Transfer Size KiB  Config String
Filter       5001  file     vendor  VAAI_FILTER  vendor=DellEMC model=PowerStore                            false                        false                            0
6.  使用以下命令向每个 ESXi 主机添加 VAAI 插件程序声明规则:
esxcli storage core claimrule add -u -c VAAI -P VMW_VAAIP_T10 -t vendor -V DellEMC -M PowerStore -a -s -m 240
-u 系统将自动分配规则 ID
-a 对 XCOPY 命令使用阵列报告值
-s 对 XCOPY 命令使用多个段。仅在指定 -a 时才有效
-m 在使用不同于阵列报告值的传输大小时,适合 XCOPY 命令的最大传输大小(以 MB 为单位)。仅在指定 -a 时才有效

验证规则是否已正确添加
esxcli storage core claimrule list -c VAAI | grep "PowerStore\|Rule"
Rule Class   Rule  Class    Type    Plugin            Matches                          XCOPY Use Array Reported Values  XCOPY Use Multiple Segments  XCOPY Max Transfer Size KiB  Config String
VAAI         5001  file     vendor  VMW_VAAIP_T10     vendor=DellEMC model=PowerStore                             true                         true                       245760
7.   使用以下命令加载规则:
esxcli storage core claimrule load -c VAAI
esxcli storage core claimrule load -c Filter
8.   使用以下命令运行 VAAI 过滤器声明规则:
esxcli storage core claimrule run -c Filter
esxcfg-rescan -A
 
SLN322737_en_US__1icon 提醒:只有过滤器类规则才必须被运行。当 VAAI 过滤器声明设备时,它会自动找到要连接的正确 VAAI 插件程序。
如果以下命令未显示相关插件程序,请重新启动 ESXi 主机。

9.   运行以下命令以验证是否已加载正确的过滤器:
esxcli storage core plugin list --plugin-class=VAAI
Plugin name    Plugin class
-------------  ------------
VMW_VAAIP_T10  VAAI
 
 
esxcli storage core plugin list --plugin-class=Filter
Plugin name  Plugin class
-----------  ------------
VAAI_FILTER  Filter
10.   运行以下命令,以便为每个规则类验证是否已使用“runtime”类和“file”类更新规则,如下所示:
esxcli storage core claimrule list -c Filter | grep "PowerStore\|Rule"
Rule Class   Rule  Class    Type    Plugin       Matches                          XCOPY Use Array Reported Values  XCOPY Use Multiple Segments  XCOPY Max Transfer Size KiB  Config String
Filter       5001  runtime  vendor  VAAI_FILTER  vendor=DellEMC model=PowerStore                            false                        false                            0
Filter       5001  file     vendor  VAAI_FILTER  vendor=DellEMC model=PowerStore                            false                        false                            0
 
esxcli storage core claimrule list -c VAAI | grep "PowerStore\|Rule"
Rule Class   Rule  Class    Type    Plugin            Matches                          XCOPY Use Array Reported Values  XCOPY Use Multiple Segments  XCOPY Max Transfer Size KiB  Config String
VAAI         5001  runtime  vendor  VMW_VAAIP_T10     vendor=DellEMC model=PowerStore                             true                         true                       245760
VAAI         5001  file     vendor  VMW_VAAIP_T10     vendor=DellEMC model=PowerStore                             true                         true                       245760
对于规则类 VAAI 行:
插件程序名称应为“VMW_VAAIP_T10”
“XCOPY Use Array Reported Values”应为“true”
“XCOPY Use Multiple Segments”应为“true”
“XCOPY Max Transfer Size KiB”应为 245760。

11.   作为最终验证步骤,在 vCenter GUI 中选择驻留在 PowerStore 卷上的 VMFS 数据存储区之一,然后选择“Device Backing”。
复制盘区名称中的标识符(例如“naa.68ccf098000cb2df0ffc1d983eea45ec”之类的字符串)。如果在添加声明规则之前存在 PowerStore 设备,请务必对其中一个预先存在的设备执行此检查,以验证是否应用了声明规则。如果在添加声明规则之前没有为设备更新声明规则,则必须重新启动 ESXi 主机。

12.    image.png
使用此设备标识符,运行以下两个 ESXCLI 命令:
esxcli storage core device vaai status get -d 

例如:

验证在加载并运行 VAAI 插件程序后是否显示“VAAI Plugin Name: VMW_VAAIP_T10”

esxcli storage core device vaai status get -d naa.68ccf09800a8f879c7c2276889bc95d5
naa.68ccf09800a8f879c7c2276889bc95d5
   VAAI Plugin Name: VMW_VAAIP_T10
   ATS Status: supported
   Clone Status: supported
   Zero Status: supported
   Delete Status: supported
 
参考:
有关硬件声明规则用法的完整描述可在以下网站找到:https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.storage.doc/GUID-456EE197-FC35-4DC0-B412-879725514297.html

Affected Products

PowerStore
Article Properties
Article Number: 000202386
Article Type: How To
Last Modified: 22 Nov 2023
Version:  6
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.