我想在我的 asp.net web 应用程序中扫描并查看有关具有“ESXi 5.0 Update 1”作为其操作系统的 ESX 主机的信息。主要是为了能够检索 ESX 规范和 ESX 内部的所有虚拟机。其中所有虚拟机都是基于 Windows 和 Unix 的。
现在我们可以使用 PowerCLI 应用程序执行此操作,我可以在 PowerCLI 应用程序内直接查看 ESX 主机信息 + 它包含的所有虚拟机。但我需要能够以编程方式在我的 asp.net web 应用程序中读取这些信息,并将它们存储在我们自己的数据库中。现在似乎有两种主要方法可以让我从我的 asp.net 扫描 ESX 主机:-
- 使用 asp.net WMI。
或者
- 与 PowerCLI 集成,可以使用任何可用的 API(不确定 powercli 是否提供任何 API)或者直接从我的 asp.net web 应用程序执行 powerCLI 脚本。
那么有人可以建议哪种方法更可取吗?每种方法都有具体的优点/缺点或局限性吗?
我正在尝试实现这两个主要功能:-
- 使用 IP 或名称扫描 ESX 的能力。
- 扫描完成后能够以编程方式读取 ESX 信息及其包含的 VM 名称...
在此先感谢您的帮助。
答案1
您正在寻找的是 vSphere API。您可以找到 API 版本 5 的文档这里。