API VMware ESXi vSphere с использованием Java
Я использую ESXi 6.0 и хочу использовать vSphere API для создания виртуальной машины.
И я использую пример кода формы CreatVM
Но это показывает следующее исключение.
Exception in thread "main" java.rmi.RemoteException: VI SDK invoke exception:com.vmware.vim25.RestrictedVersion
at com.vmware.vim25.ws.WSClient.invoke(WSClient.java:122)
at com.vmware.vim25.ws.VimStub.createVM_Task(VimStub.java:749)
at com.vmware.vim25.mo.Folder.createVM_Task(Folder.java:130)
at com.vmware.vim25.mo.samples.vm.CreateVM.main(CreateVM.java:93)
И моя среда Java построена из этого Начало работы с vSphere API с использованием Java
Как мне это исправить? Спасибо за вашу помощь!!
2 ответа
Это исключение происходит по одной из следующих причин:
1) Использование другого пользовательского агента не поддерживало операцию (Создать виртуальную машину,powerON VM..) для выполнения.
2) Срок действия лицензии на сервер ESXi может истечь, что не позволяет создавать & powerON VM....
Если вы используете бесплатную версию ESXi, API ограничен операциями только для чтения. Вы можете распознать эту лицензию, поскольку она отображается как "vSphere 6.0 Hypervisor Licensed for N CPU"
Примечания: vCLI, PowerCLI и vSphere SDK для Perl ограничены доступом только для чтения для бесплатной версии vSphere Hypervisor. Чтобы включить полную функциональность vCLI на хосте VMware ESXi, хост должен быть лицензирован с vSphere Essentials, vSphere Essential Plus, vSphere Standard, vSphere Advanced, vSphere Enterprise или vSphere Enterprise Plus.
В статье говорится о Perl, но ограничение действительно для всех языков и SDK.
restrictedVersion
ошибка является признаком этого ограничения. Чтобы использовать полный API, вы должны либо заплатить за лицензию (все предоставят вам доступ к API), либо использовать vSphere в течение первых 60 дней пробного режима.