UNetLab – Setting up NX-OS (Titanium)

I know I said in the last post that I was saving NX-OS (Titanium) for another day, well, today is that day!

Finding a suitable VMDK file to use was the hardest part.. but in the end, I did. I copied it to the /tmp directory and tried the usual:

[email protected]:/tmp# ls
N7K.vmdk
[email protected]:/tmp# qemu-img convert -f vmdk -O qcow2 N7K.vmdk hda.qcow2
[email protected]:/tmp# mkdir /p /opt/unetlab/addons/qemu/titanium-7
[email protected]:/tmp# mv hda.qcow2 /opt/unetlab/addons/qemu/titanium-7/
[email protected]:/tmp# /opt/unetlab/wrappers/unl_wrapper -a fixpermissions
[email protected]:/tmp# ls -l /opt/unetlab/addons/qemu/
total 16
drwxr-xr-x 2 root root 4096 Feb 19 14:26 asa-8.42
drwxr-xr-x 2 root root 4096 Feb 19 16:16 titanium-7
drwxr-xr-x 2 root root 4096 Feb 19 13:53 vios-adventerprisek9-m15.4-1.2.0-173
drwxr-xr-x 2 root root 4096 Feb 17 11:02 xrv-k9-5.2.2
[email protected]:/tmp#

We have the files loaded and they are visible in Unetlab:

Adding an NX-OS node in UNetLab

Topology

Running NXOS in UNetLab
Do they run?
Nope. They refuse to start.

From the documentation for CSR1000v it says to run:

# /usr/bin/qemu-system-x86_64 --enable-kvm -serial mon:stdio -nographic -boot order=c,once=d -smp 1 -m 3072 -usb -hda hda.qcow2 -cdrom csr1000v-universalk9.03.13.00.S.154-3.S-ext.iso

However, this is not working for me:

[email protected]:/opt/unetlab/addons/qemu/titanium-7# /usr/bin/qemu-system-x86_64 --enable-kvm -serial mon:stdio -nographic -boot order=c,once=d -smp 1 -m 3072 -usb -hda hda.qcow2 -cdrom nexus.iso
Could not access KVM kernel module: No such file or directory
failed to initialize KVM: No such file or directory
[email protected]:/opt/unetlab/addons/qemu/titanium-7#

Virtualization issues

This link would indicate that the module is not installed. I get the same when trying in VirtualBox. I did some googling and tried everything I can, turns out that my bargain ESXi box is missing one vital piece:

UNetLab in VirtualBox

So I imported it into VMWare Fusion.

Now the message that the necessary bits aren’t working has gone.

If you are having a similar issue then this is the screen that you don’t want:

UNetLab in VMWare Fusion

This is what you do want:

UNetLab in VMWare Fusion

I can check that Qemu will be happy by doing this:

UNetLab in VMWare Fusion

More importantly, the NX-OS routers fire up:

Running NX-OS in UNetLab on VMWare fusion
We have connectivity!

Testing NX-OS

NXOS1# sh ver
Cisco Nexus Operating System (NX-OS) Software
TAC support: http://www.cisco.com/tac
Documents: http://www.cisco.com/en/US/products/ps9372/tsd_products_support_serie
s_home.html
Copyright (c) 2002-2014, Cisco Systems, Inc. All rights reserved.
The copyrights to certain works contained herein are owned by
other third parties and are used and distributed under license.
Some parts of this software are covered under the GNU Public
License. A copy of the license is available at
http://www.gnu.org/licenses/gpl.html.

Titanium is a demo version of the Nexus Operating System

Software
  loader:    version N/A
  kickstart: version 7.0(1) [build 7.0(1)ZD(0.216)]
  system:    version 7.0(1) [build 7.0(1)ZD(0.216)]
  kickstart image file is: bootflash:///titanium-d1-kickstart.7.0.1.ZD.0.216.bin
  kickstart compile time:  6/13/2014 20:00:00 [06/14/2014 05:45:18]
  system image file is:    bootflash:///titanium-d1.7.0.1.ZD.0.216.bin
  system compile time:     6/13/2014 20:00:00 [06/14/2014 09:32:30]


