Я пытаюсь клонировать виртуальную машину, и я хочу изменить емкость диска.Изменение размера виртуального диска с использованием Java API Java
int virtualDisksCount = 0;
VirtualDisk virtualDisk = null;
for (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;
}
Исключение кода исключает: Недействительная операция для устройства «0». Я передал эти параметры в CloneVm_Task и в ReconfigureVM_Task, произошли те же ошибки
Как я могу изменить емкость виртуального диска? Использование Vsphere 5.5
Столкнутые Аналогичный вопрос – bopomofu
я нашел исправить. Вы можете создать изображение с минимальным необходимым жестким диском, например 10 ГБ, тогда вы должны использовать DiskManager для расширения размера. Таким образом, мы делаем только расширение жесткого диска без сжатия –
Вы имеете в виду использование объекта данных virtualDiskManager? Можете ли вы помочь в разработке, как это сделать, мы даже не захватили DiskObjectId из VirtualDevice - он вернулся NULL – bopomofu