如何使用vi java api在从ovf部署vm时指定IP地址?

时间:2014-01-28 23:54:53

标签: java api vmware esxi

有没有办法在将ovf部署到ESXi服务器时配置网络设置(IP,网关等)?下面是我从vi java api示例代码(由Steven Jin)复制的代码片段,我用它从现有的ovf创建vm实例。任何人都知道如何插入一些行来配置新的IP /网关?

    OvfCreateImportSpecParams importSpecParams = new OvfCreateImportSpecParams();
    importSpecParams.setHostSystem(host.getMOR());
    importSpecParams.setLocale("US");
    importSpecParams.setEntityName(newVmName);
    importSpecParams.setDeploymentOption("");
    OvfNetworkMapping networkMapping = new OvfNetworkMapping();
    networkMapping.setName("Network 1");
    networkMapping.setNetwork(host.getNetworks()[0].getMOR()); // network);
    importSpecParams.setNetworkMapping(new OvfNetworkMapping[] { networkMapping });
    importSpecParams.setPropertyMapping(null);

    String ovfDescriptor = readOvfContent(ovfLocal);
    if (ovfDescriptor == null) 
    {
      si.getServerConnection().logout();
      return;
    }

    System.out.println("ovfDesc:" + ovfDescriptor);

    ResourcePool rp = ((ComputeResource)host.getParent()).getResourcePool();

    OvfCreateImportSpecResult ovfImportResult = si.getOvfManager().createImportSpec(
        ovfDescriptor, rp, host.getDatastores()[0], importSpecParams); 

谢谢,

1 个答案:

答案 0 :(得分:0)

这真是一个很大的问题,在这里无法回答。

您必须了解Windows VM的Sysprep。对于Linux,您可以创建用于个性化的脚本。然后,您可以装入磁盘并运行此脚本进行个性化。