监控 FSx 的 ONTAP 工作负载平衡 - FSx for ONTAP
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

监控 FSx 的 ONTAP 工作负载平衡

如果您的文件系统具有多个 HA 对,则其性能和吞吐量将分布在每个 HA 对中。FSx for ONTAP 会在文件写入文件系统时自动平衡文件,但在极少数情况下,您的工作负载数据或 I/O 可能会在 HA 对之间变得不平衡,从而影响工作负载的整体性能。您可以监控工作负载,以确保工作负载在文件系统的每个 HA 对(以及它们相应的文件服务器和聚合,即构成主存储层的存储池)之间保持平衡。

主存储利用率平衡

文件系统的主存储容量在称为聚合的存储池中的每个 HA 对之间平均分配。每个 HA 对都有一个聚合。我们建议您将主存储层的平均利用率持续保持在 80% 以内。对于具有多个 HA 对的文件系统,我们建议您将每个聚合的平均利用率保持在 80%。

保持 80% 的利用率可确保有可用空间容纳新的传入数据,并保持可观的维护操作开销,这可能会暂时占用聚合上的可用空间。

如果您发现聚合不平衡,则可以增加文件系统的主存储容量(相应地增加每个聚合的存储容量),也可以使用 ONTAP CLI 中的卷移动命令在聚合之间移动卷

文件服务器和磁盘性能利用率不平衡

文件系统的总性能能力(例如网络吞吐量、文件服务器到磁盘的吞吐量和 IOPS 以及磁盘 IOPS)在文件系统的 HA 对之间平均分配。对于所有性能限制,我们建议您将平均利用率保持在 50% 以下(最大峰值利用率保持在 80% 以下),这既适用于所有 HA 对中的文件系统文件服务器资源的总体利用率,也适用于每个文件服务器。

如果您注意到您的文件服务器性能利用率不平衡,并且工作负载不平衡的文件服务器的持续利用率超过 80%,则可以使用 ONTAP CLI 和 REST API 进一步诊断性能失衡的原因并进行修复。下表列出了可能的不平衡指标以及进一步诊断的后续步骤。

如果你的文件系统是... 则...

文件服务器磁盘吞吐量或文件服务器磁盘 IOPS 不平衡

您可能遇到 HA 对子集(包含正在访问的大量数据的卷子集)上的 I/O 热点,这可能会限制工作负载的整体性能,因为它在高可用性对子集上存在瓶颈。对于每台利用率高的文件服务器,请检查利用率最高的卷,以查看聚合中哪些卷的活动最多。有关此过程的更多信息,请参阅重新平衡利用率高的卷

网络吞吐量不平衡,但您的文件服务器磁盘吞吐量、文件服务器磁盘 IOPS 或磁盘 IOPS 并非不平衡

您的数据在 HA 对之间均匀分布,但您的客户端却不是。对于网络吞吐量利用率高于其他文件服务器的文件服务器,请检查每台文件服务器的顶级客户端,然后通过从这些客户端上卸载任何卷,然后在不同 HA 对上使用不同的端点重新装载这些客户端,从而重新平衡这些客户端。有关此过程的更多信息,请参阅重新平衡高流量客户端

将 CloudWatch 维度映射到 ONTAP CLI 和 REST API 资源

您的横向扩展文件系统的亚马逊 CloudWatch 指标为FileServerAggregate维度。为了进一步诊断不平衡的情况,您需要在 ONTAP CLI 或 REST API 中将这些维度值映射到特定的文件服务器(或节点)和聚合。

  • 对于文件服务器,每个文件服务器名称都映射到 ONTAP 中的文件服务器(或节点)名称(例如FsxId01234567890abcdef-01)。奇数文件服务器是首选的文件服务器(也就是说,除非文件系统已故障转移到辅助文件服务器,否则它们会为流量提供服务),而偶数文件服务器是辅助文件服务器(也就是说,它们仅在伙伴服务器不可用时提供流量)。因此,辅助文件服务器的利用率通常低于首选文件服务器。

  • 对于聚合,每个聚合名称都映射到 ONTAP 中的聚合(例如,aggr1)。每个 HA 对都有一个聚合,这意味着聚合aggr1由 HA 对中的文件服务器 FsxId01234567890abcdef-01FsxId01234567890abcdef-02(活动文件服务器)和(辅助文件服务器)共享,聚合aggr2由文件服务器FsxId01234567890abcdef-03共享FsxId01234567890abcdef-04,依此类推。

