• June 20, 2019, 12:04:25 AM
Welcome, Guest. Please login or register. Registration is free.
Did you miss your activation email?

Author Topic: ICX Code Upgrade  (Read 6576 times)

0 Members and 1 Guest are viewing this topic.

Offline Telair

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 965
ICX Code Upgrade
« on: October 02, 2013, 07:50:17 PM »
Upgrading the code on Brocade ICX switches can be a bit confusing the first time you look at doing it.  There are a bunch of different image names and you don't really know which one(s) to use.  I have a brand new ICX 6610-48P switch in front of me that I would like to upgrade to a newer code level before programming it to send out to one of our data centers.  This switch comes with v07.4.00c code on it and I want to bring it up to v07.4.00d to get rid of some bugs in the code and to use some newer features.

1) Find out what you want.

Brocade ICX 6610's can run one of two different code types.  There is switch code and router code.  If you load and run the switch code, then your ICX can only do switch things ( layer 2 ).  If you load and run the router code, then you can do switch things ( layer 2 ) and router functions ( layer 3 ).  In talking with Brocade, they have recommended we always run the router code as it is more tested and stable.  I have tried both switch and router code and they seem the same doing switch functions.  But since it is recommended to me, I load the router code on my ICX's.  No sense in loading the switch code if the router code can do the same functions and more for no penalty.  By default, ICX 6610's come with both the switch and router code installed in flash memory and the switch code is the image that boots up out of the box as the primary image. 

2) Download the code and put it on your TFTP server.

The only way to upload new code to the ICX 6610 is via a TFTP transfer.  Once you have a Brocade support account you can go grab the software from the support site to do your upgrade.  You can either grab the individual image files, or I recommend getting the .zip file of the code.  That way you will know if the archive got corrupted in transit while downloading.  I have seen a lot of cases where switches have been damaged by corrupted code.  If a .zip file is corrupted, it will warn you when you go to decompress it.  The file I wanted to get is "07400d.zip" for the upgrade I want to do.  When you unzip it you will see the sub directories for the images for all the different switches that are supported in this release.  I just want the \ICX6610 directory this time.

3) Double check what you have.

I would advise you to run the command "show flash" so you can check what you have in the switch currently.  The output looks like this:

ICX6610-48P#show flash
Stack unit 1:
  Compressed Pri Code size = 5699705, Version:07.4.00cT7f1 (FCXS07400c.bin)
  Compressed Sec Code size = 7189206, Version:07.4.00cT7f3 (FCXR07400c.bin)
  Compressed Boot-Monitor Image size = 370555, Version:07.3.02T7f5
  Code Flash Free Space = 52166656

So you can see the primary image on this ICX is running v07.4.00c and is the switch code by the "S" in the image name.  Router code is loaded in the secondary flash image as you can see by the "R" in the image name.  If this was a stack of switches, it would show each unit's flash image.  Since you need to transfer the image with a TFTP server, you will need to put an IP address on the switch at the least.  That should be from the config prompt "ip address <IP-address> <subnet mask>" followed by "ip default-gateway <IP-address>".

4) Upload the new image.

First load the bootcode if it is newer than the existing bootcode.  In this case the bootcode is the same between version 07.4.00c and 07.4.00d, but I'll reload it anyway.

copy tftp flash <ip-address> <image-file-name> bootrom

It will tell you when it has finished transfering the files from the server and copying them to the boot ROM.  If it has to copy the images to the units in a stack, this will take a bit longer.  Next is to transfer the routing image(s) to the ICX.

copy tftp flash <ip-address> <image-file-name> primary

Once again it will copy away and lots of little "....." will flood your screen as it transfers from the TFTP server to the switch.  Once it has finished it will notify you.  I also want to copy the same image to the secondary flash so in case someone in the future tries to boot the other image, things won't break.  I suppose you could keep two different code levels on the unit if you wanted.

copy tftp flash <ip-address> <image-file-name> secondary

The same "....." will occur as it copies to the secondary flash.  So in my case I went like this.

ICX6610-48P#copy tftp flash 192.168.1.10 grz07302.bin bootrom
ICX6610-48P# Flash Memory Write (8192 bytes per dot) ...........................
(Boot Flash Update)Erase.........Write.............
TFTP to Flash Done
ICX6610-48P#
ICX6610-48P#copy tftp flash 192.168.1.10 FCXR07400d.bin primary
ICX6610-48P# Flash Memory Write (8192 bytes per dot) .....<pages of dots>
TFTP to Flash Done
ICX6610-48P#
ICX6610-48P#copy tftp flash 192.168.1.10 FCXR07400d.bin secondary
ICX6610-48P# Flash Memory Write (8192 bytes per dot) .....<pages of dots>
TFTP to Flash Done
ICX6610-48P#

Then a final "show flash" to verify the right images are loaded in the flash memory correctly.

ICX6610-48P#show flash
Stack unit 1:
  Compressed Pri Code size = 7194267, Version:07.4.00dT7f3 (FCXR07400d.bin)
  Compressed Sec Code size = 7194267, Version:07.4.00dT7f3 (FCXR07400d.bin)
  Compressed Boot-Monitor Image size = 370555, Version:07.3.02T7f5
  Code Flash Free Space = 50987008

And then do a "reload" command and the switch should reboot with the new code in the primary image location.
« Last Edit: October 03, 2013, 04:08:00 PM by Telair »