我从这篇文章中学到了很多东西: 主机 CPU% 不包括子虚拟机 CPU%,具体来说,我了解到“主机操作系统”和“子虚拟机”都是 HyperVisor 层中的兄弟。
是否有好的实用程序可以“监视” HyperVisor(硬件)层的总 CPU 和其他资源计数器?我知道 perfmon(监视特殊的 Hyper-V CPU 计数器)是标准答案,但我一直不使用 perfmon 进行临时监视。是否有好的 OSS 或免费工具可以在我创建多个在服务器上运行的新 VM 时“监视”资源利用率?
我是一名开发人员,因此如果没有任何好的 UI 工具来显示这些数据,我会考虑创建一个,但仅在需要时才这样做。
PS 我的具体情况是,我正在为新的 Windows 8 Server 和 SQL 2012(整个应用程序堆栈)创建新的 Web、SQL 和后端服务器虚拟机。我需要监控它们的使用情况,并知道何时需要扩展到 1 个主机以上(当我达到第一个主机的硬件限制时,我需要将虚拟机拆分到单独的主机中,并诊断问题)。
答案1
我使用了名为“Hyper-V Mon”的工具,它可以完全按照您描述的方式执行:
在这里下载:http://www.tmurgent.com/Tools.aspx(向下滚动约一半)
我最初是从 Hyper-v.nu 博客上发现这个工具的,特别是这篇文章: http://www.hyper-v.nu/archives/pnoorderijk/2011/10/monitoring-a-hyper-v-environment-part-1/
答案2
Solarwinds 有一个非常好的免费 hyper-v 监控工具: 虚拟机监控器
答案3
市面上有很多监控工具。Nagios 是一款免费工具,您可以下载它并用它来分析指标趋势。请记住,任何进行服务器监控的工具都只是观察 perfmon 计数,无论是直接通过 perfmon 还是通过 WMI。
答案4
虽然 HyperV 管理器实际上并没有为您提供详细的指标列表,但我发现通常情况下,它的 CPU 使用率足以让您偶尔看一下以了解运行情况。
不过,您也可以通过 WMI 或 SNMP 监控窗口。这两者都可以为您提供虚拟机级别的 CPU、内存和磁盘使用情况指标。这样,您只需询问虚拟机的运行情况,而不是询问虚拟机管理程序它认为虚拟机的运行情况如何。