0

我需要通过 vShpere API 获取有关 VirtualMachine 的一些详细信息,例如 VM 名称、DNS 名称、资源池和主机。

我找到了一种搜索 VM 的方法,但我不知道如何获取这些详细信息。

有人做过吗?

谢谢

斯蒂芬

4

2 回答 2

0

您可以按照此方法获取VM信息

  1. 获取服务实例
  2. 从服务实例获取根文件夹
  3. 在根文件夹中使用 vmname 搜索虚拟机

Folder rootFolder = serviceInstance.getRootFolder(); InventoryNavigator inventoryNavigator = new InventoryNavigator(rootFolder); vm = (VirtualMachine) inventoryNavigator.searchManagedEntity(VirtualMachine.class.getSimpleName(), vmName);

于 2017-05-11T17:35:20.547 回答
-1
    //    you can find this code to get some ResourcePool infomation 

          ComputeResource cresource = (ComputeResource) host.getParent();
                    ResourcePool[] resourcepools = cresource.getResourcePool().getResourcePools();


   // if you find a way to search one vm .so  you can write below code. 
    ServiceInstance si = null;
    si = new ServiceInstance(new URL(
                            "https://"+hostVal+"/sdk"), usernameVal,
                            passwordVal, true);
    VirtualMachine vm = (VirtualMachine) new InventoryNavigator(
                                    si.getRootFolder()).searchManagedEntity(
                                    "VirtualMachine", VM_NAME);
于 2015-04-29T05:24:54.177 回答