排查 Azure 管理的 Lustre 性能问题

本文介绍如何排查部署 Azure 托管 Lustre 文件系统时可能会遇到的常见问题。

先决条件

  • 在 Azure 门户中访问 AMLFS 资源
  • Lustre 客户端虚拟机(VM)的管理特权
  • 熟悉 Azure 网络和安全概念

最佳做法

若要保持最佳性能和安全性,请更新 Lustre 客户端。 若要从最新的 bug 修复和优化中获益,请使用来自 packages.microsoft.com 的最新 Lustre 客户端软件。 有关 更新说明,请参阅 AMLFS 文档。 如果使用集成映像(例如 HPC 映像),请将 VM 更新为最新的 Lustre 客户端的最新映像。

症状 1:吞吐量或带宽低于预期,或者延迟高于预期

如果 AMLFS 部署未达到预期的吞吐量或带宽,或者你注意到延迟增加,请查看配置区域:

潜在问题 建议措施
可用区布局 若要最大程度地减少延迟,请确保 Lustre 客户端(计算节点)和 AMLFS 位于同一 Azure 区域和可用性区域。
高速网络 在所有 Lustre 客户端 VM 上启用加速网络,以最大化带宽。 有关说明 ,请参阅客户端先决条件
文件条带化配置 为需要访问大型文件的工作负载优化文件条带化。 更广泛的条带化可提高单个文件的吞吐量,但对较小的文件可能有害。 有关指南,请参阅 AMLFS 文档
文件系统大小 将预配的吞吐量(显示在 AMLFS 概述选项卡上)与当前使用情况(监视选项卡)进行比较。 如果达到了此限制,请考虑预配吞吐量更大的文件系统。
Azure 防火墙配置 配置 Azure 防火墙以避免通过防火墙路由 Lustre 客户端和 AMLFS 流量。 只过滤进出子网的流量,而不是子网内部的流量。 有关详细信息,请参阅 AMLFS 文档。

重要参考:

症状 2:负载暂停或挂载文件系统时卡住

工作负荷可能会暂停或装载由于多个业务流程协调程序或网络问题而停滞。 使用清单进行故障排除。

潜在问题 建议措施
客户端驱逐 在停止、解除分配或重新启动 Lustre 客户端 VM 之前,始终卸载文件系统(不使用 -f 或 -l)。 未能执行此作可能会导致逐出事件,导致其他装载的客户端由于缓存能力与其一致协议相结合而遇到最多 15 分钟的暂停。 可以在 Azure 门户“监控”选项卡上查看 Lustre 客户端驱逐情况。
发现 VM、VMSS 和业务流程协调程序做法 在解除分配实例之前,请遵循适当的过程卸载 Lustre。 使用计划的事件来自动卸载并防止客户端被驱逐。 请参阅此表后面的 重要引用
网络安全组(NSG)或防火墙配置错误 查看对 NSG 或防火墙规则的最新更改。 确保所有必需的端口和终结点都处于打开状态。 规则更改只能在 VM 重新启动或其他 TCP 重新连接事件后生效。
维护时段 如果遇到临时暂停,请检查 Azure 门户中配置的维护时段。 AMLFS 可能正在进行计划的维护。 有关维护详细信息、通知设置以及如何根据需要修改维护时段,请参阅 AMLFS 文档。

重要参考:

Lustre 客户端上的安全扫描程序和防病毒

避免在多个客户端上同时针对 Lustre 挂载点运行防病毒、EDR、漏洞或安全扫描程序(例如 ClamAV)。 递归遍历文件系统可以生成大量元数据操作。 文件系统的遍历操作在共享资源(特别是文件系统根目录和经常访问的目录)上竞争锁,这可能会导致群集中的工作负载变慢。

如果需要扫描 Lustre 文件系统,请在低活动时间内从单个专用客户端运行扫描程序。 从所有其他客户端上的扫描程序配置中排除 Lustre 装载(每个客户端上的数据相同,因此每个客户端扫描都不提供额外的安全覆盖)。 若要尽量减少影响,请优化扫描速率。