Hardware
  cisco Nexus7000 C7018 (18 Slot) Chassis ("Unknown Module")
  Unknown CPU with 2042092 kB of memory.
  Processor Board ID TM00010000B

  Device name: NXOS1
  bootflash:          0 kB

Kernel uptime is 0 day(s), 1 hour(s), 7 minute(s), 29 second(s)


plugin
  Core Plugin, Ethernet Plugin
NXOS1#
NXOS1# sh cdp neigh
Capability Codes: R - Router, T - Trans-Bridge, B - Source-Route-Bridge
                  S - Switch, H - Host, I - IGMP, r - Repeater,
                  V - VoIP-Phone, D - Remotely-Managed-Device,
                  s - Supports-STP-Dispute

Device-ID          Local Intrfce  Hldtme Capability  Platform      Port ID
NXOS2(TB00020000B)
                    Eth2/1         141    R S s     N7K-C7018     Eth2/1        
NXOS1# 
NXOS2# sh cdp neigh
Capability Codes: R - Router, T - Trans-Bridge, B - Source-Route-Bridge
                  S - Switch, H - Host, I - IGMP, r - Repeater,
                  V - VoIP-Phone, D - Remotely-Managed-Device,
                  s - Supports-STP-Dispute

Device-ID          Local Intrfce  Hldtme Capability  Platform      Port ID
NXOS1(TB00010000B)
                    Eth2/1         175    R S s     N7K-C7018     Eth2/1        
NXOS2#

There we have it… NX-OS (Titanium) running inside of Unetlab. So, if your virtualization platform supports a KVM guest, and you don’t see “Warning: neither Intel VT-x or AMD-V found”, then you should be OK.

Learn more!

If you want to know how to do more with NX-OS, then NX-OS and Cisco Nexus Switching: Next-generation Data Center Architectures is a great resource!

NX-OS and Cisco Nexus Switching: Next-generation Data Center Architectures


58 Comments

  1. Anonymous March 23, 2015
  2. Stuart Fordham March 23, 2015
  3. Anonymous March 24, 2015
  4. Anonymous March 27, 2015
  5. Stuart Fordham March 27, 2015
  6. Anonymous December 12, 2015
  7. Anonymous January 8, 2016
  8. Михаил Бычков February 11, 2016
  9. Stuart Fordham February 11, 2016
  10. Михаил Бычков February 11, 2016
  11. Stuart Fordham February 11, 2016
  12. Михаил Бычков February 14, 2016
  13. Stuart Fordham February 14, 2016
  14. Anonymous February 20, 2016
  15. Stuart Fordham February 20, 2016
  16. Don't Give Up March 1, 2016
  17. Stuart Fordham March 1, 2016
  18. Dondada March 3, 2016
    • Neo October 12, 2016
  19. Don't Give Up March 17, 2016
  20. Anonymous July 9, 2016
  21. Unknown August 28, 2016
  22. Mohammad Ishaq August 28, 2016
  23. abdulfattah assad August 28, 2016
  24. Stuart Fordham August 28, 2016
  25. Stuart Fordham August 28, 2016
  26. abreey August 29, 2016
  27. Stuart Fordham October 12, 2016
    • Neo October 12, 2016
  28. Mohammad Ishaq October 29, 2016
  29. Chichi November 3, 2016
  30. Mohammad Ishaq November 24, 2016
  31. jchan December 14, 2016
  32. bala.inspirer Bala February 2, 2017
  33. bala.inspirer Bala February 2, 2017
    • Stuart Fordham February 2, 2017
  34. bala.inspirer Bala February 2, 2017
    • Stuart Fordham February 2, 2017
  35. Bala February 3, 2017
  36. Bala February 3, 2017
  37. Bala February 3, 2017
  38. Stan Kozlov February 7, 2017
  39. Stan Kozlov February 7, 2017
  40. Bala February 8, 2017
    • Stuart Fordham February 8, 2017
  41. Bala February 8, 2017
  42. Umar Ali Malik April 11, 2017
    • Stuart Fordham April 11, 2017
  43. Umar Ali Malik April 11, 2017
  44. Simo February 23, 2020
  45. chetan March 28, 2021

Leave a Reply

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