Назад | Перейти на главную страницу

Добавить сетевой адаптер к виртуальной машине в vCloud Director с помощью PowerCLI

Я использую PowerCLI версии 12 и имею виртуальную машину, у которой в настоящее время нет сетевого адаптера.

Есть командлет Get-CINetworkAdapter но это возвращает null (потому что адаптера нет) И есть Set-CINetworkAdapter но опять же без передачи CINetworkAdapter это не работает.

Есть ли New-CINetworkAdapter Я где-то скучаю?

В настоящее время я использую для этого код:

$NIC = New-Object -TypeName 'VMware.VimAutomation.Cloud.Views.OvfRASD'
$NIC.AddressOnParent = '0'
$NIC.AutomaticAllocation = New-Object -TypeName 'VMware.VimAutomation.Cloud.Views.CimBoolean'
$NIC.AutomaticAllocation.Value = $true
$NICConnectionString = New-Object -TypeName 'VMware.VimAutomation.Cloud.Views.CimString'
$connectionAttributes = New-Object 'VMware.VimAutomation.Cloud.Views.XmlAttributeCollection'
$connectionAttributes.Add('ns5','ipAddressingMode','http://www.vmware.com/vcloud/v1.5','POOL')
$connectionAttributes.Add('ns5','primaryNetworkConnection','http://www.vmware.com/vcloud/v1.5','true')
$NICConnectionString.AnyAttr = $connectionAttributes
$NICConnectionString.Value = 'None'
$NIC.Connection = $NICConnectionString
$NIC.Description = 'VMXNET3 ethernet adapter on ''none'''
$NIC.ElementName = 'Network adapter 0'
$NIC.InstanceID = '0'
$NIC.ResourceSubType = 'VMXNET3'
$NICResourceType = New-Object -TypeName 'VMware.VimAutomation.Cloud.Views.CimRASDResource'
$NICResourceType.Value = '10'
$NIC.ResourceType = $NICResourceType

$vm = Get-CIVM -Name '[VM Name]'
$vmVirtualHardwareSection = $vm.ExtensionData.GetVirtualHardwareSection()
$vmNetworkCards = $vmVirtualHardwareSection.GetNetworkCards()
$vmNetworkCards.Item = $NIC
$vmNetworkCards.UpdateServerData()