Change a Fabric Interconnect into a Nexus Switch

I got a Nexus 5010 from our spare parts department.  When I booted it up, lo and behold, it thought it was a UCS Fabric Interconnect 6020!

As most people know the 6120XP is the same hardware as the Nexus 5010.  Only difference is that its spray painted green.  Well this particular model I got was gray and said it was a Nexus 5010.  So I was bound and determined to get it back.  I got pretty close, and wanted to write down the steps I took.

I’m sad to say, however, that I didn’t get it to work all the way.

Here’s what I did:

Step 1. Get TFTP server setup (This explains how to do it for a MacBook Pro)
I’m running Mountain Lion OSX. Turns out there is a default tftp server installed with it. Getting it running is pretty easy. Just run:

sudo launchctl load -F /System/Library/LaunchDaemons/tftp.plist

(Turning it off is done with:

sudo launchctl unload -F /System/Library/LaunchDaemons/tftp.plist

)
(To see if its running run:

sudo launchctl list | grep tftp,

if you see output its running, if not, its not)

From there you need to put the files you need into the /private/tftpboot/

I went to Cisco’s support page and easily found two files:
n5000-uk9.5.2.1.N1.5.bin < the software file
and
n5000-uk9-kickstart.5.2.1.N1.5.bin < the kickstart file

I had to copy them with sudo since you’re going into a privileged directory.

You should test your tftp server to make sure it works. No use yelling at the Nexus 5000 for telling you it can’t access the file.

From the command prompt on the mac:

cd ~/Desktop
tftp localhost
get n5000-uk9.5.2.1.N1.5.bin

If that works, you are in business.

Step 2. Load the Nexus 5000 (that thinks its a 6100) into the loader prompt.

When the machine started booting, I had to do

Ctrl+Shift+R

right as it was loading the UCS kickstart file. Doing this got me to a
loader>

prompt.

From here, we don’t have a lot of options. But all we need to do is set the mgmt0 interface and kickstart from our Nexus image that we have on tftp.
(Incidently, at this point I ran the dir command to see if there were any nexus images, and there wasn’t! Only UCS images. )

Here’s how we set that:

loader> set ip 192.168.1.99 255.255.255.0

Then it confirmed that this was good. Now, to load up the kickstart file:

loader> boot tftp://192.168.1.234/private/tftpboot/n5000-u9-kickstart.5.2.1.N1.5.bin
Address: 192.168.1.99
Netmask: 255.255.255.0
Server: 192.168.1.234
Gateway: 0.0.0.0
Booting: /private/tftpboot/n5000-uk9-kickstart.5.2.1.N1.5.bin console=ttyS0,960
0n8nn

the system then boots up. Does some image verification and loads into a boot prompt:

Cisco Nexus Operating System (NX-OS) Software
TAC support: http://www.cisco.com/tac
Copyright (c) 2002-2013, Cisco Systems, Inc. All rights reserved.
The copyrights to certain works contained in this software are
owned by other third parties and used and distributed under
license. Certain components of this software are licensed under
the GNU General Public License (GPL) version 2.0 or the GNU
Lesser General Public License (LGPL) Version 2.1. A copy of each
such license is available at
http://www.opensource.org/licenses/gpl-2.0.php and

http://www.opensource.org/licenses/lgpl-2.1.php

switch(boot)#

Step 3: Copy files and continue booting

Now we just need to get the files on the device.

switch(boot)# con t
switch(boot)(config)# inter mgmt 0
switch(boot)(config-if)# ip address 192.168.1.99 255.255.255.0
switch(boot)(config-if)# no shutdown
switch(boot)(config-if)# exit
switch(boot)(config)# exit
switch(boot)# copy tftp: boot flash:
switch(boot)# copy tftp: bootflash:
Enter source filename: /private/tftpboot/n5000-uk9.5.2.1.N1.5.bin
Enter hostname for the tftp server: 192.168.1.234
Trying to connect to tftp server……
Connection to server Established. Copying Started…..

At this point I went downstairs and had some chips to eat. I got back and had to wait like 15-20 min for it to copy. Shesh! Finally, when I was about to cancel it, I saw:

TFTP get operation was successful
Copy complete, now saving to disk (please wait)…

Now we need to get the kickstart file:

switch(boot)# copy tftp://192.168.1.234/n5000-uk9-kickstart.5.2.1.N1.5.bin boot flash:

So I waited some more, this one didn’t take as long.

Then I deleted a bunch of UCS files:

switch(boot)# delete bootflash:ucs-6100-k9-system.4.0.1a.N2.1.0.1036.gbin
switch(boot)# delete bootflash:cisco_nexus_1000v_certificate.pem
switch(boot)# delete bootflash:ucs-6100-k9-kickstart.4.0.1a.N2.1.0.1036.gbin
switch(boot)# delete bootflash:ucs-6100-k9-kickstart.4.0.1a.N2.1.0.1056d.gbin
switch(boot)# delete bootflash:ucs-6100-k9-system.4.0.1a.N2.1.0.1056d.gbin
switch(boot)# delete bootflash:ucs-manager-k9.1.0.0.1036.gbin
switch(boot)# delete bootflash:ucs-manager-k9.1.0.0.1056d.gbin

Then I booted the image:

switch(boot)# load n5000-uk9.5.2.1.N1.5.bin

This set me to the boot prompt again. So I hit exit:

boot switch(boot)# exit

It kept rebooting to stored images of UCS manager. So I found this command:

init system check-filesystem

From here, I repeated the operation of downloading the 2 Nexus images.  At least now it didn’t boot up into UCS Fabric Interconnect, but I could never get it to go to regular Cisco Nexus 5010.  It may be that there was something wrong with the hardware.  It certainly looks a little beat if you look at this hardware.  If nothing else, I learned a little more about the boot files in the Nexus 5000.