您可以使用 ONTAP CLI 查看所有聚合和文件服务器之间的映射。

  1. 要通过 SSH 登录文件系统的 NetApp ONTAP CLI,请按照《适用于 ONTAP 的 Amazon FSx 用户指南》一使用 NetApp ONTAP CLI节中记录的步骤 NetApp 进行操作。

    ssh fsxadmin@file-system-management-endpoint-ip-address
  2. 使用存储聚合 show 命令指定-fields node参数。

    ::> storage aggregate show -fields node aggregate node ------------------------------- ------------------------- aggr1 FsxId01234567890abcdef-01 aggr2 FsxId01234567890abcdef-03 aggr3 FsxId01234567890abcdef-05 aggr4 FsxId01234567890abcdef-07 aggr5 FsxId01234567890abcdef-09 aggr6 FsxId01234567890abcdef-11 6 entries were displayed.

重新平衡高流量客户端

如果您遇到文件服务器之间的 I/O 不平衡问题(特别是在网络吞吐量利用率方面),那么高的 I/O 客户机可能是原因。要识别高流量客户端,请使用 ONTAP CLI。

  1. 要通过 SSH 登录文件系统的 NetApp ONTAP CLI,请按照《适用于 ONTAP 的 Amazon FSx 用户指南》一使用 NetApp ONTAP CLI节中记录的步骤 NetApp 进行操作。

    ssh fsxadmin@file-system-management-endpoint-ip-address
  2. 要查看流量最高的客户端,请使用统计顶级客户端 show ONTAP CLI 命令。您可以选择将-node参数指定为仅查看特定文件服务器的顶级客户端。如果您要诊断特定文件服务器的不平衡,请使用-node参数,node_name替换为文件服务器的名称(例如,FsxId01234567890abcdef-01)。

    您可以选择添加-interval参数,提供输出每个报告之前的测量间隔(以秒为单位)。增加间隔(例如,最大为 300 秒)可以为每个卷的流量提供较长期的样本。默认值为5(秒)。

    ::> statistics top client show -node FsxId01234567890abcdef-01 [-interval [5,300]]

    在输出中,排名靠前的客户端按其 IP 地址和端口显示。

    *Total Total Client Vserver Node Ops (Bps) ------------------ --------- ------------------------- ------ --------- 172.17.236.53:938 svm01 FsxId01234567890abcdef-01 2143 140443648 172.17.236.160:898 svm02 FsxId01234567890abcdef-01 812 53215232
  3. 您可以将列出的高流量客户端中的一部分重新平衡到其他文件服务器。为此,请从客户端卸载该卷,然后使用 SVM 的 NFS/SMB 端点的 DNS 名称将其重新挂载——这将返回一个与随机 HA 对相对应的随机端点。

    我们建议您重复使用 DNS 名称,但您可以选择明确选择给定客户端挂载的 HA 对。为确保将客户端安装到不同的终端节点,您可以改为指定与流量较大的节点对应的端点 IP 地址不同的终端节点 IP 地址。你可以通过运行以下命令来做到这一点:

    ::> network interface show -vserver svm_name -lif nfs_smb_management* -fields address,curr-node vserver lif address curr-node --------- -------------------- ------------ ------------------------- svm01 nfs_smb_management_1 172.31.15.89 FsxId01234567890abcdef-01 svm01 nfs_smb_management_3 172.31.8.112 FsxId01234567890abcdef-03 2 entries were displayed.

    根据该statistics top client show命令的示例输出,客户端172.17.236.53正在将大量流量带到FsxId01234567890abcdef-01network interface show命令的输出表明这是地址172.31.15.89。要挂载到其他端点,请选择任何其他地址(在本例中,唯一的其他地址是172.31.8.112,对应于FsxId01234567890abcdef-03)。

重新平衡利用率高的卷

如果您的卷或聚合之间的 I/O 不平衡,则可以重新平衡卷,以便在各卷之间重新分配 I/O 流量。

注意

