linux cpu的 "steal time"含义

Steal Time

Steal time is the percentage of time a virtual CPU waits for a real CPU while the hypervisor is servicing another virtual processor.

什么是Steal Time

Steal Time是虚拟机进程在物理CPU上等待其CPU时间的时间百分比。您可以通过在 Linux 服务器上运行“top”命令来监控进程和资源使用情况。在使用指标中,Steal Tim被标记为“st”。

在现代托管环境中,少量Steal Time通常是不可避免的,尤其是在共享云托管上运行时。

example

你的虚拟机(VM)会与虚拟环境的宿主机上的多个虚拟机实例共享物理资源。其中之一共享的就是CPU时间切片。如果你的VM的物理机虚拟比是1/4, 那么它的CPU使用率不会限制于25%的CPU时间切片-它能够使用超过它设置的虚拟比。(有别于内存的使用,内存大小是严格控制的)。

哪里可以看到CPU Steal Time

最常用的方式就是:运行top,从st列可以看到

Steal Time远高于0的原因

这里有两种可能性:

1、你需要一个额定更多CPU资源的虚拟机(你的虚拟机是问题)2、物理机已经超卖了并且多个虚拟机之间在激烈的竞争资源(你的虚拟机不是问题)

判断:

1、是否 %st(CPU Steal Time Percentage) 在你的所有虚拟机机器上面都上涨了?这个意味着你的虚拟机在使用更多的CPU资源。你需要为你的虚拟起增加更多的CPU资源的配额。2、是否%st(CPU Steal Time Percentage) 只在一部分机器上面陡峭增长?这个意味着物理机器被超卖了。把你自己的虚拟机挪到另一个物理机器去吧。

Steal Time衡量指标

用来衡量被Hypervisor偷去给其它虚拟机使用的CPU时间所占的比例,这个值越高,说明这台物理服务器的虚拟机之间资源竞争越激烈

它表示真正的 CPU 对当前虚拟机不可用的时间-虚拟机管理程序从该VM“偷走”了该 CPU(用于运行另一个VM,或用于其自身需求)。如果特定虚拟机上的“Steal 时间”很高,则表明该虚拟机在过载或者负荷较大的物理主机上运行。

Steal Time计算方式

当虚拟机的vcpu在running的时候被抢了,会在stealtime里记录被抢走多长时间。以此来记录虚拟机有多少他应得的cpu时间被抢走了

云平台出现Steal Time高时如何处理

最简便有效的策略是:如果是当前虚拟机的Steal Time 超过了设置的 阈值,关闭这台虚拟机并且在另外一台物理机上面重启。

