10 Responses

  1. AdamG
    AdamG at |

    Great stuff…your mission, if you should choose to accept it, is to figure out how to configure this using PowerCLI! Also, on a standard switch, not distributed switch. 🙂

    Reply
    1. Michael Munk Larsen
      Michael Munk Larsen at |

      AdamG, here you go. Just remove the last 2 commands if you don’t want it on VDS. You probably have to modify this a bit since this is tailored for my environment.

      $esxcli = Get-EsxCli -VMHost $VMHostname

      $esxcli.network.ip.netstack.add($null,”vmotion”) | Out-Null

      Start-Sleep -Seconds 2

      New-VirtualSwitch -VMHost $VMHostname -Name “temp” | Out-Null

      Start-Sleep -Seconds 2

      New-VirtualPortGroup -VirtualSwitch (Get-VirtualSwitch -VMHost $VMHostname -Name “temp”) -Name “temp” -VLanId “4000” | Out-Null

      Start-Sleep -Seconds 2

      $esxcli.network.ip.interface.add($null,$null,$vmk,$null,”1500″,”vmotion”,”temp”) | Out-Null

      Start-Sleep -Seconds 2

      $esxcli.network.ip.interface.ipv4.set($vmk,$IPaddress,$Subnet,$null,”static”) | Out-Null

      Start-Sleep -Seconds 2

      $esxcli.network.ip.route.ipv4.add($gateway,”vmotion”,”default”) | Out-Null

      Start-Sleep -Seconds 10

      Set-VMHostNetworkAdapter -PortGroup (Get-VDPortgroup -Name ($Portgroups).Replace(“/”,”%2f”) -VDSwitch $vdswitch) -VirtualNic (Get-VMHostNetworkAdapter -Name $vmk -VMHost $VMHostname) -confirm:$false | Out-Null

      Start-Sleep -Seconds 2

      Get-VirtualSwitch -Name ‘temp’ -VMHost $VMHostname | Remove-VirtualSwitch -Confirm:$false | Out-Null

      Start-Sleep -Seconds 2

      Reply
      1. AdamG
        AdamG at |

        Works great, thanks much for this!

  2. Justin
    Justin at |

    You can still do Layer 3 vmotion without specifically utilizing the vmotion stack, but it’s absolutely true that you’ll have to configure your routes via command line/powershell.

    Reply
  3. Dominik
    Dominik at |

    Is it necessary to put in a default gateway if all vMotion IPs are in the same subnet?

    Reply
  4. Micheal Ethan
    Micheal Ethan at |

    We don’t really know about this topic but after reading your blog and doing search about this type of topic, I able to describe about this topic.Recently, I get chance to upgrade and migrate my existing environment from vSphere 5 and 5.5 to version 6. During migration I have seen very strange issue in VMware TCP/IP Stack configuration. I am working on it from two days and finally I am able to figure out where the problem exists.Here is my scenario. I have been trying to configure vMotion, NFS and Mgmt traffic on the single 10 G Ethernet. In which Mgmt is on layer 3 network. However NFS and vMotion is on layer 2 network.I have read about the TCP/IP stack feature in vSphere and figure, let’s give him a try and use it to separate my vMotion and NFS traffic on different stack from the default TCP/IP stack. The default stack is by default used for Management traffic during the installation and configure of ESXi.Those who used vSphere 6 will know there is a TCP/IP stacks exists for vMotion and Provision traffic on web client. You can see it from web client by going into the ESXi networking. http://academy.ehacking.net/courses/ethical-hacking-from-scratch-to-advanced-technique

    Reply
  5. VMkernel TCP/IP Stacks – VMDK 教室
  6. Ray Lillback
    Ray Lillback at |

    Chris, as usual this is extremely informative! I kept trying to vmkping & would get an error that the vmk isn’t valid. Just so everyone knows, if you are using Jumbo Frames, you can do a “ping ++netstack=vmotion -I vmk4 -d -s 8972 172.17.12.105” to verify your Layer 3 switches are passing Jumbo Frames correctly. (Assuming MTU = 9000)

    Reply
  7. vSAN環境で L3-vMotion を行うには? – cjnotes

    […] Configuring the vMotion TCP/IP Stack for Layer 3 vMotion Across ESXi Hosts […]

Share your point of view!