Holy crap what do all these VMware VMkernel type mean? I started this article and realized I had already written one here. Sad when google leads you to something you wrote… looks like I don’t remember too well… Perhaps I should just go yell for the kids to get off my lawn now. I wanted to take a minute to revise my post with some new things I have learned and some guidance.
From my previous post:
- vMotion traffic – Required for vMotion – Moves the state of virtual machines (active datadisk svMotion, active memory and execution state) during a vMotion
- Provisioning traffic – Not required will use management network if not setup – cold migration, cloning and snapshot creation (powered off virtual machines = cold)
- Fault tolerance traffic (FT) – Required for FT – Enables fault tolerance traffic on the host – only a single adapter may be used for FT per host
- Management traffic – Required – Management of host and vCenter server
- vSphere replication traffic – Only needed if using vSphere replication– outgoing replication data from ESXi host to vSphere replication server
- vSphere replication NFC traffic – Only needed if using vSphere replication – handles incoming replication data on the target replication site
- Virtual SAN – Required for VSAN – virtual san traffic on the host
- VXLAN – used for NSX not controlled from the add vmkernel interface.
I wanted to provide a little better explanation around design elements with some interfaces. Specifically I want to focus on vMotion and Provisioning traffic. Let’s create a few scenario’s and see what interface is used assuming I have all the VMkernel interfaces listed above:
- VM1 is running and we want to migrate from host1 to host2 at datacenter1 – vMotion
- VM1 is running with a snapshot and we want to migrate from host1 to host2 at datacenter1 – Provisioning traffic (if it does not exist management network is used)
- VM1 is running with a snapshot and we want to storage migrate from host1 DC1 to host4 DC3 – storage vMotion – Provisioning traffic (if it does not exist management network is used)
- VM1 is not running and we want to migrate from host1 to host2 at datacenter1 – Provisioning traffic (very low bandwidth used)
- VM1 is not running has a snapshot and we want to migrate from host1 to host2 at datacenter1 – Provisioning traffic (very low bandwidth used)
- VM2 is being created at datacenter1 – Provisioning traffic
So design guidance in a multi-site implementation you should have the following interfaces if you wish to separate the TCP-IP stack or use network IO control to avoid bad neighbor situations. (Or you could just assign it all to management vmk and go nuts on that interface = bad idea)
- Management
- vMotion
- Provisioning
Use of other vmkernel interfaces depends on if you are using replication, vSAN or NSX.
Should you have multi-nic vMotion?
Multi-nic vMotion enables faster vMotion of multiple entries off a host (as long as they don’t have snapshots). It still is a good idea if you have large vm’s or lots of vm’s on a host.
Should you have multi-nic Provisioning?
No idea if it’s even supported or a good idea. Provisioning network is used for long distance vMotion so the idea might be good… I would not use it today.