【博客529】linux cpu的 “steal time“含义相关推荐

  1. linux编写一个博客脚本,Linux 脚本编写基础 - 凌度 - 博客园.pdf

    Linux 脚本编写基础 - 凌度 - 博客园 Linux 脚本编写基础 1. Linux 脚本编写基础 1.1 语法基本介绍 1.1.1 开头 程序必须以下面的行开始 (必须放在文件的第一行): # ...

  2. 优秀博客链接(linux c/c++ java go php android ios 前端 j2ee windows linux 算法 ACM 深度/机器学习 AI opencv nlp)

    pudn 阿甘兄 前端 服务端 底层 移动端 大数据 云计算 AI 培训机构的课程差不多就这一套了 大数据 AI NLP 高等数学 LeetCode.<数据结构与算法之美>学习笔记.AI ...

  3. 我的第200篇博客:Linux下手把手搭建DHCP、DNS、HTTP、FTP服务器及遇到问题的解决过程

    这是我的第200篇博客,所以我打算写一个质量还算高的文章. 今天耗时11个小时,在CentOS 上搭建一个功能相对完整的服务器,用来检验我这几天的学习成果.(不一定非要CentOS,Ubuntu也很香 ...

  4. 优秀博客链接(linux c/c++ java go php android ios 前端 j2ee windows linux 算法 ACM AI 深度/机器学习 opencv nlp)

    pudn 阿甘兄 前端 服务端 底层 移动端 大数据 云计算 AI 培训机构的课程差不多就这一套了 LeetCode.<数据结构与算法之美>学习笔记.AI 前端资料学习,vue.js re ...

  5. 收藏的博客 -- 高性能Linux/Windows服务器/C++网络库(★★★★★)

    免费的跨平台SSH和SFTP工具: https://www.putty.org/ -- Windows https://www.chiark.greenend.org.uk/~sgtatham/put ...

  6. linux内核源码剖析 博客,【Linux内存源码分析】页面迁移

    页面迁移其实是伙伴管理算法中的一部分,鉴于其特殊性,特地另行分析.它是2007年的时候,2.6.24内核版本开发时,新增碎片减少策略(the fragmentation reduction strat ...

  7. 2017-7-18-每日博客-关于Linux下的鲜为人知的10条命令.doc

    这篇文章的目的是介绍一些少有人知的Linux命令,它们一定会高效地帮你管理你的桌面/服务器. 1. sudo !!命令 没有特定输入sudo命令而运行,将给出没有权限的错误.那么,你不需要重写整个命令 ...

  8. 【博客418】cpu平坦模型和分段模型

    平坦模型与分段模型 1.平坦模型是相对于多段模型而言的 2.程序分段和cpu内存分段是不同的概念 平坦模型 只有一个段,它能直接访问内存空间,不用再进行段基址的变换. 现代操作系统一般都是在平坦模型下 ...

  9. 2017-7-18-每日博客-关于Linux下的通配符.doc

    *:匹配零个或多个字符 ?:匹配任意单个字符 ~:当前用户家目录 ~username:用户家目录 ~+:当前工作目录 ~-:上一个工作目录 [0-9]:匹配任意数字范围 [a-z]:匹配任意小写字母( ...

最新文章

  1. C#中在应用程序和DLL使用消息
  2. 从RNA-seq结果到差异表达
  3. hdu 1722 Cake 数学题
  4. 浅谈深浅拷贝问题(这里只针对拷贝构造函数和赋值运算符重载)和简易srting类模拟实现
  5. Linux篇 | 多网卡绑定技术 binding 和 网络组nmcli
  6. HALCON示例程序find_pads.hdev通过fit_rectangle2_contour_xld绘制精准轮廓
  7. Spring Boot中使用MyBatis注解配置详解
  8. Android OpenGL Cannot create GL program: 0 GL error: 1282
  9. 【实习生笔试面试】腾讯2013实习生电话面试总结
  10. C#开发笔记之12-如何用C#统计子字符串出现的次数?
  11. php调用第三方的api,PHP接口编程——调用第三方接口获取天气
  12. js判断浏览器是否安装或启用了flash的方法总结
  13. Java多线程第三节-线程的正确停止
  14. 网克自动改IP工具-VeryPal2.0正式版教程
  15. LTSC2019的踩坑经验
  16. Java随意输入字符串,如果含有$将该字符及之前一个字符的去掉
  17. 平面设计【PS】汉堡寿司横幅PSD分层模版素材
  18. echarts地图api series_百度地图2.0离线版与echarts结合
  19. HTML5 CSS3 生日快乐动画网页(粉红色的回忆)
  20. CSS基础之背景样式

热门文章

  1. hp rx6600两台oracle双机互备服务器其中一台经常自动关机的故障诊断
  2. CSS边框应用 - 半透明边框
  3. 计算机网络的发展过程可划分为,计算机网络的发展可划分为几个阶段
  4. R语言入门——多元回归交叉验证的实现
  5. MQTT工具使用,进行Iot产品功能测试
  6. 我用Python实现截图识别文字,工作效率提升,直接打卡下班
  7. 在DLAP221上部署容器进行推理操作
  8. 数字电路44( 多谐振荡器)
  9. (沂水县地图)行政区划交通图高清矢量cdr|pdf|ai格式(详细2021年)
  10. gradle-6.5-bin-zip网盘下载