Modify Virtual disk size using VI Java API -
i'm trying clone vm, , want change disk capacity.
int virtualdiskscount = 0; virtualdisk virtualdisk = null; (virtualdevice virtualdevice : virtualhardware.getdevice()) { if (virtualdevice instanceof virtualdisk) { virtualdiskscount++; virtualdisk = (virtualdisk) virtualdevice; } } if (virtualdiskscount == 1) { virtualdeviceconfigspec discspec = new virtualdeviceconfigspec(); discspec.setoperation(virtualdeviceconfigspecoperation.edit); virtualdisk.setcapacityinbytes(155500000000l); virtualdisk.setcapacityinkb(155500000000000000l); discspec.setdevice(virtualdisk); return discspec; }
the code throws exception : invalid operation device '0'. passed these parameters in clonevm_task , in reconfigurevm_task, same errors happens
how can change virtual disk capacity? using vsphere 5.5
i don't code in java, it's close enough c# me help. first off need disk info , pull out virtualdeviceconfigspec, change it, add attach disk. creating new spec setting properties. also, why setting size in bytes kb???
here java muster...
mydisk.setcapacityinkb(long.parselong(50)*1024*1024); virtualdeviceconfigspec vdconfigspec = new virtualdeviceconfigspec(); vdconfigspec.setdevice(mydisk); vdconfigspec.setoperation(virtualdeviceconfigspecoperation.edit); virtualmachineconfigspec vmconfigspec = new virtualmachineconfigspec(); vmconfigspec.setdevicechange(new virtualdeviceconfigspec[]{vdconfigspec}); task task = vm.reconfigvm_task(vmconfigspec);
Comments
Post a Comment