The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
This document describes the methods for upgrading Catalyst 9500 switches.
There are no specific requirements for this document.
The information in this document is based on C9500.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
This document covers new and old upgrade procedures for Catalyst 9500 switches that use either BUNDLE or INSTALL modes. ISSU upgrade method is supported on Catalyst 9500 switches.
For the recommended software versions based on the downloads page, please consult the following link:
Recommended Releases for Catalyst 9000 Switches
To download the software, please visithttps://software.cisco.com/download/homeand select your product.
• A maintenance window of 2-3 hours should be sufficient for upgrading to the target version or rolling back to the previous version if any issues arise.
• Ensure you have a 4GB or 8GB USB drive with the .bin files of both the current and target IOS versions. The USB drive should be formatted in FAT32 to copy the IOS image.
• Verify that TFTP is set up with both the current and target IOS versions and is reachable to download these versions to the switch if needed.
• Confirm that console access to the device is available in case any issues occur.
• Ensure there is at least 1GB to 1.5GB of available space in the flash memory for the expansion of the new image. If there is insufficient space, remove old installation files.
For Fuji 16.9.x, When you upgrade from the existing release on your switch to a later or newer release for the first time, the boot loader may be automatically upgraded, based on the hardware version of the switch. If the bootloader is automatically upgraded, it will take effect on the next reload. If you go back to the older release after this, the boot loader is not downgraded. The updated boot loader supports all previous releases. For subsequent Cisco IOS XE Everest 16. x.x, or Cisco IOS XE Fuji 16. x.x releases, if there is a new bootloader in that release, it may be automatically upgraded based on the hardware version of the switch when you boot up your switch with the new image for the first time.
For 16.12.x, the ROM monitor (ROMMON), also known as the boot loader is firmware that runs when the device is powered up or reset. It initializes the processor hardware and boots the operating system software (Cisco IOS XE software image). The ROMMON is stored on the following Serial Peripheral Interface (SPI) flash devices in your switch:
Primary: The ROMMON stored here is the one the system boots every time the device is powered on or reset.
Golden: The ROMMON stored here is a backup copy. If the one in the primary is corrupted, the system automatically boots the ROMMON in the golden SPI flash device.
ROMMON upgrades may be required to resolve firmware defects or to support new features, but there may not be new versions with every release. To know the ROMMON or bootloader version that applies to every major and maintenance release, refer to the corresponding subsections and tables below.
ROMMON Upgrades for C9500-12Q, C9500-16X, C9500-24Q, C9500-40X
ROMMON Upgrades for C9500-24Y4C, C9500-32C, C9500-32QC, and C9500-48Y4C
For 17.x.x, to know the ROMMON or bootloader version that applies to every major and maintenance release, see ROMMON Versions.
You can upgrade the ROMMON before, or, after upgrading the software version. If a new ROMMON version is available for the software version you are upgrading to, proceed as follows:
Upgrading the ROMMON in the primary SPI flash device
This ROMMON is upgraded automatically. When you upgrade from an existing release on your switch to a later or newer release for the first time, and there is a new ROMMON version in the new release, the system automatically upgrades the ROMMON in the primary SPI flash device, based on the hardware version of the switch.
Upgrading the ROMMON in the golden SPI flash device
You must manually upgrade this ROMMON.The manual upgrade applies to all models in the series.Enter theupgrade rom-monitor capsule golden switchcommand in privileged EXEC mode.
After the ROMMON is upgraded, it will take effect on the next reload. If you go back to an older release after this, the ROMMON is not downgraded. The updated ROMMON supports all previous releases.
Note: In case of a Cisco StackWise Virtual setup, upgrade the active and standby switch.
This document covers new and old upgrade procedures for the Catalyst 9500 switch that uses either BUNDLE or INSTALL modes and ISSU.
An install mode upgrade on a Cisco Catalyst 9500 switch is a method of upgrading the switch's software that involves using individual software packages rather than a single monolithic image file.
On Cisco Catalyst 9500 Series Switches, When upgrading from Cisco IOS XE Everest 16.5.1a or Cisco IOS XE Everest 16.6.1 to any newer version in INSTALL mode, the "request platform software" commands are utilized.
Please follow the outlined steps for an upgrade in Install mode.
1. Cleanup
Remove any inactive installations with the command:
Switch#request platform software package clean switch all
2. Copying the New Image
Transfer the new .bin image file to the active switch's flash storage using one of the following methods:
Via TFTP:
Switch#copy tftp://Location/directory/<file_name>.bin flash:
Via USB:
Switch#copy usbflash0:<file_name>.bin flash:
Confirm the available file systems with Switch#show file systems
3. Verification
After transferring the IOS to the active switch, check if the image is correctly copied with:
Switch#dir flash:
(Optional) To verify the MD5 checksum, use the command:
Switch#verify /md5 flash:<file_name>.bin
Ensure this checksum matches the one provided on the Software Download page.
4. Setting the Boot Variable
Set the boot variable to point to the packages.conf file with the following commands:
Switch#configure t
Switch(config)#no boot system
Switch(config)#boot system flash:packages.conf
Switch(config)#end
5. Autoboot Configuration
Configure the switch to autoboot by executing:
Switch#configure t
Switch(config)#no boot manual
Switch(config)#end
6. Saving Configuration
Save your current configuration with:
Switch#write memory
Confirm the boot settings with the command:
Switch#show boot system
7. Installation of the Image
To install the image, use the command:
Switch#request platform software package install switch all file flash:<file_name>.bin auto-copy
The system will auto-reload.
8. Verification of the successful upgrade
Switch#show version
Switch#show redundancy
Note: Replace with the actual name of your IOS image file throughout the steps.
On Cisco Catalyst 9500 Series Switches and Catalyst 9500 Series Switches - High-Performance series switches, When upgrading from Cisco IOS XE Everest 16.6.2 and all later releases to any newer version in INSTALL mode, the "install" commands are utilized.
Please follow the outlined steps for an upgrade in Install mode.
1. Cleanup
• Remove any inactive installations with the command:
Switch#install remove inactive
2. Copying the New Image
• Transfer the new .bin image file to the active switch's flash storage using one of the following methods:
• Via TFTP:
Switch#copy tftp://Location/directory/<file_name>.bin flash:
• Via USB:
Switch#copy usbflash0:<file_name>.bin flash:
• Confirm the available file systems with:Switch#show file systems
3. Verification
After transferring the IOS to the active switch, check if the image is correctly copied with:
Switch#dir flash:
(Optional) To verify the MD5 checksum, use the command:
Switch#verify /md5 flash:<file_name>.bin
Ensure this checksum matches the one provided on the Software Download page.
4. Setting the Boot Variable
Set the boot variable to point to the packages.conf file with the following commands:
Switch#configure t
Switch(config)#no boot system
Switch(config)#boot system flash:packages.conf
Switch(config)#end
5. Autoboot Configuration
Configure the switch to autoboot by executing:
Switch#configure t
Switch(config)#no boot manual
Switch(config)#end
6. Saving Configuration:
Save your current configuration with:
Switch#write memory
Confirm the boot settings with the command:
Switch#show boot system
7. Installation of the Image:
To install the image, use the command:
Switch#install add file flash:<file_name>.bin activate commit
When prompted with "This operation requires a reload of the system. Do you want to proceed? [y/n]," respond with "y" to proceed.
8. Verification of the successful upgrade
Switch#show version
Switch#show redundancy
Note: Replace with the actual name of your IOS image file throughout the steps.
A bundle mode upgrade on a Cisco Catalyst 9500 switch refers to a method of upgrading the switch's software where the entire software image is bundled into a single file. This file includes all the necessary components such as the operating system, device drivers, and other essential software required for the switch to operate. The upgrade involves a single software image file, typically with a .bin extension. This contrasts with other methods, such as install mode, which may involve multiple files and packages.
For C9500 we can upgrade directly from 16.x.x to 17.x.x train or within 17.x.x train in INSTALL mode. Please refer to release note of target IOS which is found externally for more understanding.
While upgrading in BUNDLE mode from 16.x.x to 17.x.x it is recommended to go for an intermediate IOS version because of bug CSCwh54386 : Bug Search Tool (cisco.com)
For example, 16.8.x (older) -> 17.3.x (middle one) -> 17.9.X (newer)
Please follow the outlined steps for an upgrade in Bundle mode:
1. Transfer the new image (.bin file) to the flash memory of each stack member in the standalone switch or stack using one of these methods
Via TFTP:
Switch#copy tftp://location/directory/<file_name> flash:
Via USB:
Switch#copy usbflash0:<file_name>.bin flash:
2. Confirm the available file systems by using the command
Switch#show file systems
3. After copying the IOS to all member switches, verify that the image has been correctly copied with
Switch#dir flash:
4. (Optional) Verify the MD5 checksum with the command
Switch#verify /md5 flash:<file_name>.bin
Ensure that the output matches the MD5 checksum value provided on the Software Download page.
5. Configure the boot variable to point to the new image file with these commands
Switch#configure t
Switch(config)#no boot system
Switch(config)#boot system flash:<file_name>.bin
Switch(config)#end
6. Save the configuration
Switch#write memory
7. Verify the boot settings using
Switch#show boot system
8. Reload the switch to apply the new IOS
Switch#reload
9. Verification of the successful upgrade
Switch#show version
Switch#show redundancy
Note: Replace with the actual name of your IOS image file throughout the steps.
In-Service Software Upgrade is a process that upgrades an image to another image on a device while the network continues to forward packets. ISSU helps network administrators avoid a network outage when they perform a software upgrade. The images are upgraded in install mode, wherein, each package is upgraded individually.
For Catalyst 9500 with StackWise Virtual, ISSU support starts from Cisco IOS XE Fuji 16.9.2.
For Catalyst 9500 High Performance, ISSU support starts from Cisco IOS XE Gibraltar 16.12.1c.
For Catalyst 9500X with StackWise Virtual, ISSU support starts from Cisco IOS XE Cupertino 17.12.1.
Please ensure the current SW version and Target SW version is suitable for ISSU upgrade using the link below:
To verify if the switch is a C9500 series switch or a C9500 high performance series switch, please look into Table 30 of below document:
Cisco Catalyst 9500 Series Switches Datasheet
Note: For ISSU upgrade from 17.3.1, 17.3.2, 17.3.3, or 17.3.4 to 17.6.x in standalone chassis with quad supervisor or high availability setup, you must perform an ISSU upgrade to 17.3.5 and then perform ISSU upgrade to the final target release version. ISSU upgrade to 17.9.1 might fail. See CSCwc54402 for more details. ISSU upgrade from 17.6.4 to 17.9.3 might fail. See CSCwc54402 for more details.
1. Check Current Code Version
C9500#show version | include IOS XE
2. Check the Boot Mode
ISSU is supported only if both the switches in Stackwise Virtual are booted in Install mode.
C9500#show version | include INSTALL
3. Check if There is Sufficient Available Memory on Flash
C9500#dir flash: | include free
11353194496 bytes total (8565174272 bytes free)
C9500#dir stby-flash: | include free
11353980928 bytes total (8566865920 bytes free)
4. Check if Switches are in SSO Mode
C9500#show redundancy
Redundant System Information :
------------------------------
Available system uptime = 4 minutes
Switchovers system experienced = 0
Standby failures = 0
Last switchover reason = none
Hardware Mode = Duplex
Configured Redundancy Mode = sso
Operating Redundancy Mode = sso
Maintenance Mode = Disabled
Communications = Up
Current Processor Information :
-------------------------------
Active Location = slot 1
Current Software state = ACTIVE <-------
Uptime in current state = 30 minutes
Image Version = Cisco IOS Software [Fuji], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 16.9.2, RELEASE SOFTWARE (fc4)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2018 by Cisco Systems, Inc.
Compiled Mon 05-Nov-18 19:32 by mcpre
BOOT = flash:packages.conf;
CONFIG_FILE =
Configuration register = 0x102
Peer Processor Information :
----------------------------
Standby Location = slot 2
Current Software state = STANDBY HOT <-------
Uptime in current state = 26 minutes
Image Version = Cisco IOS Software [Fuji], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 16.9.2, RELEASE SOFTWARE (fc4)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2018 by Cisco Systems, Inc.
Compiled Mon 05-Nov-18 19:32 by mcpre
BOOT = flash:packages.conf;
CONFIG_FILE =
Configuration register = 0x102
5. Check if Auto-Boot is Enabled
C9500#show boot system
---------------------------
Switch 1
---------------------------
Current Boot Variables:
BOOT variable = flash:packages.conf;
Boot Variables on next reload:
BOOT variable = flash:packages.conf;
Manual Boot = no <------- Manual Boot should be set to "no"
Enable Break = no
Boot Mode = DEVICE
iPXE Timeout = 0
---------------------------
Switch 2
---------------------------
Current Boot Variables:
BOOT variable = flash:packages.conf;
Boot Variables on next reload:
BOOT variable = flash:packages.conf;
Manual Boot = no
Enable Break = no
Boot Mode = DEVICE
iPXE Timeout = 0
If Auto-Boot is not enabled, this can be changed as shown:
C9500(config)#no boot manual
6. Check the Current ISSU and Install States
C9500#show issu state detail
--- Starting local lock acquisition on switch 1 ---
Finished local lock acquisition on switch 1
No ISSU operation is in progress <------- If see anything else, abort ISSU before proceeding.
Check on how to manually abort ISSU.
C9500#show install summary
[ Switch 1 2 ] Installed Package(s) Information:
State (St): I - Inactive, U - Activated & Uncommitted,
C - Activated & Committed, D - Deactivated & Uncommitted
--------------------------------------------------------------------------------
Type St Filename/Version
--------------------------------------------------------------------------------
IMG C 16.9.2.0.2433 <------- State should be Activated & Committed for current version alone.
If not clear install state before proceeding. Check on how to clear install state.
--------------------------------------------------------------------------------
Auto abort timer: inactive
--------------------------------------------------------------------------------
Please follow the outlined steps to perform an In-Service Software Upgrade (ISSU) upgrade.
1. Cleanup
Remove any inactive installations with the command:
Switch#install remove inactive
2. Copying the New Image
Transfer the new .bin image file to the active supervisor's flash storage using one of the following methods:
Via TFTP:
Switch#copy tftp://Location/directory/<file_name>.bin flash:
Via USB:
Switch#copy usbflash0:<file_name>.bin flash:
Confirm the available file systems with: Switch#show file systems
3. Verification
After transferring the IOS to the active supervisor's flash, check if the image is correctly copied with:
Switch#dir flash:
(Optional) To verify the MD5 checksum, use the command:
Switch#verify /md5 flash:<file_name>.bin
Ensure this checksum matches the one provided on the Software Download page.
4. Setting the Boot Variable
Set the boot variable to point to the packages.conf file with the following commands:
Switch#configure t
Switch(config)#no boot system
Switch(config)#boot system flash:packages.conf
Switch(config)#end
5. Autoboot Configuration
Configure the switch to autoboot by executing:
Switch#configure t
Switch(config)#no boot manual
Switch(config)#end
6. Saving Configuration
Save your current configuration with:
Switch#write memory
Confirm the boot settings with the command:
Switch#show boot system
7. Installation of the Image
To install the image, use the command:
Switch#install add file flash:<file_name>.bin activate issu commit
8. Verification of the successful upgrade
Switch#show version
Switch#show redundancy
Once you run the command noted here, the process starts and reloads sup automatically. Do not run the command until you are ready for sups to start to reboot. Unlike the normal upgrade process, it does not ask for confirmation from you before the reload happens.
Once you run this command, the ISSU process extracts the files, reloads the standby sup, waits for it to get back to SSO then failover reloads the active.
Note: Replace with the actual name of your IOS image file throughout the steps.
Once ISSU is successfully completed,
In the 3-Step Work Flow, during the activate ISSU process, the system can auto-abort to older image if the abort-timer expires. Manual abort is required if the standby does not reach SSO during abort. Also, if for any reason you wish to abort the ISSU in between, manual abort is required.
C9500#install abort issu
If ISSU upgrade/downgrade/abort/auto-abort is not successful, manual clean up of ISSU internal states is required.
Enable service internal before running the following command:
C9500#configure t
C9500(config)#service internal
C9500(config)#end
C9500#clear install state
clear_install_state: START Tue Nov 13 17:05:47 UTC 2018
--- Starting clear_install_state ---
Performing clear_install_state on all members
[1] clear_install_state package(s) on chassis 1
[1] Finished clear_install_state on chassis 1
Checking status of clear_install_state on [1]
clear_install_state: Passed on [1]
Finished clear_install_state
C9500#sh issu state detail
--- Starting local lock acquisition on chassis 1 ---
Finished local lock acquisition on chassis 1
No ISSU operation is in progress
Revision | Publish Date | Comments |
---|---|---|
1.0 |
06-Aug-2024 |
Initial Release |