如果您的聚合之间出现存储利用率不平衡的情况,则通常不会对性能产生任何影响,除非高利用率与 I/O 不平衡相结合。虽然您可以在聚合之间移动卷以平衡存储利用率,但我们建议您仅在看到性能影响时才移动卷,因为如果您不考虑正在考虑移动的每个卷的 I/O,则移动卷可能会对性能产生不利影响。

  1. 要通过 SSH 登录文件系统的 NetApp ONTAP CLI,请按照《适用于 ONTAP 的 Amazon FSx 用户指南》一使用 NetApp ONTAP CLI节中记录的步骤 NetApp 进行操作。

    ssh fsxadmin@file-system-management-endpoint-ip-address
  2. 使用 stati stics volume show ONTAP CLI 命令查看给定聚合的最高流量,但有以下更改:

    • 聚合名称替换为聚合的名称(例如,)。aggr1

    • 您可以选择添加-interval参数,提供输出每个报告之前的测量间隔(以秒为单位)。增加间隔(例如,最大为 300 秒)可以为每个卷的流量提供较长期的样本。默认值为5(秒)。

    ::> statistics volume show -aggregate aggregate_name -sort-key total_ops [-interval [5,300]]

    根据您选择的时间间隔,显示数据最多可能需要 5 分钟。该命令显示聚合中的所有卷,以及流向每个聚合的流量。

    *Total Read Write Other Read Write Latency Volume Vserver Aggregate Ops Ops Ops Ops (Bps) (Bps) (us) ---------- ------- --------- ------ ---- ----- ----- --------- ----- ------- vol1__0007 svm1 aggr1 4078 4078 0 0 267255808 0 1092 vol1__0005 svm1 aggr1 4078 4078 0 0 267255808 0 1086 vol1__0003 svm1 aggr1 4077 4077 0 0 267223040 0 1086 vol1__0001 svm1 aggr1 4077 4077 0 0 267239424 0 1087 vol1__0008 svm1 aggr2 2314 2314 0 0 151650304 0 1112 vol1__0006 svm1 aggr2 2144 2144 0 0 140509184 0 1104 vol1__0002 svm1 aggr2 2183 2183 0 0 143065088 0 1106 vol1__0004 svm1 aggr2 2183 2183 0 0 143065088 0 1103

    交易量统计数据按成分股显示(例如,vol1__0015是第15个成分股 FlexGroupvol1)。从示例输出中可以看出,的成分比成aggr1分的利用率更高。aggr2要平衡聚合之间的流量,可以在聚合之间移动组成卷,以便更均匀地分配流量。

  3. 要在聚合之间移动卷,请使用卷移动启动 ONTAP CLI 命令,替换以下值:

    • svm_name 替换为托管您要移动的卷的 SVM 的名称。

    • 将 v olume_nam e 替换为卷组成部分的名称(例如,)。vol1__0001

    • 聚合名称替换为卷的目标聚合的名称。

    重要

    卷移动会消耗源文件服务器和目标文件服务器的网络和磁盘资源。因此,任何正在进行的卷移动都可能影响工作负载的性能。此外,卷移动过程还有一个切换阶段,该阶段会暂停任何流向该卷的流量的 I/O。

    ::> volume move start -vserver svm_name -volume volume_name -destination aggregate_name -foreground false [Job 1] Job is queued: Move "vol1__0001" in Vserver "svm01" to aggregate "aggr1". Use the "volume move show -vserver svm01 -volume vol1__0001" command to view the status of this operation.

    要检查卷移动操作的状态,请使用 volume move show ONTAP CLI 命令。

    ::> volume move show -vserver svm_name -volume volume_name Vserver Name: svm01 Volume Name: vol1__0001 Actual Completion Time: - Bytes Remaining: 1.00TB Specified Action For Cutover: retry_on_failure Specified Cutover Time Window: 30 Destination Aggregate: aggr2 Destination Node: FsxId01234567890abcdef-03 Detailed Status: Transferring data: 12.23GB sent. Percentage Complete: 1% Move Phase: replicating Prior Issues Encountered: - Estimated Remaining Duration: 00:40:25 Replication Throughput: 434.3MB/s Duration of Move: 00:00:27 Source Aggregate: aggr2 Source Node: FsxId01234567890abcdef-01 Move State: healthy

    此命令显示完成移动的估计时间,作为其中一个信息字段。操作完成后,相同的命令将显示该Move Phase字段已完成。

您应确保每种FlexGroup成分均匀分布在您的聚合物中,理想情况下,每个聚合物建议使用8种成分。如果您将一个成分交易量移至另一个合计以获得原本平衡的合计FlexGroup,则应反过来将另一个(利用率较低的)成分交易量移至源合计以保持平衡。