Dell Unity:如何收集 Unity 性能分析所需的信息
Summary: 本文将展示如何收集日志和数据,以诊断 Unity 阵列上的性能问题。
Instructions
问题
-
连接主机的读取或写入(或两者)性能较差且响应时间很长。
-
主机应用程序的响应时间增加或过高。
-
Dell Unity 阵列上存在性能问题,需要进行性能分析。
性能问题可能有多种原因。这些包括:网络配置、拥塞、主机配置、硬件故障、磁盘争用(多个正忙 LUN 共享相同的驱动器)或存储阵列达到最大利用率。
Unity 技术支持需要获得以下文件和信息才能对性能问题进行全面调查和故障处理:
- 服务数据文件 (Data Collect)
- UPA 文件(Unity 性能归档)
- 生产环境中遇到的症状的详细说明
如果未能及时提供此戴尔知识库文章 (KB) 中的信息,可能会导致问题解决时间延长。
性能问题的详细信息(症状、时间戳等)至关重要,它使工程师能够了解需要关注的地方(时间、LUN、主机等),而不是花费几个小时来查找问题(而不是原因)。如果没有此详细信息,可能需要花费数小时来查找问题,从而导致只能分析一般的性能统计信息。
范围
客户支持服务会调查性能案例,以确定影响客户站点的问题。性能调整(为了实现主机或应用程序的峰值性能)和重新配置是存储管理员或解决方案架构师的任务 - 这不会在故障修复服务请求中处理。
不涉及实际问题的服务请求(例如请求阵列当前工作负载水平的报告)不在支持范围之内。自助或需要获得确定阵列工作负载水平的帮助的客户可以使用 LiveOptics 服务。有关此选项的详细信息,请参阅以下文章:
详细性能分析的数据和信息要求
对于每个事件,技术支持需要以下日志和 涵盖事件时间段的信息:
- 问题发生后不久生成的服务数据文件(也称为 Data Collect)。
- 如果正在使用复制,则同时需要来自两个阵列的 Data Collect 和 UPA 文件。
- 涵盖发生问题的整个时间段的 Unity UPA 文件(Unity 性能归档)。
- 如果问题存在于阵列之外,则可能还需要主机 Grab 和交换机日志。
- 可能还需要 Unity 网络跟踪。
存储块问题
- 提供清晰而详细的问题描述:
- 问题何时发生?(日期、时间和时区)
- 哪些 LUN 受到影响?
- 这对缩小搜索范围很重要。
- 是否在遇到问题的 LUN 上启用了数据缩减或高级重复数据消除?是否为其他 LUN 启用了数据缩减?(请参阅 Unity 最佳实践白皮书的 - “CPU 利用率”部分 - 第 9 页)
- 是否正在使用复制?请提供有关复制的 RPO 的信息,以及如果复制暂停,性能问题是否改善。
- 是否存在或者曾经存在活动的数据不可用?
- 在指定的时间是否有任何其他操作在运行?(备份、作业、批处理、病毒扫描、主机磁盘优化 [TRIM/UNMAP] 等)
- 如果某些功能无法按预期运行,它之前是否曾经正常运行?或者它是否是新实施/设置的一部分?最近是否添加了任何新应用程序或主机?
- 性能是如何衡量的或具体影响是什么?主机端出现延迟或错误?终端用户是否报告运行缓慢?
- SAN 环境(主机、交换机、阵列)最近是否有任何更改?
- 具体影响(受影响的应用程序、受影响的服务器数量、受影响的用户数量等)
- 此问题发生的频率如何?(持续/定期/一次性/随机)
- 受影响主机的名称是什么?
- 使用什么拓扑?FC、iSCSI 还是以太网?(如果使用 iSCSI,所有主机必须 禁用 TCP 延迟确认。
- 如果问题可能与连接有关,支持人员可能需要一个拓扑图。
- 网络中是否同时存在已知问题或最近是否升级了网络?此外,检查内部 LAN 上是否未使用 iSCSI,并且使用的任何交换机都必须是企业级交换机。
文件问题
- 提供清晰而详细的问题描述:
- 具体涉及哪些协议?
- 示例:NFS(版本)、CIFS(版本)、NDMP、iSCSI、FTP 等
- 问题是否与特定导出/共享、文件系统/LUN 相关?
- 问题在一天中的什么时间发生?(日期、时间和时区)
- 当时的活动工作负载是什么?
- 示例:登录、注销、备份、批处理作业等
- 涉及哪些主机?
- 示例:备份、虚拟机、工作站、服务器等?
- 有关应用程序的特定详细信息。
- 网络配置是什么样的?
- 提供特定接口/NIC 详细信息。
- 网络接口是否隔离在不同的 NIC 上?
- 示例:复制其专用 NIC 上的流量
收集服务数据文件 (Data Collect)
要收集服务数据文件 (Data Collect),请参阅 LKB 000023676。对在阵列上运行服务数据文件产生的输出文件,需要用于显示详细的阵列配置和阵列上发生的任何事件。支持人员建议您在事件发生后尽快收集服务数据文件 (Data Collect)。
请记住,服务数据文件将仅包含最后一个完整的 UPA 文件(一小时)和任何可用的 -tmp.archive UPA 文件。通常,此信息不足以进行适当的性能调查,还需要其他 UPA。
要在服务数据文件 (Data Collect) 中查找 UPA 文件,请转至 spx\cmd_outputs\metrics\
-
spx= 主 SP -
示例:如果 SPA 为活动 SP,则 UPA 位于此路径下:
spa\cmd_outputs\metrics
收集 UPA 文件
- 支持人员可能会要求提供其他 UPA 文件。
- 与服务数据文件 (Data Collect) 不同,阵列存储最多 48 小时的 UPA 文件。
- UPA 文件类似于下面的示例。每个文件名都包含文件中第一个数据点的日期和时间。间隔为 10 秒,涵盖 1 小时减 10 秒的时长。文件名中的日期和时间为 UTC/GMT。
- 下面示例中的最后一个 UPA 文件是最新的归档 (
-tmp.archive)时,此方法起作用。它包含最新的性能数据,可以从阵列复制(使用 SSH/CLI)以查看最新数据。支持人员可以使用此文件查看性能事件,而无需等到下一小时。
- 下面示例中的最后一个 UPA 文件是最新的归档 (
存储在戴尔 Unity 阵列上的 UPA 文件示例:01/05/2017 10:59 AM 11,017,216 _default_20170105_150000.archive
01/05/2017 11:59 AM 11,017,216 _default_20170105_160000.archive
01/05/2017 01:00 PM 11,017,216 _default_20170105_170000.archive
01/05/2017 01:59 PM 10,983,424 _default_20170105_180000.archive
01/05/2017 02:45 PM 8,308,736 _default_20170105_190000-tmp.archive
选项 1:Unisphere 列表
此选项仅适用于 Unity OE 4.2 及更高版本。此处不会列出所有可用的 UPA。UI (Unisphere) 存在限制,只能列出一些可用文件。未列出所需的 UPA 文件,请移至选项 2 或使用 SSH/CLI。
选项 2:Unisphere 时间范围
- 您可以为系统选择一个时间范围,以拉取可用的 UPA。
- 在收集日志之前请确认问题时间,以便仅下载必要的日志。
- 请记住,自定义时间范围将为本地浏览器时间,并且通常与当前工作站时间相同。
- 此选项仅适用于 Unity OE 4.2 及更高版本

使用 SSH/CLI
根据选项 1,还可以使用 CLI 访问 UI (Unisphere) 中未列出的更多 Unity 阵列上的 UPA。
-
使用服务用户和服务密码登录
-
将所需的日志复制到
/cores/service/userfrom/EMC/backend/metricsluna1/archives -
使用 WinSCP 或类似的工具下载这些日志
-
如果阵列为 OE 4.5.X 或更高版本,请将文件协议更改为 SCP
-
使用 service 用户和服务密码登录。
-
ll /EMC/backend/metricsluna1/archives/
cp /EMC/backend/metricsluna1/archives/_default_20230221_180000.archive.gz /cores/service/user
提醒:如果您仅收集最新的 UPA,建议您使用 |tail-10,因为后端上有大量可用的 UPA 文件;但您可以列出所有文件。

主机数据收集
可能会需要主机 Grab(或 EMC 报告)输出文件,尤其是如果特定主机的问题是唯一的。
-
请转至 https://www.dell.com/support/home/(戴尔支持站点)并搜索 Grab 实用程序以查找正确的主机操作系统(例如:ESXi 主机 grab)
-
下载实用程序和 README 文件。
-
按照 README 文件运行所选主机操作系统的实用程序。
交换机日志
如果性能问题仅存在于某些路径上,则可能需要交换机日志。有关说明,请参阅以下 LKB(基于所使用的型号):
Brocade/Connectrix