4

我正在使用 Visual Studio 2010 和(本机)C++ 尝试提取 VMWare 主机的整体 CPU 使用率,然后是每个正在运行的 VM 的 CPU 使用率。

我已经研究了使用 gSoap 构建 C++ 接口的 VMWare Webservice SDK 4.1,但它的速度慢且笨拙,是一个现实的替代方案(结果 cpp 文件需要 4 小时才能编译并最终成为 70 MB 二进制文件,这将是好的,如果没有一个调用需要几分钟才能执行)。

有人对替代解决方案/sdk 有提示吗?

4

2 回答 2

3

我假设您已经了解了所有已知的 VMware API,那么这种不同的方法怎么样...只需 SSH 到 ESX 机器并执行一些命令行实用程序来获取您需要的信息。要获取您可能需要的所有信息,您可以执行esxtop -b -n1.

要使用 SSH 连接,您可以使用plink.exe,它允许您从命令行执行内容,就像ssh在 Linux 机器上一样。您还可以使用许多可用的 SSH 库之一,例如libssh

于 2011-07-18T01:38:24.230 回答
1

使用特定于 VMWare 的解决方案有多重要?除了使用 Web 服务或 VIX 来包装对 ESX 的肥皂服务器的调用之外,也许您在这里忽略了最简单的解决方案。收集和监视有关任何主机性能的详细信息最好使用 snmp 完成,或者我愿意相信。这很简单; 它可以满足您的要求,并且您不必处理 SDK 的开销。

如果您决定使用 SNMP 解决方案,我推荐 net-snmp。

于 2011-07-13T09:10:50.667 回答