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

使用 esxtop 配置监控

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

  1. 通过在命令行键入 esxtop 启动 esxtop。
  2. d 切换到磁盘视图(HBA 模式)。
  3. f 修改显示的字段。
  4. 要查看整个设备名称,请按 SHIFT + L,然后在“更改名称字段大小”中输入 36。
  5. bcdehj 切换字段,然后按 Enter
  6. 依次按 s2 将更新时间更改为每 2 秒,然后按 Enter
  7. 相关列的描述,请参见分析 esxtop 列

注意:以下选项仅适用于 VMware ESX 3.5 和更高版本。

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

  1. 通过从命令行键入 esxtop 启动 esxtop。
  2. u 切换到磁盘视图(LUN 模式)。
  3. f 修改显示的字段。
  4. bcf h 切换字段,然后按 Enter
  5. 依次按 s2 将更新时间更改为每 2 秒,然后按 Enter
  6. 相关列的描述,请参见分析 esxtop 列

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

  1. 通过在命令行键入 esxtop 启动 esxtop。
  2. u 切换到磁盘设备显示。
  3. L 更改名称字段大小。
    注意:确保使用大写的 L。
  4. 输入数值 36 以显示完整的 NAA 标识符。

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

  1. 通过在命令行键入 esxtop 启动 esxtop。
  2. 键入 v 切换到磁盘视图(虚拟机模式)。
  3. f 修改显示的字段。
  4. bdeh j 切换字段,然后按 Enter
  5. 依次按 s2 将更新时间更改为每 2 秒,然后按 Enter
  6. 相关列的描述,请参见分析 esxtop 列
分析 esxtop 列

此表列出了相关列以及这些值的简短描述:


描述

CMDS/s

每秒的命令总数,包括 IOPS(每秒输入/输出操作数)以及其他 SCSI 命令,如
发送到或来自受监控设备或虚拟机的 SCSI 预留、锁定、供应商字符串请求、单位注意信号命令等。

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

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 毫秒(或 5 秒),则 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*查找这些选项的值。

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2074626

使用 esxtop 识别存储性能问题的更多相关文章

  1. SQL Server 2016 查询存储性能优化小结

    SQL Server 2016已经发布了有半年多,相信还有很多小伙伴还没有开始使用,今天我们来谈谈SQL Server 2016 查询存储性能优化,希望大家能够喜欢 作为一个DBA,排除SQL Ser ...

  2. 浅析I/O处理过程与存储性能的关系

    浅析I/O处理过程与存储性能的关系 https://community.emc.com/docs/DOC-28653 性能”这个词可以说伴随着整个IT行业的发展,每次新的技术出现,从硬件到软件大多数情 ...

  3. 请说出ArrayList,Vector, LinkedList的存储性能和特性

    请说出ArrayList,Vector, LinkedList的存储性能和特性 解答:ArrayList和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都 ...

  4. Azure 进阶攻略 | 电脑跑分你会,但虚拟机存储性能跑分的正确姿势你造吗?

    想学生时代,小编最爱做的就是研究电脑硬件,然后给自己.朋友和童鞋装机.装好后呢?当然要第一时间跑分了!各种跑分软件运行一遍,不断优化,不断测试.终于得到一个满意成绩,截图分享到网上显摆一下.当年为啥就 ...

  5. RAID 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案

    可用容量:(n-1)/n的总磁盘容量(n为磁盘数) 原因:RAID5把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上,其中任意N-1块 ...

  6. [转帖]深度: NVMe SSD存储性能有哪些影响因素?

    深度: NVMe SSD存储性能有哪些影响因素? http://www.itpub.net/2019/07/17/2434/ 之前有一个误解 不明白NVME 到底如何在队列深度大的情况下来提高性能, ...

  7. ArrayList,Vector, LinkedList的存储性能和特性?

    ArrayList,Vector, LinkedList的存储性能和特性? ArrayList 采用的是数组形式来保存对象的,这种方式将对象放在连续的位置中,所以最大的缺点就是插入或删除时非常麻烦. ...

  8. 使用FIO工具测试块存储性能

    Linux实例和Windows实例都推荐使用FIO工具测试块存储性能.   说明 您也可以使用其他工具测试块存储性能,但不同工具测试出来的硬盘基准性能会有差异,如dd.sysbench.iometer ...

  9. 阐述ArrayList、Vector、LinkedList的存储性能和特性。

    答:ArrayList 和Vector都是使用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,它们都允许直接按序号索引元素,但是插入元素要涉及数组元素移动等内存操作,所以索引数据快 ...

随机推荐

  1. HDU 4847 陕西邀请赛A(水)

    HDU 4847 Wow! Such Doge! pid=4847" style="">题目链接 题意:给定文本,求有几个doge,不区分大写和小写 思路:水题.直 ...

  2. plsql 快捷键配置

      plsql 快捷键配置 CreateTime--2018年4月23日17:41:45 Author:Marydon 功能快捷键 预设条目 中文解释 快捷键配置Edit/Undo 撤销 ctrl+z ...

  3. spring mvc自定义数据转换

    @InitBinder   在controller中注册一个customer protperty editor以解析request中的参数并通过date bind机制与handler method中的 ...

  4. 类的专有方法(__repr__)

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #http://blog.csdn.net/yyt8yyt8/article/details/7030416 ...

  5. python简单实现随机验证码

    这是自己在学习pyton时写的一个随机验证码,有不对的地方欢迎指出 代码 import random def verification(): lis = '' for i in range(4): S ...

  6. 竞态条件与sigsuspend函数

    一.利用pause和alarm函数实现sleep函数 #include <unistd.h> int pause(void); pause函数使调用进程挂起直到有信号递达.如果信号的处理动 ...

  7. Python floor() 函数

    描述 floor(x) 函数返回一个小于或等于 x 的的最大整数(向下取整) 语法 以下是 floor() 方法的语法: import math math.floor( x ) 注意:floor()是 ...

  8. Spring注解运行时抛出null

    关于Spring的注解其实不难,大致需要以下几个流程: 一.配置Spring的注解支持 <?xml version="1.0" encoding="UTF-8&qu ...

  9. Java总结篇系列:Java多线程(四)

    ThreadLocal是什么 早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路.使用这个工具类可以很简洁地 ...

  10. openvpn证书吊销

    声明变量source ./vars使用revoke-full命令吊销客户端证书./revoke-full client-name(common name)命令执行后,我们能在keys目录中找到一个文件 ...