A lot of us miss NX-OS configuration in personal/home lab that can be used for feature testing, Implementation/Migration Stimulation or CCIE-DC Preparation. We have trained a lot on Cisco IOS on free simulators like GNS3 and IOU but we didn't have a chance to keep in touch with NX-OS configuration and features, specially with a platform that simulate control and data plane forwarding not just control plane (like Nexus Titanium).
In this post (and further posts), we will go through a step-by-step installation for a reliable NX-OS lab in personal PC/Laptop that can be used to navigate/apply different NX-OS features and configurations. We will learn how to build our own topology to simulate specific scenario. The beauty about this lab is that you can save your configuration then come back later on and find your configuration as it's :).
The lab steps and guidelines are collected from the NX-OSv configuration guide, VirtualBox recommendations, VirtualBoX Manual Guide along with some tuning and tweaking to have more reliability with minimum resources.
For the supported features, please refer to NX-OSv Guide as it states all supported features and limitations. In summary, it will support L2 features, L3 Protocols, vPC, VXLAN, EVPN, Programmability (Puppet,chef), Shells (NX-OS, Bash).
According to your PC/laptop specifications, you can run three or more Nexus Machines on it. The Lab is built with Cisco NX-OSv that simulate data plane and control plane forwarding based on Cisco Nexus 9000 switches. The Lab can run on different virtual environments like VMware, VirtualBox, KVM..etc. We will be using VirtualBox for our deployment due its simplicity and its streamline configuration.
So Lets have a dive... :)
First, you have to fulfill the below System Requirements to be able to run a Lab of 3 Nexus NX-OSv Machines:
16 GB of RAM
2 GB of free Disk Space (Recommended to have SSD, this minimize the nexus boot time to just 3 min instead of 15 min)
Processor with 4 virtual CPUs, 64-bit and to support VT-X/AMD-V technology (Can be Intel Core i5, Core i7 or equivalent processor from AMD)
If you increased the Memory of your personal PC/Laptop to 32 GB of RAM with the same other requirements, you can have a Lab with 7 Nexus NX-OSv machines.
You will also need to have the following software before we begin our installation process:
- VirtualBox (Recommended to have the latest release)
- VirtualBox Extension Pack (Must be the same release of your VirtualBox)
- Putty (or any other terminal monitor tool)
- NX-OSv VMDK file version 184.108.40.206.1 (Download it from Cisco website)
Now, lets begin installing our first Nexus NX-OSv machine. Simply, follow the below steps sequentially to have your first NX-OSv Machine up and running:
Install VirtualBox on your PC/Laptop.
Install PuTTY for serial console.
Copy the NX-OSv VMDK to your local hard drive.
Launch VirtualBox and click the New icon.
Enter the Name as you wish (ex.: Nexus-9K), select the Type as Linux, and select the Version as Other Linux (64-bit).
Enter the Memory size (RAM) as 4096 MB. (Cisco Recommends to have 8 GB of memory, but 4 GB works great with a lot of features activated concurrently without performance degradation).
Select "Use an existing virtual hard drive file". Click the folder icon (bottom right side) and select the VMDK. (this is the VMDK file you have copied to your local drive in step 3).
Select the VM and click Settings
In the Attributes of Settings, click storage icon
Click the System icon:
Click the Audio icon:
Click the Network icon:
Click the Serial Ports icon:
Click the USB Ports icon:
Start the VM
Open PuTTY, then apply the below configuration:
Open "Basic options for your PuTTY session.
Select "Serial" for "Connection type"
Specify "\\.\pipe\COM1" for Serial line path.
Select "9600" for "Speed".
Connect to your VM and enjoy
Now you have one Nexus NX-OSv machine running and you can explore NX-OS shell along with the different features.
Once you have login to the CLI, it will prompt you go through initial configuration and to choose your password. Ignore initial configuration wizard and type the password you will be using in your logins (this is a lab try to not use secured password and keep it simple).
After you get login, configure the IP address of the management port and make sure to have IP address in the same range of the adapter you have Bridged-to in "Step 12". Try to SSH to the management port from your PC/Laptop. Now you can configure a default route in the management vrf towards the subnet gateway and you can SSH remotely to your Nexus Machine without the need to console locally from your PC/Laptob.
We will move forward and create multiple Nexus machines, configure VM adapters to activate Nexus ethernet ports along with establishing connectivity between Nexus machines in next part of this post ISA... Keep Tuned !