Inventorypath找到vm位置

时间:2015-03-05 12:22:25

标签: virtual-machine vmware vsphere

我正在使用VCenter。尝试使用vijava api来自动创建和删除vm。删除Vm工作正常。当我试图克隆虚拟机时,我被卡住了.. VM的结构

localhost
     --Datacenter1
             | ----CLuster1
             |        -----vm1
             |        -----vm2
             |        -----vm3
             |
             | ----Cluster2 
     --DataCenter2

这里我试图使用中的路径从这个层次结构中获取vm3 VirtualMachine vm =(VirtualMachine)si.getSearchIndex()。findByInventoryPath(" vmpath");

我必须给出的路径结构是什么,以便我可以从这个结构中获取vm。 我试过Datacenter1 / Cluster1 / vm3
但是一切都会引发VMNotfound异常..

任何帮助将不胜感激......

1 个答案:

答案 0 :(得分:2)

有几个"隐藏" vSphere清单中的文件夹。在这种情况下,您需要的是这样的路径:

VirtualMachine vm = (VirtualMachine) si.getSearchIndex().findByInventoryPath("Datacenter1/vm/vm3");

vm是"隐藏"包含数据中心中所有VirtualMachines的文件夹。当你遇到这样的库存时,我建议使用MOB。 https://vcenter/mob

我还建议从vijava转到yavijava https://github.com/yavijava/yavijava

它增加了许多漂亮的功能。最大的一个是记录。