The post describes the process of how to upgrade the IOS / Software on a Cisco 4500X switch.
I will not be covering how to do a hitless upgrade using ISSU with 2 switches in a VSS pair. This process is performed on two switches which are not in production. So to perform the upgrade I have disconnected the VSS link and will upgrade each switch in turn and will then connect the VSS link again.
First copy your image file into the bootflash: of the switch, this can be done via TFTP or USB.
USB is the much easier solution, for this to work you need a compatible USB stick, I have always used a Kingston brand and have never had any problems.
This is the exact USB stick I use for upgrading IOS on Cisco Switches
Insert the USB stick into the slot on the front of the Cisco 4500X switch as shown above.
From the CLI issue the command dir usbb0: If you get (No such device) your USB is not supported
4500X-SW-01#dir usb0: %Error opening usb0:/ (No such device)
If your USB is supported this is the output you will see
Directory of usb0:/
176 -rwx 173555452 Mar 23 2015 18:59:44 +00:00 cat4500e-universalk9.SPA.03.05.03.E.152-1.E3.bin
You now need to copy this image from the USB to the bootflash: using the following command
copy usb0:cat4500e-universalk9.SPA.03.05.03.E.152-1.E3.bin bootflash:
This will copy the image onto the bootflash of the switch.
You now need to tell the switch to boot this image.
There are 2 options to do this - Option 1 Rename old IOS
By default the config-register of the switches will be set to 0x2101 when the appliance is shipped out.
The last octet of “1” basically tells the appliance to IGNORE the boot variable string and boot the first valid IOS
(from top to bottom) found in the bootflash.
So you can either delete the old image or rename it. I prefer to rename it.
rename bootflash:OLD_IOS_filename.bin bootflash:OLD_IOS_filename.bin
If you now reload the switch it will boot the newer image.
Option 2 - change boot variable and config-register
The second option is to create a new boot variable
In global config enter the command.
boot system flash bootflash:cat4500e-universalk9.SPA.03.05.03.E.152-1.E3.bin (or your new image name)
Just this will not do anything as with the config register set to 0X2101 it will ignore the boot variable set.
If you change the config-register to 0X2102 the switch will then reference the boot variable.
In global config
Save the config and reload the switch.
You may need to delete any other boot variable settings
Check this with sh ver | inc boot
If there is a second one referencing the old image delete it.
Repeat this operation on the second switch and when both have booted using the new image connect up the VSS link.