Vijava 学习笔记之(VirtualMachine 更改虚拟机系统磁盘大小)

来源:互联网 发布:ubuntu 桌面壁纸 编辑:程序博客网 时间:2024/06/05 18:53

源代码:

package com.vmware.client;import com.vmware.util.Session;import com.vmware.vim25.*;import com.vmware.vim25.mo.*;/** * Created by vixuan-008 on 2015/6/27. */public class UpdateVMDisk {    public static void main(String[] args)throws  Exception{        ServiceInstance serviceInstance = null;        String vmname = "6699VV";        //ServiceInstance----服务实例        serviceInstance = Session.getInstance("192.168.0.22","administrator@vsphere.local","Vixuan12#");        //rootFolder-------根文件夹        Folder rootFolder = serviceInstance.getRootFolder();        //vm---------------指定虚拟机        VirtualMachine vm = (VirtualMachine) new  InventoryNavigator(rootFolder).searchManagedEntity("VirtualMachine", vmname);        //vmci--------------虚拟机配置信息        VirtualMachineConfigInfo vmci = vm.getConfig();        //devices-----------虚拟机关联设备        VirtualDevice [] devices = vmci.getHardware().getDevice();        //theDisk-----------虚拟机系统磁盘        VirtualDisk theDisk = null;        for ( int i=0; devices!=null && i<devices.length; i++) {            if ( devices[i] instanceof  VirtualDisk) {                theDisk = (VirtualDisk)devices[i];                break;            }        }        //更改系统磁盘大小        theDisk.setCapacityInKB(Long.parseLong("60")*1024*1024);        VirtualDeviceConfigSpec vdcs = new VirtualDeviceConfigSpec();        vdcs.setDevice(theDisk);        vdcs.setOperation(VirtualDeviceConfigSpecOperation.edit);        VirtualMachineConfigSpec vmcs = new VirtualMachineConfigSpec();        vmcs.setDeviceChange(new VirtualDeviceConfigSpec[]{vdcs});        //执行虚拟机系统磁盘更改任务        Task task = vm.reconfigVM_Task(vmcs);        String result = task.waitForMe();        if (result.equals(Task.SUCCESS)) {            System.out.println("success");        } else {            System.out.println("failed");        }    }}


0 0
原创粉丝点击