I want to share my experience in building the NSX lab in my home lab environment with machine 64 GB RAM based on VMware workstation 10. Starting with overview on NSX and the lab setup and the environment setup.
NSX-V is a VMware product specified in virtualizing the network component and services. NSX is one of the key components for the SDDC (Software Defined Datacenter) architecture that provide the SDN (software defined network). This product providing a complete network solution without relying on the physical network capabilities using Huawei, cisco or other switch will provide the same services only we need the IP connectivity and the 1600-byte MTU (jumbo frame). With the ability to be deployed on any IP network, including both existing traditional networking models and next-generation fabric architectures from any vendor, NSX is a completely non-disruptive solution.
The NSX data plane consists of the NSX vSwitch, which is based on the vSphere Distributed Switch (VDS) with additional components to enable services. NSX kernel modules, userspace agents, configuration files, and install scripts are packaged in VIBs and run within the hypervisor kernel to provide services such as distributed routing and logical firewall and to enable VXLAN bridging capabilities.
The NSX control plane runs in the NSX Controller cluster. NSX Controller is an advanced distributed state management system that provides control plane functions for NSX logical switching and routing functions. It is the central control point for all logical switches within a network and maintains information about all hosts, logical switches (VXLANs), and distributed logical routers.
The NSX management plane is built by the NSX Manager, the centralized network management component of NSX. It provides the single point of configuration and REST API entry-points.
The consumption of NSX can be driven directly through the NSX Manager user interface, which is available in the vSphere Web Client. Typically end users tie network virtualization to their cloud management platform for deploying applications. NSX provides rich integration into virtually any CMP through REST APIs. Out-of-the-box integration is also available through VMware vCloud Automation Center, vCloud Director, and OpenStack with the Neutron plug-in for NSX.
If you are in a production environment, you will need to prepare the below points
- The main requirement from the network is the IP connectivity and the 1600 byte MTU (jumbo frame).
- The System Requirement https://docs.vmware.com/en/VMware-NSX-Data-Center-for-vSphere/6.2/com.vmware.nsx.install.doc/GUID-311BBB9F-32CC-4633-9F91-26A39296381A.html
- The Ports required for the NSX https://docs.vmware.com/en/VMware-NSX-Data-Center-for-vSphere/6.2/com.vmware.nsx.install.doc/GUID-E7C4E61C-1F36-457C-ACC5-EAF955C46E8B.html
The Workstation virtual machines setup:
3 ESXI 6.7 hosts 2 host for Management and 2 host for production. Each with
- 6 VCPU.
- 12 GB RAM. (for the production or the test hosts I give them the minimum 6GB only)
- 2 HDD (40GB, 240GB).
- 2 NICs in separate VMnet
- Import the VCenter 6.7.
- Import NSX Manager.
- Deploy the controller and the router in the management cluster.
- Connecting the hosts with the first nic with the same vmnet in the workstation as the management and the physical network.
- Connect the second nic for the hosts in an isolated vmnet as this nics will be the VTEP to be responsible for the vm’s traffic and the only gateway for this network will be the edge interface to the management network.
- The VCenter and the NSX manager will be connected to the vmnet management as well.
- The controller and the edge uplink will be connected to the distributed switch in the management cluster that have the uplink nic connected to the VMnet management.
- The DLR virtual appliance and the other edge interfaces will be connected to the logical network of the NSX and the responsible for this traffic will be the VTEP (NSX vmk)
The Logical setup for the router and the virtual machines