你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
在本文中,您将学习如何使用 Get-EsxtopData Azure VMware 解决方案 中的 Run 命令,通过 vCenter Server API 从单个 ESXi 主机收集批处理模式ServiceManager 性能快照,并将生成的 CSV 文件上传到数据存储。 该命令不需要对ESXi主机进行SSH访问。
使用此命令捕获低层级 CPU、内存、网络和存储指标,用于性能故障排除。
先决条件
在收集esxtop数据之前,请确保:
你可以访问 Azure 门户,权限相当于 Azure VMware 解决方案 私有云的 cloudadmin 角色。
你正在使用 Microsoft.AVS.Management 运行命令包的最新受支持版本。
目标ESXi主机在指定的集群内处于 连接 状态。
集群上可访问vSAN数据存储(或客户指定的数据存储)以进行CSV上传。
运行命令参数: Get-EsxtopData
ClusterName — 包含目标ESXi主机的vSphere集群名称。 例如,
Cluster-1。EsxiHostName — ESXi 主机名或名称前缀。 将使用第一个与该前缀匹配的已连接主机。 例如,
esx01。迭代 次数——需要收集的esxtop快照数量。 有效值为
1到6。 默认值为6。 结合 IntervalSeconds,第一个和最后一个样本之间的总间隔不得超过30秒:(Iterations - 1) * IntervalSeconds <= 30。IntervalSeconds — 快照之间等待的秒数。 有效值为
2到30。 默认值为5。 最小秒2数与esxtop最小采样间隔相符。OutputDatastoreName — 上传CSV文件的数据存储名称。 如果省略,该值将默认为集群上的第一个 vSAN 数据存储。 在使用非 vSAN 数据存储时,或在自动发现 vSAN 未找到所需目标时,请指定此参数。
最多保留 —— cmdlet 输出的保留期限。 默认值为
60。请指定执行名称 ——字母数字名称。 例如, Get-EsxtopData-Exec1。
超时 — 如果 cmdlet 完成所需时间过长,则在超过此时间后退出。
收集 esxtop 数据
在 Azure 门户中访问你的 Azure VMware 解决方案 私有云。
选择运行命令>Packages>Microsoft.AVS.Management。
选择 Get-EsxtopData。
提供所需值,或根据前述参数列表更改默认值。 然后选择运行。
注释
ClusterName 和 EsxiHostName 字段是必填的。 其他字段都是默认值,且为可选。
CSV 文件包含以下列:
时间戳 ——样本被采集的日期和时间(
yyyy-MM-dd HH:mm:ss)。SampleNumber — 顺序采样编号(
1通过 迭代)。RawData — 由 vCenter Server esxtop
FetchStatsAPI 返回的原始 esxtop 计数器数据。
利用esxtop CounterInfo API调用中的计数器元数据,将原始数据字段映射到特定的性能指标(CPU、内存、网络和磁盘)。
最佳做法和安全指南
先使用默认值(迭代次数为 6 次,间隔为 5 秒),即可快速获得 25 秒的捕获时长。
总采样窗口限制为第一和最后一个采样之间的 30秒 。 超过该限制
(Iterations - 1) * IntervalSeconds > 30()会导致错误。如果你需要更长的采集周期,可以多次运行命令,并用时间戳对应输出文件。
当集群包含多个数据存储,或者自动发现 vSAN 数据存储时未选中所需的目标时,请使用 OutputDatastoreName。
该命令不需要SSH访问。 它使用 vCenter Server
ServiceManagerAPI 来收集数据。该命令不会修改软件定义数据中心(SDDC)或任何主机配置(
UpdatesSDDC = false)。
后续步骤
使用 vSphere Client 或数据存储浏览器从
[datastore]/esxtop_output/下载 CSV 文件。使用 VMware esxtop计数器引用 来解析原始性能数据。