我正试图在C#中(或者至少我认为应该很简单)编写一个相当简单的应用程序,为其所有ESX服务器轮询vCenter,然后为每个ESX服务器轮询所有VM。它将收集一些简单的实时统计数据并将其放入数据库中。容易松动,对吧?嗯。我应该使用哪个VMware API?
我一直在试图弄清楚我应该使用哪一个VMware API,而我越来越困惑,我越浏览VMware的组织严密的文档站点。我已经阅读了大约60页的vSphere Web Services SDK编程指南,但仍然不知道如何获得数据(但是我已经了解了大量有关VMware的字母表汤... yippie)。
因此,我的问题是:我应该将哪个VMware API用于专注于收集CPU,内存,网络和硬盘统计信息的只读应用程序?我需要从典型的vCenter +多ESX设置中收集这些数据。我忘了提及我已经成功地编写了一个PowerCLI脚本来完成我已经解释的内容,但它对于生产就绪的产品来说太慢而且不稳定(并且PowerShell是,imo,a设计不佳的脚本语言)。我的确有VMware vSphere SDK for .NET,但提供的文档至少可以说是简短的。我错过了真正的vSphere SDK for .NET文档吗?
仅供参考下,对于vSphere SDK的API文档是在这里:http://www.vmware.com/support/developer/vc-sdk/visdk41pubs/ApiReference/index.html然而,被漂亮的它经历在.Net中并让其他人开始使用它,我衷心地从下面的答案中推荐Vmware.Vim程序集。唯一需要注意的是,如果您运送软件,它不可再分发。但对于内部自动化的东西来说,这太棒了。 – 2011-04-21 15:42:01
我们要运送产品,感谢上帝它停止了(在我说服他们我们复制了VMware现有的应用程序以及10倍的安全问题之后)。感谢更新。 – 2011-04-26 23:24:50