Ready time是vcpu在队列中等待pcpu(或物理内核)准备执行其指令的时间。调度程序处理队列,当存在争用并且处理资源受到压力时,队列可能变长。
Ready time描述了特定world在队列中等待的最后观察期的大小。特定world的Ready time(例如,vcpu)表示在该时间间隔内等待队列访问pcpu的时间。它可以表示为每个vcpu在观察时间内的百分比,并且在统计上,它不能平均为零。
因此,Ready time的值表示VM被拒绝访问它想要使用的pcpu资源多长时间。这使它成为一个很好的绩效指标。
当多个进程尝试使用相同的物理cpu时,该cpu可能无法立即可用,并且进程必须等待ESXi主机才能为其分配cpu。
cpu调度程序管理对主机系统上的物理cpu的访问。cpu使用率或cpu就绪的短暂峰值表示您正在充分利用主机资源。但是,如果两个值都一直很高,则主机可能过载并且性能可能很差。
通常,如果VM的cpu使用值高于90%且cpu就绪值超过每个vcpu 20%(大量vcpu),则性能会受到负面影响。
此延迟可能会影响客户机操作系统的性能以及VM内应用程序的运行。
vSphere中如何监控其Ready time
1.打开vSphere Web Client。2.在主屏幕上,导航到“ 主机和群集”。
3.展开左侧导航列表。
5.导航到“ 监控”选项卡。
6.导航到“ 性能”选项卡。
7.导航到“ 高级”视图。
8.单击图表选项。
9.从图表指标导航到cpu。
10.导航到VM对象,仅选择以MHz为单位的Demand,Ready和Usage。
调查潜在cpu问题时的关键指标如下:
Demand:VM尝试使用的cpu数量。Ready:实际允许VM使用的cpu数量。Usage:VM已准备好运行但(无法完成工作)的时间量无法实现,因为vSphere无法找到运行VM的物理资源。11.单击“ 确定”。
在以下屏幕截图中,您将看到VM的高准备时间:
请注意此VM要求的cpu数量,并将其与VM实际能够获得的cpu使用量进行比较(以MHz为单位的使用率)。VM要求比目前允许使用的更多。
请注意,VM也看到了大量的就绪时间。
准备时间大于10%可能是一个性能问题。但是,一些对cpu敏感的应用程序和VM可以具有更高的就绪时间值,并且仍然可以令人满意地运行。
如何运作的
当vcpu准备好运行时(即,它有一个要执行的任务),vcpu处于就绪状态。但由于vSphere调度程序无法找到运行VM的物理主机cpu资源,因此无法运行。提升就绪时间的一个潜在原因是VM受用户设置的cpu限制或资源池限制的约束,报告为最大限制(MLMTD)。由于限制而被拒绝的cpu量被测量为度量最大限制。在resxtop/esxtop和vCenter Server 之间以两个不同的值报告就绪时间。在resxtop/esxtop中,以易于理解的百分比格式报告。5%的数字意味着VM花费了其上一个采样周期的5%,等待可用的cpu资源(仅适用于1-vcpu VM)。在vCenter Server中,将就绪时间报告为时间度量。例如,在vCenter Server的实时数据(每20,000毫秒生成样本值)中,报告的数据为1,000毫秒,准备时间为5%。据报道,10%的就绪时间为2,000毫秒。
虽然高就绪时间通常表示cpu争用,但这种情况并不总是需要采取纠正措施。如果就绪时间的值接近cpu使用的时间量值,并且如果cpu活动偶尔出现增加的就绪时间但是长时间不持续,则这可能不表示性能问题。短暂的性能影响通常在可接受的性能差异范围内,并且不需要管理员的任何操作。
原文地址:https://www.toutiao.com/article/6687731534813725187/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。