我想通过配置的适配器类型在ESXi 6.0上创建虚拟机。 基本上,这3个(E1000,Vmxnet2,VMXNET3)在创建虚拟机时列出,但我在java中找不到任何API。 我正在导入以下包裹:
import com.vmware.vim25.VirtualEthernetCard;
import com.vmware.vim25.VirtualEthernetCardNetworkBackingInfo;
import com.vmware.vim25.VirtualHardware;
import com.vmware.vim25.VirtualMachineConfigInfo;
import com.vmware.vim25.VirtualMachineConfigSpec;
import com.vmware.vim25.VirtualMachineNetworkInfo;
ArrayList<HostSystem> hosts = OperationHelper.GetAllHostReferene();
ArrayList<String> networkNames = new ArrayList<String>();
Network[] nws = null;
for(HostSystem host : hosts) {
Datastore[] dts = host.getDatastores();
for(Datastore d : dts){
if(d.getName().equals(m_datastore)) {
log.info("Found host for datastore");
nws = host.getNetworks();
for(Network n : nws){
networkNames.add(n.getName());
}
}
}
}
我通过上面的代码获得网络接口卡列表。但我无法获得适配器类型。 请帮忙。
答案 0 :(得分:1)
每个VM网络适配器都继承自VirtualEthernetCard。例如:
VirtualEthernetCard&lt; | - VirtualVmxnet&lt; | - VirtualVmxnet3&lt; | - VirtualVmxnet3Vrdma
在调用ReconfigureVM()时,您应该将这些类的实例传递给VM设备列表。