Pergunta

Eu vasculhei os documentos (http://pubs.vmware.com/vsphere-55/index.jsp) e não consigo encontrar nada sobre como adicionar máquinas virtuais a vlans.Há muitas informações sobre como criá-los e configurá-los, mas não sobre como adicionar máquinas virtuais a eles por meio de pyvmomi (ou esxcli, se necessário).Tenho certeza de que isso pode ser feito, pois você pode fazer isso facilmente por meio do cliente vSphere, mas pretendo fazer isso de forma automatizada.

Foi útil?

Solução

O código de https://github.com/rreubenur/vmware-python-examples/blob/master/clone_vm_on_each_host/reconfigure_vnics.py acabou me ajudando muito:

nicspec = vim.vm.device.VirtualDeviceSpec()
nicspec.operation = vim.vm.device.VirtualDeviceSpec.Operation.add
nicspec.device = nic_type
nicspec.device.wakeOnLanEnabled = True
nicspec.device.deviceInfo = vim.Description()
nicspec.device.backing = vim.vm.device.VirtualEthernetCard.NetworkBackingInfo()
nicspec.device.backing.network = self.get_obj(content, [vim.Network], net_name)
nicspec.device.backing.deviceName = net_name

nicspec.device.connectable = vim.vm.device.VirtualDevice.ConnectInfo()
nicspec.device.connectable.startConnected = True
nicspec.device.connectable.allowGuestControl = True

devices.append(nicspec)

vmconf = vim.vm.ConfigSpec(deviceChange=devices)

Permitiu-me criar o objeto de configuração adequado para conectar-me a uma rede virtual em um switch padrão.

nic_type é o tipo de dispositivo de rede (e1000, pc32, etc.), net_name é o nome da rede (portgroup).O resto é bastante autoexplicativo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top