Set-VirtualSwitch and a Misunderstanding
I was doing some installations yesterday – and I wanted to add a second NIC to a vSwitch on a set of newly installed servers. Of course there were 10 of them, and I did not want to do this manually.
Easiest way to do it (besides installing them with a script correctly in the first place) was with PowerCLI.
From the Set-VirtualSwitch help:
-------------- Example 3 --------------
C:\PS>Get-VMHost *.128 | Get-VirtualSwitch | Select-Object -First 1 | Set-VirtualSwitch -Nic vmnic5
Add a physical network adapter named 'vmnic5' to the first switch of the host. Note that the 'vmnic5' adapter must not be assigned to other virtual switches.
What I understand from that – you add an additional NIC to the vSwitch – it leaves the current assignment alone, it just adds another.
And this is how I started out.
So I set out to add vmnic1 to the vSwitch
Get-VirtualSwitch -Name vSwitch0 | Set-VirtualSwitch -Nic vmnic1
The command completed successfully – but look what happened:
Now this is weird part. In the DCUI – I had no NIC’s selected for the management network.
The case I had yesterday was that the transition on the switches was not fast enough – and I lost connection to the host. ILO was needed to fix it.
But back to this morning. I tried this on a workstation vESX and it produced to different results.
After running this command I was presented in the DCUI with the screen shot above but strangely enough I still had connection to the host.
ESXi Shell showed this:
Which was weird if you ask me.
I restarted the management Network through the DCUI and still had the same screen as before but I had now lost connection to the network
I then added vmnic0 back into the vSwitch through the DCUI
I got my connection back..
But strangely enough in the vSphere client I saw this.
Which struck me as strange. I had this in the ESXi Shell
And now I finally understood what was happening.. The uplink was added to vSwitch0 – but not to the management network Portgroup, which personally I find strange.
What I actually should have done was this.
Get-VirtualSwitch -Name vSwitch0 | Set-VirtualSwitch -Nic vmnic0,vmnic1
This would add the second vmnic to the first – and would not have caused me all this trouble, and produced this:
So what can I (and perhaps you) learn from this whole episode?
- As always.. Test!! Test!! Test!!!
- The help could be more accurate (ahem… PowerCLI people…
- Investigating a problem in depth – gives you a better understanding of what is going on.
Now if someone could possibly explain why the host behaved exactly the way it did, I would be grateful. Also why the default behavior of the PowerCLI command did what it did – would be also appreciated..
Hope you enjoyed the ride…