我正在使用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异常..
任何帮助将不胜感激......
答案 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
它增加了许多漂亮的功能。最大的一个是记录。