Skip to main content

PS | How to change vNIC of all VMs inside a portgroup

This was the requirement during a network migration from physical to NSX. You might know that changing the VM's network (from VLAN portgroup to VXLAN portgroup) is essential part of this migration. But the challenges are
  1. There are around 500 VMs and doing it manually is a headache. 
  2. Many VMs have multiple NICs so we cannot simply give source of a VM and change the NIC. For example, 

$TPortgroup = Read-host "Enter the name of target Portgroup here "
foreach($VM in (Get-Content C:\temp\vmlist.txt)){Get-VM -Name $VM | Get-NetworkAdapter | Set-NetworkAdapter -NetworkName $TPortgroup


Above command will change all the NICs of this VM1. Solution is


Get-Cluster 'ClusterName' | Get-VM |Get-NetworkAdapter |Where {$_.NetworkName -eq 'Source PG Name' } |Set-NetworkAdapter -NetworkName 'vxw-dvs-48-universalwire-VXLAN PG Name' -Confirm:$false

Above command will target only those Network Adapter which belongs to 'Source PG Name' and will change the PG for on this network adapter. Any doubt? Feel free to comment.


Thank you,
Team vCloudNotes







Comments

Popular posts from this blog

Network Migration | VLAN to VXLAN

NSX-T | Getting Started with PowerCLI

Automate Power on Operations using PS

NSX-T | Security