微信号:dellemc_tech

介绍:为戴尔易安信客户提供技术支持服务,为广大IT行业用户分享技术文章与行业信息。

VMware存储性能问题排错指南

2016-09-01 17:35 EMC中文技术社区

      当执行存储相关的命令时,VMware vSphere中存储相关的性能参数可能会出现峰值变化,同时这些存储命令也可能需要更长的时间来完成。本文将介绍当出现这种情况时的基本排错方法。

 

存储设备性能衡量指标:

 

      vSphere性能衡量指标由esxtop、resxtop提供,并且vSphere Client显示的是样本时间段内的平均数。在每个样本时间段结束时生成测量快照,对值进行平均,结果值作为该范围内的平均值进行报告。如果采样的衡量指标由非同类的数据集组成,则衡量指标可能会出乎意料地倾斜。


      例如,如果所有样本中的命令不是以相同的速度完成,则存储设备命令延迟 (DAVG/cmd) 的测量可能会生成比预期更高或更低的值。大多数存储设备命令在25ms内快速地完成,


       但是还有极少数的命令(如,VAAI中使用的XCOPY命令)可能会花费更多的时间。但是,如果特定的采样时间段由少数的快速命令和一个非常慢的命令组成,则这些命令的平均数将比中数大。即使这些示例仅描述需较长时间完成的单个命令,但是在采样时间段内测量的存储延迟的平均数仍会大不相同,具体取决于在相同时间内完成的其他命令的数量:


         4 个命令在 1ms 内完成和 1 个命令在 500ms 内完成,这表明平均延迟时间为 100.8ms。


         9 个命令在 1ms 内完成和 1 个命令在 500ms 内完成,这表明平均延迟时间为 50.9ms。


         19 个命令在 1ms 内完成和 1 个命令在 500ms 内完成,这表明平均延迟时间为 25.95ms。


      注意:考虑在评估任一采样的性能衡量指标时的测量内容,之后基于这些衡量指标下结论。


      设备延迟时间增加的某些可能原因如下:

  • 对目标进行了更改

  • 磁盘或介质故障

  • 设备过载

  • 故障切换

 


使用ESXTOP命令配置监控:

 

      可以使用交互式esxtop程序提供连接到 VMware ESX主机各种设备的I/O衡量指标。


      要监控每个HBA的存储性能,请执行以下操作:


  1. 在命令行键入esxtop以启动命令。

  2. 按d切换到磁盘视图(HBA 模式)。

  3. 要查看完整的设备名称,请按SHIFT + L并在“更改名称字段大小”中输入36。

  4. 按f修改显示的字段。

  5. 按b、c、d、e、h和j切换字段,然后按Enter。

  6. 按s,接着按2将更新时间间隔改为2秒,然后按Enter。

    注意:这些选项仅在 VMware ESX 3.5及更高版本中可用。


      要按每个 LUN 监控存储性能,请执行以下操作:

  1. 从命令行键入esxtop以启动命令。

  2. 按u切换到磁盘视图(LUN 模式)。

  3. 按f修改显示的字段。

  4. 按b、c、f 和h切换字段,然后按Enter。

  5. 按s,接着按 2 将更新时间间隔改为2秒,然后按Enter。


      要增加esxtop中设备字段的宽度以显示完整的naa id,请执行以下操作:

  1. 在命令行键入esxtop以启动命令。

  2. 按u切换到磁盘设备显示。

  3. 按L (大写)更改名称字段大小。

  4. 输入值36以显示完整的naa标识符。


      要按每个虚拟机监控存储性能,请执行以下操作:

  1. 在命令行键入esxtop以启动命令。

  2. 键入v切换到磁盘视图(虚拟机模式)。

  3. 按f修改显示的字段。

  4. 按b、d、e、h和j切换字段,然后按Enter。

  5. 按s,接着按2将更新时间间隔改为2秒,然后按Enter。

 


ESXTOP命令详解:

 

      有关相关列和这些值的描述,请参阅下表:

       

项目

描述

CMDS/s

这是指每秒命令总数,包括IOPS(每秒输入/输出操作数)和其他SCSI命令,如SCSI reservations、locks、vendor string requests、unit   attention等要发送到或发送自受监控设备或虚拟机的命令。

在大多数情况下,除非有大量元数据操作(如SCSI预留),否则CMDS/s = IOPS。

DAVG/cmd

这是发送给设备的每个命令的平均响应时间(以毫秒为单位)。

KAVG/cmd

这是命令在VMkernel中花费的时间。

GAVG/cmd

是指客户机操作系统感知的响应时间。该值使用此公式计算: DAVG + KAVG = GAVG


      上述列既适用于读取操作,也适用于写入操作,而xAVG/rd只适用于读取操作,xAVG/wr只适用于写入操作。将这些列的结合起来是监控性能的最好方式,但是高读取或写入响应时间可能表示该阵列上的读取或写入缓存处于禁用状态。所有阵列的执行方式都不同,但对于持续的时间段,DAVG/cmd、KAVG/cmd和GAVG/cmd不应超出10 毫秒 (ms)。


      注意:VMware ESX 3.0.x 不包含使用 esxtop 监控各个 LUN 或虚拟机的直接功能。不活动 LUN 降低了DAVG/cmd、KAVG/cmd和 GAVG/cmd 的平均值。这些值也可以从vCenter Server 性能图表中看到。


      如果遇到滞后时间值过高的情况,可查看交换机和SAN设备的当前性能衡量指标和运行配置。检查发送、接收和确认操作中可能表示其为延迟的错误或日志记录。这包括阵列从心轴计数方面处理I/O的能力,或者阵列处理提供给它的负载的能力。


      如果响应时间增加到超过5000毫秒,则VMware ESX将让命令超时并中止操作。这些事件已记入日志;可以在以下日志中查看中止消息和其他 SCSI 错误:

  • ESX 3.5 和 4.x – /var/log/vmkernel

  • ESXi 3.5 和 4.x – /var/log/messages

  • ESXi 5.x 及更高版本 - /var/log/vmkernel.log


      在这些文件中可能看到的存储日志记录的类型取决于服务器配置。可通过主机 > 配置 > 高级设置 > SCSI > SCSI.Log*或 SCSI.Print* 查找这些参数的数值。

 


VMware vSphere内存管理和监控示意图:

 

      下图综合描绘了VMware vSphere内存管理和监控示意图。其中也包含了esxtop命令中的相关参数:



更多精彩内容,请点击阅读原文”进行查看!

如何每天都能收到如此精彩的文章?

①点击右上角点击查看官方账号”→点击关注

②长按并识别下图中的二维码,直接访问EMC中文支持论坛


 
戴尔易安信技术支持 更多文章 备份和归档的区别 云计算的三种模型:公有云、私有云和混合云 正确描述IO类型 【大咖讲网络】谁动了我的网络 浅析I/O处理过程与存储性能的关系
猜您喜欢 远程调试你的 Python 代码 canvas\/webgl测试数据稳定性专项优化优秀实践 Apache顶级项目介绍9-Thrift SSD领域职位_第13期 SOA到底是个啥