• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

virtuallyGhetto

  • About
  • Privacy
  • VMware Cloud
  • Home Lab
  • Nested Virtualization
  • Automation
    • VMware Kickstart
    • VMware API/SDK/CLI
    • VMware vMA/VIMA
    • VMware OVF / OVFTOOL
  • Apple Mac
  • VCSA
  • VSAN
You are here: Home / Home Lab / Configure NSX-T Edge to run on AMD Ryzen CPU

Configure NSX-T Edge to run on AMD Ryzen CPU

05/06/2020 by William Lam 5 Comments

The vast majority of VMware Homelabs is still Intel-based today but I have been seeing a slow rise of AMD-based kits being adopted, especially with AMD's desktop line of CPUs known as Ryzen. One of the considerations on whether you could use an AMD processor was whether you were planning to deploy NSX-T and in earlier releases, only Intel was supported as the NSX-T Edge required support for Data Plane Development Kit (DPDK) and this was only supported with Intel-based processors.

With the latest NSX-T 3.0 release, AMD-based processors are now supported and per the release notes, the following CPUs can be used:

  • AMD EPYC 7xx1 Series (Naples)
  • AMD EPYC 3000 Embedded Family and newer
  • AMD EPYC 7xx2 Series (Rome)

You will notice that only AMD's server line of CPUs known as EPYC are currently supported, which makes sense for running Production workloads. If you attempt to deploy an NSX-T Edge Node running on a non-EPYC platform, you will get an error message stating the CPU is not supported and I figured this was probably due to the lack of DPDK support in the consumer CPUs.

Yesterday, in our internal "Homelab" Slack channel, I came across an interesting tidbit from Andrea Spagnolo, a Sr. Field Engineer in our Cloud Native Business Unit who shared a pretty neat trick on how to get latest NSX-T 3.0 release to work with a Ryzen-based CPU.

Disclaimer: This is not officially supported by VMware. The behaviors described here can change in the future

First off, I want to thank Andrea for sharing but also credit to Beniamino Guarnaschelli and his blog post here which actually gave Andrea the idea to take a closer look as he was trying to get this setup in his own personal homelab.

The way NSX-T ensures you that you a supported AMD CPU is by looking for the "AMD EPYC" string in the model name which is performed within the NSX-T Edge using the following /opt/vmware/nsx-edge/bin/config.py script. To bypass this check, we just need to comment out the lines that does the actual check.

Step 1 - Deploy an NSX-T Edge (either standalone or using the NSX-T Manager workflow)

Step 2 - SSH to NSX-T Edge as root and comment out lines 181-184


Step 3 - Run the following command to start the dataplane service which will cause the VM to reboot

su - admin
start service dataplane

Step 4 - You can now configure the NSX-T Edge as a Transport Node and you will not run into any errors

Note: One additional issue that Andrea ran into was that IOMMU was NOT enabled on his motherboard which is requirement. Once this was done along with the configuration tweak above, he was able to get NSX-T Edge working on his AMD (3700x) kit.

Andrea has also confirmed this trick works with both NSX-T 2.5 as well as the latest 3.0 release in case folks wanted to try this out on an earlier version.

More from my site

  • NSX-T Edge OVF property to automatically join NSX-T Management Plane
  • ASRock AMD “NUC” Gen 2 Platform
  • Retrieving network statistics on VMware Cloud on AWS using NSX-T Policy API
  • Automated vSphere 7 and vSphere with Kubernetes Lab Deployment Script
  • Automating the creation of NSX-T “Disconnected” Segments for DR testing on VMware Cloud on AWS 
Share this...
  • Twitter
  • Facebook
  • Linkedin
  • Reddit
  • Pinterest

Filed Under: Home Lab, Not Supported, NSX Tagged With: AMD, EPYC, NSX Edge, NSX-T, Ryzen

Reader Interactions

Comments

  1. Ben Kenobi says

    05/06/2020 at 1:54 pm

    Hi William,

    thanks for the credits and for mentioning me.

    Ciao
    Benja

    Reply
  2. Ed McGuigan says

    07/15/2020 at 7:48 am

    With this clarification, please note that AMD have a very good “baby EPYC” processor series out. A Supermicro motherboard with a SoC EPYC 3251 8 cores and 16 threads is a very attractive home lab solution that is equivalent to a Xeon D but probably a couple of hundred dollars less.

    Thanks for this. I just ran up against the problem and was a little bit worried.

    Reply
  3. Dave says

    07/29/2020 at 5:48 am

    Thank you, thank you, thank you. This did the trick. I am running a Threadripper cluster and this did the trick really nice and saved me Thousands. I had also been planning to upgrade the primary datacenter to Epycs and it is really nice to know that the Edge is fully supported on it now. I was beginning to panic. The last day has been a nightmare.

    Reply
  4. Reda BOUTBICHA says

    12/30/2020 at 2:23 am

    Thank you for this post.
    I have a node with an E5520 processor, when deploying the Edge, an error message “The host does not support required cpu features: [‘aes’].”
    I was able to access the /opt/vmware/nsx-edge/bin/config.py file and comment out the lines that do the actual check.
    When I started the dataplane service, the edge restarted as expected and the message still persists, but when I wanted to put the edge in an edge cluster, it shows me another error indicating that installing the edge it is on pending state.

    Reply
  5. lola2010cutie says

    03/26/2021 at 10:46 am

    Is there a way to automated the edit process? Perhaps ssh file copy, or bash shell like script?

    Reply

Thanks for the comment! Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Primary Sidebar

Author

William Lam is a Senior Staff Solution Architect working in the VMware Cloud team within the Cloud Services Business Unit (CSBU) at VMware. He focuses on Automation, Integration and Operation for the VMware Cloud Software Defined Datacenters (SDDC)

  • Email
  • GitHub
  • LinkedIn
  • RSS
  • Twitter
  • Vimeo

Sponsors

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy