我通过vmware包在ESX(在vSphere Client上)创建了虚拟机: Look here 。 但我无法从代码中设置IP地址。
我试过了:
ServiceInstance si = new ServiceInstance(new URL(Url), user, password, true);
VirtualMachine vm = (VirtualMachine) new InventoryNavigator(si.getRootFolder()).searchManagedEntity("VirtualMachine", "NewVmName");
System.out.println( vm.getGuest().toolsRunningStatus);
vm.getGuest().setIpAddress(ipAddress);
但它并没有改变。有谁知道如何更新IP地址?
答案 0 :(得分:0)
虚拟机的IP地址由虚拟机本身控制。如果您确实要设置虚拟机的IP地址,请将网络适配器更改为“桥接”并在虚拟机本身中设置IP地址。请参阅:Setting IP Address on Windows,Linux, and Mac。
来源:超级用户,OSXDaily
答案 1 :(得分:0)
至少有两种方法可以做到这一点。
一种方法是使用CustomizeVM_Task command并为其提供更改IP的自定义规范。当您执行此操作时,需要关闭VM,当您在自定义后打开它时,它将启动,更改IP,然后再次启动。请参阅示例here和here。
另一种方法是利用GuestOperationsManager
的{{3}}来启动更改IP的命令(确切的命令将取决于来宾操作系统)。这不需要重新启动,但请注意,您需要为访客提供有效的凭据。
如果您愿意使用PowerCLI,则可以使用Invoke-VMScript
。参见例如ProcessManager