有时我感觉我的服务器没有像我期望的那样顺利地响应(我有一个Intel(R)Xeon(TM)CPU 2.80GHz四核),例如,'top'命令报告低负载<0.5,CPU几乎完全闲置…
我可能有互联网连接问题,所以我不知道这是我还是它是服务器本身。
是否有任何基准脚本(或类似的东西)我可以运行,看到服务器的实际性能?
virt-what脚本将识别许多不同types的pipe理程序和容器技术。 它是为大多数主要的Linux发行版预先打包的(例如, apt-get install virt-what或yum install virt-what ),其输出适用于shell脚本。 它正确地执行从虚拟客人内部的检测。
当前检测到的虚拟化types:
- 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日立虚拟化pipe理器(HVM)Virtage LPAR
- virtualbox VirtualBox
- virtualpc Microsoft VirtualPC
- VMware
- Xen Xen
- xen-dom0 Xen dom0(特权域)
- xen-domU Xen domU(半虚拟客户域)
- xen-hvm Xen guest完全虚拟化(HVM)
Puppet工具因素在内部使用virt-what来确定正在使用的虚拟化types,所以如果您使用的是Puppet,那么您已经安装了这个工具。
在Linux上,根据所使用的pipe理程序的types,可以查找虚拟化的迹象。 您通常可以通过在/proc/cpuinfo查找CPUtypes来启动。 一些虚拟机pipe理程序报告虚假的 CPUtypes,例如“QEMU虚拟CPU”。 如果正在运行VZ,则可以find报告资源使用情况的/proc/user_beancounters 。 使用Xen,你会发现一个/proc/xen目录。
所以,有可能猜测你是否在某种虚拟化环境下运行。
如果你可以运行perl脚本(取决于你的操作系统),还有一个叫做imvirt ,它可以根据各种系统信息( /proc/cpuinfo , dmidecode等)检测到很多数据 – 这听起来像你在Ubuntu上,所以有Jaunty,Karmic和Lucid的包,或者你可以从Sourceforge抓取它。
反病毒公司在检测蓝色病毒变种方面有一些东西。
基本上,虚拟机非常难以将实时时钟与CPU计数器相匹配。 如果您有权访问安装驱动程序,则应该能够将系统置于无中断状态并观察计数器。 如果你有一个虚拟化的系统,那么当虚拟机由pipe理程序切换出去时(假设根据中断位是不可能的),你的时钟将会以大块的forms漂移。
寻找窃取cpu周期 。 例如,你可以在顶部获得。 “如果你的虚拟机显示了最高的”st“(窃取时间),这意味着CPU周期将从你的虚拟机中拿走,用于其他目的。