将VM标记为模板并使用VI SDK克隆VM

时间:2012-11-23 13:55:01

标签: java sdk vmware

我在java中使用VI SDK编写应用程序。我当前的问题是,当我尝试将某个虚拟机标记为模板时(使用方法markAsTemmplate()),我得到一个错误“com.vmware.vim25.NotSupported”和我的VClient错误说:“操作是不支持对象“。尝试克隆虚拟机时发生同样的错误。

我知道这可能与您是在ESX还是VC上运行有关。

我在ESXi上运行,但是从VClient开始,我可以执行克隆任务(甚至标记为模板),但是从我的应用程序中,我根本无法...

任何建议都将受到赞赏。

P.S。如果有人需要查看我的代码,我也可以在此帖中包含该代码。但最重要的是看看这是否可能。

1 个答案:

答案 0 :(得分:1)

如果直接连接到ESX或ESXi主机而不是vCenter实例,则会失败。将VM标记为模板的要求与从vSphere Client以编程方式相同。

你从VI SDK中得到NotSupported错误,来自VMware文档明确指出:

http://pubs.vmware.com/vsphere-51/topic/com.vmware.wssdk.apiref.doc/vmodl.fault.NotSupported.html

  

“如果服务器上不支持该方法,则抛出。不是所有方法   所有服务器都支持(例如,ESX Server主机支持)   功能少于VirtualCenter服务器)。功能也可能   由于缺少liceneses而被禁用。“