题 无论如何要知道你所谓的完全专用服务器是否真的是一个虚拟的资源共享机器? [重复]


这个问题在这里已有答案:

有时我觉得我的服务器没有像我预期的那样顺利响应(我有一个Intel(R)Xeon(TM)CPU 2.80GHz四核),例如,'top'命令报告低负载<0.5,CPU几乎完全闲置......

我可能有互联网连接问题,所以我真的不知道它是我还是服务器本身。

是否有任何基准测试脚本(或类似的东西)我可以运行并查看服务器的实际性能?


5
2018-06-09 22:55




开车去那里看看? - mdma


答案:


virt-what 脚本将识别许多不同类型的管理程序和容器技术。它是针对大多数主要Linux发行版预先打包的(例如 apt-get install virt-what 要么 yum install virt-what)并且其输出适用于shell脚本。它从虚拟客户端内部正确执行检测。

检测到的当前虚拟化类型:

  • hyperv Microsoft Hyper-V
  • kvm Linux内核虚拟机(KVM)
  • lxc Linux容器
  • openvz OpenVZ或Virtuozzo
  • powervm_lx86 IBM PowerVM Lx86 Linux / x86仿真器
  • qemu QEMU(未加速)
  • uml用户模式Linux(UML)
  • virtage Hitachi Virtualization Manager(HVM)Virtage LPAR
  • virtualbox VirtualBox
  • virtualpc Microsoft VirtualPC
  • vmware VMware
  • xen Xen
  • xen-dom0 Xen dom0(特权域名)
  • xen-domU Xen domU(半虚拟化来宾域)
  • xen-hvm Xen guest虚拟机完全虚拟化(HVM)

Puppet工具 facter 使用 virt-what 在内部确定正在使用的虚拟化类型,因此如果您使用的是Puppet,则已安装此虚拟化。


7
2017-12-04 19:24



这是一个很棒的解决方案......不适用于任何非Linux(或者没有类似Linux的东西) /proc)。全世界都不是Linux盒子...... - voretaq7
@ voretaq7它只使用 /proc 检测Linux容器和UML;它用 dmidecode 并从汇编中调用英特尔的CPUID指令。它应该可以移植到BSD,只需要很少的修改。 - Michael Hampton♦


在Linux上,可以查找 搬弄是非 虚拟化的迹象取决于所使用的管理程序的类型。您通常可以从查看开始 /proc/cpuinfo 对于CPU类型。一些管理程序报告  CPU类型,例如“QEMU Virtual CPU”。如果它正在运行VZ,你可以找到 /proc/user_beancounters 报告资源使用情况。有了Xen,你会发现一个 /proc/xen 目录。

因此,可以猜测您是否在某种虚拟化下运行。


6
2018-06-10 01:04



这是否意味着/ proc / cpuinfo永远不会占据您的CPU? - arod
没有!我的vmware虚拟机上的cat / proc / cpuinfo和cpu是正版Intel Xeon ... - lg.
@siran - 有可能撒谎,但就像我说的那样,这只是一个开始的地方,而且这是一个消除的过程。 @lg - 您可以检查/ proc / vmware以了解它正在运行vmware。 - sybreon


如果你可以运行perl脚本(取决于你的操作系统),那就有一个叫做 imvirt 可以根据各种系统信息检测到不少(/proc/cpuinfodmidecode等等) - 听起来你在ubuntu上,所以有Jaunty,Karmic和Lucid的软件包,或者你可以从中获取它 在Sourceforge


3
2018-06-10 06:17





防病毒公司有些东西被用来检测蓝丸病毒变种。

基本上,VM很难将实时时钟与CPU计数器相匹配。如果您有权安装驱动程序,则应该能够将系统置于无中断状态并观察计数器。如果你有一个虚拟化系统,那么当虚拟机管理程序关闭虚拟机时,你的时钟会漂移在块中(根据中断位,这可能是不可能的)。


1
2018-06-09 23:17



这听起来很有趣......怎么能在Ubuntu Linux机箱中完成? - arod
正如我所说,编写驱动程序,禁用驱动程序中的中断,然后创建一个正在观察系统上的RTC的实时循环。如果它的漂移超过了您应该分配的实时周期,那么您就在VM中。请注意,您不能在驱动程序中等待太长时间,否则您可能会破坏一些必须处理中断才能工作的硬件。 - Spence


寻找 窃取cpu周期。例如,您可以获得最佳效果。 “如果您的虚拟机在顶部显示高%st(窃取时间),这意味着CPU周期将被从您的虚拟机中移除以用于其他目的。”


0
2017-12-16 05:42