Upgrading the Switch Software

Finding the Software Version

The package files for the Cisco IOS XE software are stored on the system board flash device (flash:).

You can use the show version privileged EXEC command to see the software version that is running on your switch.


Note


Although the show version output always shows the software image running on the switch, the model name shown at the end of this display is the factory configuration and does not change if you upgrade the software license.

You can also use the dir filesystem: privileged EXEC command to see the directory names of other software images that you might have stored in flash memory.

Software Images

Release

Image Type

File Name

Cisco IOS XE Dublin 17.12.4

CAT9K_IOSXE

cat9k_iosxe.17.12.04.SPA.bin

No Payload Encryption (NPE)

cat9k_iosxe_npe.17.12.04.SPA.bin

Cisco IOS XE Dublin 17.12.3

CAT9K_IOSXE

cat9k_iosxe.17.12.03.SPA.bin

No Payload Encryption (NPE)

cat9k_iosxe_npe.17.12.03.SPA.bin

Cisco IOS XE Dublin 17.12.2

CAT9K_IOSXE

cat9k_iosxe.17.12.02.SPA.bin

No Payload Encryption (NPE)

cat9k_iosxe_npe.17.12.02.SPA.bin

Cisco IOS XE Dublin 17.12.1

CAT9K_IOSXE

cat9k_iosxe.17.12.01.SPA.bin

No Payload Encryption (NPE)

cat9k_iosxe_npe.17.12.01.SPA.bin

Upgrading the ROMMON

To know the ROMMON or bootloader version that applies to every major and maintenance release, see ROMMON and CPLD 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. Enter the upgrade rom-monitor capsule golden switch command in privileged EXEC mode.


    Note


    • Golden ROMMON upgrade is only applicable to Cisco IOS XE Amsterdam 17.3.5 and later releases.

    • Golden ROMMON upgrade will fail if the FPGA version is 17101705 or older. To upgrade the FPGA version, see Upgrading the Complex Programmable Logic Device Version.

    • In case of a Cisco StackWise Virtual setup, upgrade the active and standby supervisor modules.

    • In case of a High Availability set up, upgrade the active and standby supervisor modules.


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.

Software Installation Commands

Summary of Software Installation Commands

To install and activate the specified file, and to commit changes to be persistent across reloads:

install add file filename [ activate commit]

To separately install, activate, commit, cancel, or remove the installation file: install ?

add file tftp: filename

Copies the install file package from a remote location to the device and performs a compatibility check for the platform and image versions.

activate [ auto-abort-timer]

Activates the file, and reloads the device. The auto-abort-timer keyword automatically rolls back image activation.

commit

Makes changes persistent over reloads.

rollback to committed

Rolls back the update to the last committed version.

abort

Cancels file activation, and rolls back to the version that was running before the current installation procedure started.

remove

Deletes all unused and inactive software installation files.

Upgrading in Install Mode

Follow these instructions to upgrade from one release to another, in install mode. To perform a software image upgrade, you must be booted into IOS via boot flash:packages.conf .

Before you begin


Caution


You must comply with these cautionary guidelines during an upgrade:

  • Do not power cycle the switch.

  • Do not disconnect power or remove the supervisor module.

  • Do not perform an online insertion and replacement (OIR) of either supervisor (in a High Availability setup), if one of the supervisor modules in the chassis is in the process of a bootloader upgrade or when the switch is booting up.

  • Do not perform an OIR of a switching module (linecard) when the switch is booting up.



Note


Disconnecting and reconnecting power to a Cisco Catalyst 9400 Series Supervisor 1 Module within a 5-second window, can corrupt the boot SPI.


Note that you can use this procedure for the following upgrade scenarios.

When upgrading from ...

Permitted Supervisor Setup

(Applies to the release you are upgrading from)

First upgrade to...

To upgrade to ...

Cisco IOS XE Everest 16.6.11

Upgrade a single supervisor, and complete the boot loader and CPLD upgrade. After completing the first supervisor upgrade, remove and swap in the second supervisor. After both supervisors are upgraded, they can be inserted and booted in a high availability setup.

Note

 
Do not simultaneously upgrade dual supervisors from Cisco IOS XE Everest 16.6.1 to a later release. Doing so may cause hardware damage.

Cisco IOS XE Everest 16.6.3

Follow the upgrade steps as in the Release Notes for Cisco Catalyst 9400 Series Switches, Cisco IOS XE Everest 16.6.x → Upgrading the Switch Software → Upgrading in Install Mode

Cisco IOS XE Dublin 17.12.x

Cisco IOS XE Everest 16.6.2 and later releases

This procedure automatically copies the images to both active and standby supervisor modules. Both supervisor modules are simultaneously upgraded.

Not applicable

1

When upgrading from Cisco IOS XE Everest 16.6.1 to a later release, the upgrade may take a long time, and the system will reset three times due to rommon and complex programmable logic device (CPLD) upgrade. Stateful switchover is supported from Cisco IOS XE Everest 16.6.2

The sample output in this section displays upgrade from Cisco IOS XE Dublin 17.11.1 to Cisco IOS XE Dublin 17.12.1 using install commands.

Procedure


Step 1

Clean-up

install remove inactive

Use this command to clean-up old installation files in case of insufficient space and to ensure that you have at least 1GB of space in flash, to expand a new image.

The following sample output displays the cleaning up of unused files, by using the install remove inactive command:
Switch# install remove inactive
install_remove: START Mon Jul 24 14:14:40 UTC 2023
Cleaning up unnecessary package files
No path specified, will use booted path flash:packages.conf
Cleaning flash:
Scanning boot directory for packages ... done.
Preparing packages list to delete ...
cat9k-cc_srdriver.17.11.01.SPA.pkg
File is in use, will not delete.
cat9k-espbase.17.11.01.SPA.pkg
File is in use, will not delete.
cat9k-rpbase.17.11.01.SPA.pkg
File is in use, will not delete.
cat9k-rpboot.17.11.01.SPA.pkg
File is in use, will not delete.
cat9k-sipbase.17.11.01.SPA.pkg
File is in use, will not delete.
cat9k-sipspa.17.11.01.SPA.pkg
File is in use, will not delete.
cat9k-srdriver.17.11.01.SPA.pkg
File is in use, will not delete.
cat9k-webui.17.11.01.SPA.pkg
File is in use, will not delete.
packages.conf
File is in use, will not delete.
done.
 
The following files will be deleted:
[R0]:
/flash/cat9k-cc_srdriver.17.11.01.SPA.pkg
/flash/cat9k-espbase.17.11.01.SPA.pkg
/flash/cat9k-guestshell.17.11.01.SPA.pkg
/flash/cat9k-rpbase.17.11.01.SPA.pkg
/flash/cat9k-rpboot.17.11.01.SPA.pkg
/flash/cat9k-sipbase.17.11.01.SPA.pkg
/flash/cat9k-sipspa.17.11.01.SPA.pkg
/flash/cat9k-srdriver.17.11.01.SPA.pkg
/flash/cat9k-webui.17.11.01.SPA.pkg
/flash/cat9k-wlc.17.11.01.SPA.pkg
/flash/packages.conf
/flash/cat9k_iosxe.17.11.01.SPA.bin
 
Do you want to remove the above files? [y/n]y
[R0]:
Deleting file flash:cat9k-cc_srdriver.17.11.01.SPA.pkg ... done.
Deleting file flash:cat9k-espbase.17.11.01.SPA.pkg ... done.
Deleting file flash:cat9k-guestshell.17.11.01.SPA.pkg ... done.
Deleting file flash:cat9k-rpbase.17.11.01.SPA.pkg ... done.
Deleting file flash:cat9k-rpboot.17.11.01.SPA.pkg ... done.
Deleting file flash:cat9k-sipbase.17.11.01.SPA.pkg ... done.
Deleting file flash:cat9k-sipspa.17.11.01.SPA.pkg ... done.
Deleting file flash:cat9k-srdriver.17.11.01.SPA.pkg ... done.
Deleting file flash:cat9k-webui.17.11.01.SPA.pkg ... done.
Deleting file flash:cat9k-wlc.17.11.01.SPA.pkg ... done.
Deleting file flash:packages.conf ... done.
SUCCESS: Files deleted.
SUCCESS: Files deleted.
--- Starting Post_Remove_Cleanup ---
Performing Post_Remove_Cleanup on Active/Standby
[R0] Post_Remove_Cleanup package(s) on R0
[R0] Finished Post_Remove_Cleanup on R0
Checking status of Post_Remove_Cleanup on [R0]
Post_Remove_Cleanup: Passed on [R0]
Finished Post_Remove_Cleanup
 
SUCCESS: install_remove Mon Jul 24 14:16:29 UTC 2023
Switch#

Step 2

Copy new image to flash

  1. copy tftp:[[//location]/directory]/filename flash:

    Use this command to copy the new image from a TFTP server to flash memory. The location is either an IP address or a host name. The filename is specified relative to the directory used for file transfers. Skip this step if you want to use the new image from a TFTP server.
    Switch# copy tftp://10.8.0.6/image/cat9k_iosxe.17.12.01.SPA.bin flash:
    destination filename [cat9k_iosxe.17.12.01.SPA.bin]?
    Accessing tftp://10.8.0.6/image/cat9k_iosxe.17.12.01.SPA.bin...
    Loading /cat9k_iosxe.17.12.01.SPA.bin from 10.8.0.6 (via GigabitEthernet0/0): 
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    [OK - 601216545 bytes]
     
    601216545 bytes copied in 50.649 secs (11870255 bytes/sec)
     
    
  2. dir flash:

    Use this command to confirm that the image has been successfully copied to flash.
    Switch# dir flash:*.bin
    Directory of flash:/*.bin
     
    Directory of flash:/
     
    434184 -rw- 601216545    Jul 24 2023 10:18:11 -07:00 cat9k_iosxe.17.12.01.SPA.bin
    11353194496 bytes total (8976625664 bytes free)
    
    

Step 3

Set boot variable

  1. boot system flash:packages.conf

    Use this command to set the boot variable to flash:packages.conf .
    Switch(config)# boot system flash:packages.conf
    
  2. no boot manual

    Use this command to configure the switch to auto-boot. Settings are synchronized with the standby switch, if applicable.
    Switch(config)# no boot manual
    Switch(config)# exit
  3. write memory

    Use this command to save boot settings.
    Switch# write memory
  4. show bootvar

    Use this command to verify the boot variable (packages.conf) and manual boot setting (no):
    Switch# show bootvar
    BOOT variable = bootflash:packages.conf
    MANUAL_BOOT variable = no
    BAUD variable = 9600
    ENABLE_BREAK variable = yes
    BOOTMODE variable does not exist
    IPXE_TIMEOUT variable does not exist
    CONFIG_FILE variable = 
    
    Standby BOOT variable = bootflash:packages.conf
    Standby MANUAL_BOOT variable = no
    Standby BAUD variable = 9600
    Standby ENABLE_BREAK variable = yes
    Standby BOOTMODE variable does not exist
    Standby IPXE_TIMEOUT variable does not exist
    Standby CONFIG_FILE variable = 

Step 4

Install image to flash

install add file activate commit

Use this command to install the image.

The following sample output displays installation of the Cisco IOS XE Dublin 17.12.1 software image in the flash memory:
Switch# install add file flash:cat9k_iosxe.17.12.01.SPA.bin
 activate commit

install_add_activate_commit: START Mon Jul 24 22:49:41 UTC 2023
 
*Jul 24 22:49:42.772: %IOSXE-5-PLATFORM: Switch 1 R0/0: Jul 24 22:49:42 install_engine.sh:
 %INSTALL-5-INSTALL_START_INFO: Started install one-shot flash:cat9k_iosxe.17.12.01.SPA.bin

install_add_activate_commit: Adding PACKAGE
 
--- Starting initial file syncing ---
Info: Finished copying flash:cat9k_iosxe.17.12.01.SPA.bin
 to the selected switch(es)
Finished initial file syncing
 
--- Starting Add ---
Performing Add on all members
[1] Add package(s) on switch 1
[1] Finished Add on switch 1
Checking status of Add on [1]
Add: Passed on [1]
Finished Add
 
install_add_activate_commit: Activating PACKAGE
 
/flash/cat9k-webui.17.12.01.SPA.pkg
/flash/cat9k-srdriver.17.12.01.SPA.pkg
/flash/cat9k-sipspa.17.12.01.SPA.pkg
/flash/cat9k-sipbase.17.12.01.SPA.pkg
/flash/cat9k-rpboot.17.12.01.SPA.pkg
/flash/cat9k-rpbase.17.12.01.SPA.pkg
/flash/cat9k-guestshell.17.12.01.SPA.pkg
/flash/cat9k-espbase.17.12.01.SPA.pkg
/flash/cat9k-cc_srdriver.17.12.01.SPA.pkg

This operation requires a reload of the system. Do you want to proceed? [y/n]y

--- Starting Activate ---
Performing Activate on all members
[1] Activate package(s) on switch 1
[1] Finished Activate on switch 1
Checking status of Activate on [1]
Activate: Passed on [1]
Finished Activate
 
--- Starting Commit ---
Performing Commit on all members
[1] Commit package(s) on switch 1
[1] Finished Commit on switch 1
Checking status of Commit on [1]
Commit: Passed on [1]
Finished Commit
 
Install will reload the system now!
 
Chassis 1 reloading, reason - Reload command
SUCCESS: install_add_activate_commit
/flash/cat9k-webui.17.12.01.SPA.pkg
/flash/cat9k-srdriver.17.12.01.SPA.pkg
/flash/cat9k-sipspa.17.12.01.SPA.pkg
/flash/cat9k-sipbase.17.12.01.SPA.pkg
/flash/cat9k-rpboot.17.12.01.SPA.pkg
/flash/cat9k-rpbase.17.12.01.SPA.pkg
/flash/cat9k-guestshell.17.12.01.SPA.pkg
/flash/cat9k-espbase.17.12.01.SPA.pkg
/flash/cat9k-cc_srdriver.17.12.01.SPA.pkg
Jul 24 11 22:53:58 UTC 2023
Switch#

Note

 
Old files listed in the logs will not be removed from flash.

Step 5

Verify installation

After the software has been successfully installed, check that the ten new .pkg files and two .conf are in the flash partition, and also check the version installed on the switch.

  1. dir flash:*.pkg

    The following is sample output of the dir flash:*.pkg command:
    Switch# dir flash:*.pkg
    Directory of flash:/*.pkg
    Directory of flash:/
    475140 -rw- 2012104     Mar 9 2023 09:52:41 -07:00 cat9k-cc_srdriver.17.11.01.SPA.pkg
    475141 -rw- 70333380    Mar 9 2023 09:52:44 -07:00 cat9k-espbase.17.11.01.SPA.pkg
    475142 -rw- 13256       Mar 9 2023 09:52:44 -07:00 cat9k-guestshell.17.11.01.SPA.pkg
    475143 -rw- 349635524   Mar 9 2023 09:52:54 -07:00 cat9k-rpbase.17.11.01.SPA.pkg
    475149 -rw- 24248187    Mar 9 2023 09:53:02 -07:00 cat9k-rpboot.17.11.01.SPA.pkg
    475144 -rw- 25285572    Mar 9 2023 09:52:55 -07:00 cat9k-sipbase.17.11.01.SPA.pkg
    475145 -rw- 20947908    Mar 9 2023 09:52:55 -07:00 cat9k-sipspa.17.11.01.SPA.pkg
    475146 -rw- 2962372     Mar 9 2023 09:52:56 -07:00 cat9k-srdriver.17.11.01.SPA.pkg
    475147 -rw- 13284288    Mar 9 2023 09:52:56 -07:00 cat9k-webui.17.11.01.SPA.pkg
    475148 -rw- 13248       Mar 9 2023 09:52:56 -07:00 cat9k-wlc.17.11.01.SPA.pkg
    
    491524 -rw- 25711568    Jul 24 2023 11:49:33 -07:00  cat9k-cc_srdriver.17.12.01.SPA.pkg
    491525 -rw- 78484428    Jul 24 2023 11:49:35 -07:00  cat9k-espbase.17.12.01.SPA.pkg
    491526 -rw- 1598412     Jul 24 2023 11:49:35 -07:00  cat9k-guestshell.17.12.01.SPA.pkg
    491527 -rw- 404153288   Jul 24 2023 11:49:47 -07:00  cat9k-rpbase.17.12.01.SPA.pkg
    491533 -rw- 31657374    Jul 24 2023 11:50:09 -07:00  cat9k-rpboot.17.12.01.SPA.pkg
    491528 -rw- 27681740    Jul 24 2023 11:49:48 -07:00  cat9k-sipbase.17.12.01.SPA.pkg
    491529 -rw- 52224968    Jul 24 2023 11:49:49 -07:00  cat9k-sipspa.17.12.01.SPA.pkg
    491530 -rw- 31130572    Jul 24 2023 11:49:50 -07:00  cat9k-srdriver.17.12.01.SPA.pkg
    491531 -rw- 14783432    Jul 24 2023 11:49:51 -07:00  cat9k-webui.17.12.01.SPA.pkg
    491532 -rw- 9160        Jul 24 2023 11:49:51 -07:00  cat9k-wlc.17.12.01.SPA.pkg
    11353194496 bytes total (8963174400 bytes free)
    
    
  2. dir flash:*.conf

    The following is sample output of the dir flash:*.conf command. It displays the .conf files in the flash partition; note the two .conf files:
    Switch# dir flash:*.conf
     
    Directory of flash:/*.conf
    Directory of flash:/
    
    16631  -rw- 4882 Jul 24 2023 05:39:42 +00:00  packages.conf
    16634  -rw- 4882 Jul 24 2023 05:34:06 +00:00  cat9k_iosxe.17.12.01.SPA.conf
    
    
    • packages.conf—the file that has been re-written with the newly installed .pkg files

    • cat9k_iosxe.17.12.01.SPA.conf—a backup copy of the newly installed packages.conf file

  3. show install summary

    The following is sample output of the show install summary command:
    Switch# show install summary
    
    [ R0 ] Installed Package(s) Information:
    State (St): I - Inactive, U - Activated & Uncommitted,
    C - Activated & Committed, D - Deactivated & Uncommitted
    --------------------------------------------------------------------------------
    Type St Filename/Version
    --------------------------------------------------------------------------------
    IMG C 17.12.01.0.58
    
    --------------------------------------------------------------------------------
    Auto abort timer: inactive
    -------------------------------------------------------------------------------- 
  4. show version

    After the image boots up, use this command to verify the version of the new image.

    The following sample output of the show version command displays the Cisco IOS XE Dublin 17.12.1 image on the device:
    Switch# show version
    
    Cisco IOS XE Software, Version 17.12.01
    Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.12.1, RELEASE SOFTWARE (fc1)
    Technical Support: http://www.cisco.com/techsupport
    Copyright (c) 1986-2023 by Cisco Systems, Inc.
    <output truncated>

Downgrading in Install Mode

Follow these instructions to downgrade from one release to another, in install mode. To perform a software image downgrade, you must be booted into IOS via boot flash:packages.conf .

Before you begin

Note that you can use this procedure for the following downgrade scenarios:

When downgrading from ...

Permitted Supervisor Setup

(Applies to the release you are downgrading from)

To ...

Cisco IOS XE Dublin 17.12.x

This procedure automatically copies the images to both active and standby supervisor modules. Both supervisor modules are simultaneously downgraded.

Note

 

Do not perform an Online Removal and Replacement (OIR) of either supervisor module during the process.

Cisco IOS XE Dublin 17.11.x or earlier releases.


Note


New switch models that are introduced in a release cannot be downgraded. The release in which a module is introduced is the minimum software version for that model. We recommend upgrading all existing hardware to the same release as the latest hardware.

The sample output in this section shows downgrade from Cisco IOS XE Dublin 17.12.1 to Cisco IOS XE Dublin 17.11.1, using install commands.

Procedure


Step 1

Clean-up

install remove inactive

Use this command to clean-up old installation files in case of insufficient space and to ensure that you have at least 1GB of space in flash, to expand a new image.

The following sample output displays the cleaning up of unused files, by using the install remove inactive command:
Switch# install remove inactive
 install_remove: START Mon Jul 24 11:42:27 UTC 2023

Cleaning up unnecessary package files

No path specified, will use booted path bootflash:packages.conf

Cleaning bootflash:
  Scanning boot directory for packages ... done.
  Preparing packages list to delete ... 
    cat9k-cc_srdriver.17.12.01.SSA.pkg
      File is in use, will not delete.
    cat9k-espbase.17.12.01.SSA.pkg
      File is in use, will not delete.
    cat9k-guestshell.17.12.01.SSA.pkg
      File is in use, will not delete.
    cat9k-rpbase.17.12.01.SSA.pkg
      File is in use, will not delete.
    cat9k-rpboot.17.12.01.SSA.pkg
      File is in use, will not delete.
    cat9k-sipbase.17.12.01.SSA.pkg
      File is in use, will not delete.
    cat9k-sipspa.17.12.01.SSA.pkg
      File is in use, will not delete.
    cat9k-srdriver.17.12.01.SSA.pkg
      File is in use, will not delete.
    cat9k-webui.17.12.01.SSA.pkg
      File is in use, will not delete.
    cat9k-wlc.17.12.01.SSA.pkg
      File is in use, will not delete.
    packages.conf
      File is in use, will not delete.
  done.
SUCCESS: No extra package or provisioning files found on media. Nothing to clean.

SUCCESS: install_remove  Mon Jul 24 11:42:39 UTC 2023

--- Starting Post_Remove_Cleanup ---
Performing Post_Remove_Cleanup on all members
[1] Post_Remove_Cleanup package(s) on switch 1
[1] Finished Post_Remove_Cleanup on switch 1
Checking status of Post_Remove_Cleanup on [1]
Post_Remove_Cleanup: Passed on [1]
Finished Post_Remove_Cleanup
 
SUCCESS: install_remove Mon Jul 24 19:52:25 UTC 2023
Switch#

Step 2

Copy new image to flash

  1. copy tftp:[[//location]/directory]/filename flash:

    Use this command to copy the new image from a TFTP server to flash memory. The location is either an IP address or a host name. The filename is specified relative to the directory used for file transfers. Skip this step if you want to use the new image from a TFTP server.
    Switch# copy tftp://10.8.0.6/image/cat9k_iosxe.17.11.01.SPA.bin flash:
    Destination filename [cat9k_iosxe.17.11.01.SPA.bin]?
    Accessing tftp://10.8.0.6//cat9k_iosxe.17.11.01.SPA.bin...
    Loading /cat9k_iosxe.17.11.01.SPA.bin from 10.8.0.6 (via GigabitEthernet0/0): 
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    [OK - 508584771 bytes]
    508584771 bytes copied in 101.005 secs (5035244 bytes/sec)
     
    
  2. dir flash:

    Use this command to confirm that the image has been successfully copied to flash.
    Switch# dir flash:*.bin
    Directory of flash:/*.bin
     
    Directory of flash:/
     
    434184 -rw- 508584771 Jul 24 2023 13:35:16 -07:00 cat9k_iosxe.17.11.01.SPA.bin
    11353194496 bytes total (9055866880 bytes free)
    
    

Step 3

Set boot variable

  1. boot system flash:packages.conf

    Use this command to set the boot variable to flash:packages.conf .
    Switch(config)# boot system flash:packages.conf
    
  2. no boot manual

    Use this command to configure the switch to auto-boot. Settings are synchronized with the standby switch, if applicable.
    Switch(config)# no boot manual
    Switch(config)# exit
  3. write memory

    Use this command to save boot settings.
    Switch# write memory
  4. show bootvar

    Use this command to verify the boot variable (packages.conf) and manual boot setting (no):
    Switch# show bootvar
    BOOT variable = bootflash:packages.conf
    MANUAL_BOOT variable = no
    BAUD variable = 9600
    ENABLE_BREAK variable = yes
    BOOTMODE variable does not exist
    IPXE_TIMEOUT variable does not exist
    CONFIG_FILE variable = 
    
    Standby BOOT variable = bootflash:packages.conf
    Standby MANUAL_BOOT variable = no
    Standby BAUD variable = 9600
    Standby ENABLE_BREAK variable = yes
    Standby BOOTMODE variable does not exist
    Standby IPXE_TIMEOUT variable does not exist
    Standby CONFIG_FILE variable = 

Step 4

Downgrade software image

Use one of these options, to downgrade:

  • install add file activate commit
  • install rollback to committed
The following example displays the installation of the cat9k_iosxe.17.11.01.SPA.bin software image to flash, to downgrade the switch by using the install add file activate commit command. You can point to the source image on your tftp server or in flash if you have it copied to flash.
Switch# install add file flash:cat9k_iosxe.17.11.01.SPA.bin activate commit

install_add_activate_commit: START Mon Jul 24 22:49:41 UTC 2023

*Jul 24 22:49:42.772: %IOSXE-5-PLATFORM: Switch 1 R0/0: Jul 24 22:49:42 install_engine.sh:
%INSTALL-5-INSTALL_START_INFO: Started install one-shot flash:cat9k_iosxe.17.11.01.SPA.bininstall_add_activate_commit: Adding PACKAGE
 
--- Starting initial file syncing ---
Info: Finished copying flash:cat9k_iosxe.17.11.01.SPA.bin to the selected switch(es)
Finished initial file syncing
 
--- Starting Add ---
Performing Add on all members
[1] Add package(s) on switch 1
[1] Finished Add on switch 1
Checking status of Add on [1]
Add: Passed on [1]
Finished Add
 
install_add_activate_commit: Activating PACKAGE
 
/flash/cat9k-webui.17.11.01.SPA.pkg
/flash/cat9k-srdriver.17.11.01.SPA.pkg
/flash/cat9k-sipspa.17.11.01.SPA.pkg
/flash/cat9k-sipbase.17.11.01.SPA.pkg
/flash/cat9k-rpboot.17.11.01.SPA.pkg
/flash/cat9k-rpbase.17.11.01.SPA.pkg
/flash/cat9k-espbase.17.11.01.SPA.pkg
/flash/cat9k-cc_srdriver.17.11.01.SPA.pkg
 
This operation requires a reload of the system. Do you want to proceed? [y/n]y

--- Starting Activate ---
Performing Activate on all members
[1] Activate package(s) on switch 1
[1] Finished Activate on switch 1
Checking status of Activate on [1]
Activate: Passed on [1]
Finished Activate
 
--- Starting Commit ---
Performing Commit on all members
[1] Commit package(s) on switch 1
[1] Finished Commit on switch 1
Checking status of Commit on [1]
Commit: Passed on [1]
Finished Commit
 
Install will reload the system now!
 
Chassis 1 reloading, reason - Reload command
SUCCESS: install_add_activate_commit
/flash/cat9k-webui.17.11.01.SPA.pkg
/flash/cat9k-srdriver.17.11.01.SPA.pkg
/flash/cat9k-sipspa.17.11.01.SPA.pkg
/flash/cat9k-sipbase.17.11.01.SPA.pkg
/flash/cat9k-rpboot.17.11.01.SPA.pkg
/flash/cat9k-rpbase.17.11.01.SPA.pkg
/flash/cat9k-guestshell.17.11.01.SPA.pkg
/flash/cat9k-espbase.17.11.01.SPA.pkg
/flash/cat9k-cc_srdriver.17.11.01.SPA.pkg
Mon Jul 24 22:53:58 UTC 2023
Switch#
 

The following example displays sample output when downgrading the switch by using the install rollback to committed command.

Caution

 
Use the install rollback to committed command for downgrading, only if the version you want to downgrade to, is committed.
Switch# install rollback to committed

install_rollback: START Mon Jul 24 14:24:56 UTC 2023
 
This operation requires a reload of the system. Do you want to proceed? [y/n]
*Jul 24 14:24:57.555: %IOSXE-5-PLATFORM: R0/0: Jul 24 14:24:57 install_engine.sh: 
%INSTALL-5-INSTALL_START_INFO: Started install rollbacky
--- Starting Rollback ---
Performing Rollback on Active/Standby
 
WARNING: Found 55 disjoint TDL objects.
[R0] Rollback package(s) on R0
--- Starting rollback impact ---

Changes that are part of this rollback
Current : rp 0 0 rp_boot cat9k-rpboot.17.12.01.SPA.pkg
Current : rp 1 0 rp_boot cat9k-rpboot.17.12.01.SPA.pkg
Replacement: rp 0 0 rp_boot cat9k-rpboot.17.11.01.SPA.pkg
Replacement: rp 1 0 rp_boot cat9k-rpboot.17.11.01.SPA.pkg
Current : cc 0  0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 0  0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 0  0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : cc 1  0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 1  0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 1  0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : cc 10 0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 10 0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : cc 10 0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 2  0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 2  0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 2  0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : cc 3  0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 3  0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 3  0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : cc 4  0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 4  0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 4  0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : cc 5  0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 5  0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 5  0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : cc 6  0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 6  0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 6  0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : cc 7  0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 7  0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 7  0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : cc 8  0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 8  0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 8  0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : cc 9  0 cc_srdriver cat9k-cc_srdriver.17.12.01.SPA.pkg
Current : cc 9  0 cc cat9k-sipbase.17.12.01.SPA.pkg
Current : cc 9  0 cc_spa cat9k-sipspa.17.12.01.SPA.pkg
Current : fp 0  0 fp cat9k-espbase.17.12.01.SPA.pkg
Current : fp 1  0 fp cat9k-espbase.17.12.01.SPA.pkg
Current : rp 0  0 guestshell cat9k-guestshell.17.12.01.SPA.pkg
Current : rp 0  0 rp_base cat9k-rpbase.17.12.01.SPA.pkg
Current : rp 0  0 rp_daemons cat9k-rpbase.17.12.01.SPA.pkg
Current : rp 0  0 rp_iosd cat9k-rpbase.17.12.01.SPA.pkg
Current : rp 0  0 rp_security cat9k-rpbase.17.12.01.SPA.pkg
Current : rp 0  0 rp_webui cat9k-webui.17.12.01.SPA.pkg
Current : rp 0  0 rp_wlc cat9k-wlc.17.12.01.SPA.pkg
Current : rp 0  0 srdriver cat9k-srdriver.17.12.01.SPA.pkg
Current : rp 1  0 guestshell cat9k-guestshell.17.12.01.SPA.pkg
Current : rp 1  0 rp_base cat9k-rpbase.17.12.01.SPA.pkg
Current : rp 1  0 rp_daemons cat9k-rpbase.17.12.01.SPA.pkg
Current : rp 1  0 rp_iosd cat9k-rpbase.17.12.01.SPA.pkg
Current : rp 1  0 rp_security cat9k-rpbase.17.12.01.SPA.pkg
Current : rp 1  0 rp_webui cat9k-webui.17.12.01.SPA.pkg
Current : rp 1  0 rp_wlc cat9k-wlc.17.12.01.SPA.pkg
Current : rp 1  0 srdriver cat9k-srdriver.17.12.01.SPA.pkg
Replacement: cc 0  0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 0  0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 0  0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: cc 1  0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 1  0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 1  0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: cc 10 0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 10 0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: cc 10 0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 2  0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 2  0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 2  0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: cc 3  0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 3  0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 3  0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: cc 4  0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 4  0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 4  0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: cc 5  0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 5  0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 5  0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: cc 6  0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 6  0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 6  0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: cc 7  0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 7  0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 7  0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: cc 8  0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 8  0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 8  0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: cc 9  0 cc_srdriver cat9k-cc_srdriver.17.11.01.SPA.pkg
Replacement: cc 9  0 cc cat9k-sipbase.17.11.01.SPA.pkg
Replacement: cc 9  0 cc_spa cat9k-sipspa.17.11.01.SPA.pkg
Replacement: fp 0  0 fp cat9k-espbase.17.11.01.SPA.pkg
Replacement: fp 1  0 fp cat9k-espbase.17.11.01.SPA.pkg
Replacement: rp 0  0 guestshell cat9k-guestshell.17.11.01.SPA.pkg
Replacement: rp 0  0 rp_base cat9k-rpbase.17.11.01.SPA.pkg
Replacement: rp 0  0 rp_daemons cat9k-rpbase.17.11.01.SPA.pkg
Replacement: rp 0  0 rp_iosd cat9k-rpbase.17.11.01.SPA.pkg
Replacement: rp 0  0 rp_security cat9k-rpbase.17.11.01.SPA.pkg
Replacement: rp 0  0 rp_webui cat9k-webui.17.11.01.SPA.pkg
Replacement: rp 0  0 srdriver cat9k-srdriver.17.11.01.SPA.pkg
Replacement: rp 1  0 guestshell cat9k-guestshell.17.11.01.SPA.pkg
Replacement: rp 1  0 rp_base cat9k-rpbase.17.11.01.SPA.pkg
Replacement: rp 1  0 rp_daemons cat9k-rpbase.17.11.01.SPA.pkg
Replacement: rp 1  0 rp_iosd cat9k-rpbase.17.11.01.SPA.pkg
Replacement: rp 1  0 rp_security cat9k-rpbase.17.11.01.SPA.pkg
Replacement: rp 1  0 rp_webui cat9k-webui.17.11.01.SPA.pkg
Replacement: rp 1  0 srdriver cat9k-srdriver.17.11.01.SPA.pkg

Finished rollback impact
[R0] Finished Rollback on R0
Checking status of Rollback on [R0]
Rollback: Passed on [R0]
Finished Rollback
 
Install will reload the system now!
SUCCESS: install_rollback Mon Jul 24 14:26:35 UTC 2023
 
Switch#
*Jul 24 14:26:35.880: %IOSXE-5-PLATFORM: R0/0: Jul 24 14:26:35 install_engine.sh: %INSTALL-5-INSTALL_COMPLETED_INFO: Completed install rollback PACKAGE
*Jul 24 14:26:37.740: %IOSXE_OIR-6-REMCARD: Card (rp) removed from slot R1
*Jul 24 14:26:39.253: %IOSXE_OIR-6-INSCARD: Card (rp) inserted in slot R1 Jul 24 14:26:5
 
Initializing Hardware...

System Bootstrap, Version 17.3.1r
Compiled Tue 03/14/2023 10:19:23.77 by rel

Current image running:
Primary Rommon Image
 
Last reset cause: SoftwareResetTrig
C9400-SUP-1 platform with 16777216 Kbytes of main memory
 
Preparing to autoboot. [Press Ctrl-C to interrupt] 0
attempting to boot from [bootflash:packages.conf]
 
Located file packages.conf
#
#################################################################################################################################################################################################################################################################################################
 
Warning: ignoring ROMMON var "BOOT_PARAM"
Warning: ignoring ROMMON var "USER_BOOT_PARAM"
 
Restricted Rights Legend
 
Use, duplication, or disclosure by the Government is
subject to restrictions as set forth in subparagraph
(c) of the Commercial Computer Software - Restricted
Rights clause at FAR sec. 52.227-19 and subparagraph
(c) (1) (ii) of the Rights in Technical Data and Computer
Software clause at DFARS sec. 252.227-7013.
 
cisco Systems, Inc.
170 West Tasman Drive
San Jose, California 95134-1706
Cisco IOS XE Software, Version 17.11.01
Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.11.1, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2023 by Cisco Systems, Inc.
Compiled Fri 11-Nov-22 23:25 by mcpre
 
Cisco IOS-XE software, Copyright (c) 2005-2017 by cisco Systems, Inc.
All rights reserved. Certain components of Cisco IOS-XE software are
licensed under the GNU General Public License ("GPL") Version 2.0. The
software code licensed under GPL Version 2.0 is free software that comes
with ABSOLUTELY NO WARRANTY. You can redistribute and/or modify such
GPL code under the terms of GPL Version 2.0. For more details, see the
documentation or "License Notice" file accompanying the IOS-XE software,
or the applicable URL provided on the flyer accompanying the IOS-XE
software.

FIPS: Flash Key Check : Begin
FIPS: Flash Key Check : End, Not Found, FIPS Mode Not Enabled
 
This product contains cryptographic features and is subject to United
States and local country laws governing import, export, transfer and
use. Delivery of Cisco cryptographic products does not imply
third-party authority to import, export, distribute or use encryption.
Importers, exporters, distributors and users are responsible for
compliance with U.S. and local country laws. By using this product you
agree to comply with applicable laws and regulations. If you are unable
to comply with U.S. and local laws, return this product immediately.
 
A summary of U.S. laws governing Cisco cryptographic products may be found at:
http://www.cisco.com/wwl/export/crypto/tool/stqrg.html
 
If you require further assistance please contact us by sending email to
export@cisco.com.
 
cisco C9410R (X86) processor (revision V00) with 868521K/6147K bytes of memory.
Processor board ID FXS2118Q1GM
312 Gigabit Ethernet interfaces
40 Ten Gigabit Ethernet interfaces
4 Forty Gigabit Ethernet interfaces
32768K bytes of non-volatile configuration memory.
15958516K bytes of physical memory.
11161600K bytes of Bootflash at bootflash:.
1638400K bytes of Crash Files at crashinfo:.
0K bytes of WebUI ODM Files at webui:.
 
%INIT: waited 0 seconds for NVRAM to be available
 
Press RETURN to get started!

 

Step 5

Verify version

show version

After the image boots up, use this command to verify the version of the new image.

Note

 
When you downgrade the software image, the ROMMON version does not downgrade. It remains updated.
The following sample output of the show version command displays the Cisco IOS XE Dublin 17.11.1 image on the device:
Switch# show version
Cisco IOS XE Software, Version 17.11.01
Cisco IOS Software [Dublin], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.11.1, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2023 by Cisco Systems, Inc.
<output truncated>

In Service Software Upgrade (ISSU) with Cisco StackWise Virtual and Dual Supervisor Module Configuration

Follow the instructions described here to perform an In Service Software Upgrade (ISSU) upgrade. Use the procedure described here, only for the releases indicated in the table below. For more general information about ISSU release support and recommended releases, see this technical reference document: In-Service Software Upgrade (ISSU).

Before you begin

Note that you can use this ISSU procedure only for the following scenarios:

When upgrading from...

Use these commands...

To...

Cisco IOS XE Cupertino 17.9.x

install add file activate issu commit

Cisco IOS XE Dublin 17.12.x

Not applicable

ISSU does not support downgrade. To downgrade, see Downgrading in Install Mode.

Not applicable

Procedure


Step 1

enable

Enables privileged EXEC mode. Enter your password if prompted.

Switch# enable

Step 2

install add file activate issu commit

Use this command to automate the sequence of all the upgrade procedures, including downloading the images to both the switches, expanding the images into packages, and upgrading each switch as per the procedures.

Switch# install add file tftp:cat9k_iosxe.17.12.01.SPA.bin activate issu commit

The following sample output displays installation of Cisco IOS XE Dublin 17.12.1 software image with ISSU procedure.

Switch# install add file tftp:cat9k_iosxe.17.12.01.SPA.bin activate issu commit
install_add_activate_commit: START Thu Jul 19 06:16:32 UTC 2023
Downloading file tftp://172.27.18.5//cat9k_iosxe.17.12.01.SPA.bin
 
*Jul 19 06:16:34.064: %INSTALL-5-INSTALL_START_INFO: Switch 1 R0/0: install_engine: Started install one-shot ISSU tftp://172.27.18.5//cat9k_iosxe.17.12.01.SPA.bin
Finished downloading file tftp://172.27.18.5//cat9k_iosxe.17.12.01.SPA.bin to flash:cat9k_iosxe.17.12.01.SPA.bin
install_add_activate_commit: Adding ISSU
 
--- Starting initial file syncing ---
[1]: Copying flash:cat9k_iosxe.17.12.01.SPA.bin from switch 1 to switch 2
[2]: Finished copying to switch 2 
Info: Finished copying flash:cat9k_iosxe.17.12.01.SPA.bin to the selected switch(es)
Finished initial file syncing
 
--- Starting Add ---
Performing Add on all members
  [1] Add package(s) on switch 1
  [1] Finished Add on switch 1
  [2] Add package(s) on switch 2
  [2] Finished Add on switch 2
Checking status of Add on [1 2]
Add: Passed on [1 2]
Finished Add
 
install_add_activate_commit: Activating ISSU
 
NOTE: Going to start Oneshot ISSU install process
 
STAGE 0: Initial System Level Sanity Check before starting ISSU
===================================================
--- Verifying install_issu supported ---
--- Verifying standby is in Standby Hot state ---
--- Verifying booted from the valid media ---
--- Verifying AutoBoot mode is enabled ---
Finished Initial System Level Sanity Check
 
 
STAGE 1: Installing software on Standby
===================================================
--- Starting install_remote ---
Performing install_remote on Chassis remote
[2] install_remote package(s) on switch 2
[2] Finished install_remote on switch 2
install_remote: Passed on [2]
Finished install_remote
 
 
STAGE 2: Restarting Standby
===================================================
--- Starting standby reload ---
Finished standby reload
 
--- Starting wait for Standby to reach terminal redundancy state ---
 
*Jul 19 06:24:16.426: %SMART_LIC-5-EVAL_START: Entering evaluation period
*Jul 19 06:24:16.426: %SMART_LIC-5-EVAL_START: Entering evaluation period
*Jul 19 06:24:16.466: %HMANRP-5-CHASSIS_DOWN_EVENT: Chassis 2 gone DOWN!
*Jul 19 06:24:16.497: %REDUNDANCY-3-STANDBY_LOST: Standby processor fault (PEER_NOT_PRESENT)
*Jul 19 06:24:16.498: %REDUNDANCY-3-STANDBY_LOST: Standby processor fault (PEER_DOWN)
*Jul 19 06:24:16.498: %REDUNDANCY-3-STANDBY_LOST: Standby processor fault (PEER_REDUNDANCY_STATE_CHANGE)
*Jul 19 06:24:16.674: %RF-5-RF_RELOAD: Peer reload. Reason: EHSA standby down
*Jul 19 06:24:16.679: %IOSXE_REDUNDANCY-6-PEER_LOST: Active detected switch 2 is no longer standby
*Jul 19 06:24:16.416: %NIF_MGR-6-PORT_LINK_DOWN: Switch 1 R0/0: nif_mgr: Port 1 on front side stack link 0 is DOWN.
*Jul 19 06:24:16.416: %NIF_MGR-6-PORT_CONN_DISCONNECTED: Switch 1 R0/0: nif_mgr: Port 1 on front side stack link 0 connection has DISCONNECTED: CONN_ERR_PORT_LINK_DOWN_EVENT
*Jul 19 06:24:16.416: %NIF_MGR-6-STACK_LINK_DOWN: Switch 1 R0/0: nif_mgr: Front side stack link 0 is DOWN.
*Jul 19 06:24:16.416: %STACKMGR-6-STACK_LINK_CHANGE: Switch 1 R0/0: stack_mgr: Stack port 1 on Switch 1 is down
 
<output truncated>
 
*Jul 19 06:29:36.393: %IOSXE_REDUNDANCY-6-PEER: Active detected switch 2 as standby.
*Jul 19 06:29:36.392: %STACKMGR-6-STANDBY_ELECTED: Switch 1 R0/0: stack_mgr: Switch 2 has been elected STANDBY.
*Jul 19 06:29:41.397: %REDUNDANCY-5-PEER_MONITOR_EVENT: Active detected a standby insertion (raw-event=PEER_FOUND(4))
*Jul 19 06:29:41.397: %REDUNDANCY-5-PEER_MONITOR_EVENT: Active detected a standby insertion (raw-event=PEER_REDUNDANCY_STATE_CHANGE(5))
*Jul 19 06:29:42.257: %REDUNDANCY-3-IPC: IOS versions do not match.
*Jul 19 06:30:24.323: %HA_CONFIG_SYNC-6-BULK_CFGSYNC_SUCCEED: Bulk Sync succeededFinished wait for Standby to reach terminal redundancy state
 
 
*Jul 19 06:30:25.325: %RF-5-RF_TERMINAL_STATE: Terminal state reached for (SSO)
STAGE 3: Installing software on Active
===================================================
--- Starting install_active ---
Performing install_active on Chassis 1
 
<output truncated> 
 
[1] install_active package(s) on switch 1
[1] Finished install_active on switch 1
install_active: Passed on [1]
Finished install_active
 
 
STAGE 4: Restarting Active (switchover to standby)
===================================================
--- Starting active reload ---
New software will load after reboot process is completed
SUCCESS: install_add_activate_commit  Thu Jul 19 23:06:45 UTC 2023
Jul 19 23:06:45.731: %INSTALL-5-INSTALL_COMPLETED_INFO: R0/0: install_engine: Completed install one-shot ISSU flash:cat9k_iosxe.17.12.01.SPA.bin
Jul 19 23:06:47.509: %PMAN-5-EXITACTION: F0/0: pvp: Process manager is exiting: reload fp action requested
Jul 19 23:06:48.776: %PM
 
Initializing Hardware...
 
System Bootstrap, Version 17.12.1r[FC2], RELEASE SOFTWARE (P)
Compiled Fri 07/19/2023 10:48:42.68 by rel
 
Current ROMMON image : Primary
Last reset cause     : PowerOn
C9500-40X platform with 16777216 Kbytes of main memory
 
boot: attempting to boot from [flash:packages.conf]
boot: reading file packages.conf
#
##################################################################################################################################################################################################################################################################################################################################################
 
 
Jul 19 23:08:30.238: %PMAN-5-EXITACTION: C0/0: pvp: Process manager is exiting:
 
Waiting for 120 seconds for other switches to boot
######################
Switch number is 1
All switches in the stack have been discovered. Accelerating discovery
 
 
 
Switch console is now available
 
 
Press RETURN to get started.
 
 
 
 
 
 
Jul 19 23:14:17.080: %INSTALL-5-INSTALL_START_INFO: R0/0: install_engine: Started install commit
Jul 19 23:15:48.445: %INSTALL-5-INSTALL_COMPLETED_INFO: R0/0: install_engine: Completed install commit ISSU

Step 3

show version

Use this command to verify the version of the new image.

The following sample output of the show version command displays the Cisco IOS XE Dublin 17.12.1 image on the device:

Switch# show version
Cisco IOS XE Software, Version 17.12.01
Cisco IOS Software [Amsterdam], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 17.12.1, RELEASE SOFTWARE (fc2)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2023 by Cisco Systems, Inc.
<output truncated>

Step 4

show issu state [detail]

Use this command to verify that no ISSU process is in pending state.

Switch# show issu state detail
--- Starting local lock acquisition on chassis 2 ---
Finished local lock acquisition on chassis 2
 
No ISSU operation is in progress
 
Switch#

Step 5

exit

Exits privileged EXEC mode and returns to user EXEC mode.


Upgrading the Complex Programmable Logic Device Version

You can trigger a CPLD version upgrade after upgrading the software image. During CPLD upgrade, the supervisor module automatically power cycles. This completes the CPLD upgrade process for the supervisor module but also causes traffic disruption. Therefore, auto-upgrade of CPLD is not supported. You must manually perform CPLD upgrade.

Upgrading the CPLD Version: High Availability Setup

Beginning in the privileged EXEC mode, complete the following steps:

Before you begin

When performing the CPLD version upgrade as shown, the show platform command can be used to confirm the CPLD version after the upgrade. This command output shows the CPLD version on all modules. However, the CPLD upgrade only applies to the supervisors, not the line cards. The line cards CPLD version is a cosmetic display. After the upgrade is completed in a high availability setup, the supervisors will be upgraded, but the line cards will still show the old CPLD version. The version mismatch between the supervisors and line cards is expected until a chassis reload.

Procedure


Step 1

Upgrade the CPLD Version of the standby supervisor module

Enter the following commands on the active supervisor:

  1. Device# configure terminal

  2. Device(config)# service internal

  3. Device(config)# exit

  4. Device# upgrade hw-programmable cpld filename bootflash: rp standby

The standby supervisor module reloads automatically and the upgrade occurs in ROMMON. During the upgrade, the supervisor module automatically power cycles and remains inactive for approximately 5 minutes.

Wait until the standby supervisor module boots up and the SSO has formed (HOT) before you proceed to the next step; this takes approximately 17 minutes.

Step 2

Perform a switch over

  1. Device# redundancy force-switchover

This causes the standby supervisor (on which you have completed the CPLD upgrade in Step 1) to become the active supervisor module

Step 3

Upgrade the CPLD Version of the new standby supervisor module

Repeat Step 1 and all its substeps.

Note

 

Do not operate an HA system with mismatched FPGA versions. FPGA version should be upgraded on both the supervisors one at a time.


Upgrading the CPLD Version: Cisco StackWise Virtual Setup

Beginning in the privileged EXEC mode, complete the following steps:

Procedure


Step 1

Upgrade the CPLD version of the standby supervisor module

Enter the following commands on the active supervisor:

  1. Device# configure terminal

  2. Device(config)# service internal

  3. Device(config)# exit

  4. Device# upgrade hw-programmable cpld filename bootflash: switch standby r1

    Note

     

    For the upgrade hw-programmable cpld filename bootflash command, configure with the switch keyword only. The other available keywords are not applicable when upgrading with Cisco StackWise Virtual.

Step 2

Reload the standby supervisor module

  1. Device# redundancy reload peer

The upgrade occurs in ROMMON. During the upgrade, the supervisor module automatically power cycles and remains inactive for approximately 5 minutes.

Wait until the standby supervisor module boots up and the SSO has formed (HOT) before you proceed to the next step; this takes approximately 17 minutes.

Step 3

Perform a switch over

  1. Device# redundancy force-switchover

This causes the standby supervisor (on which you have completed the CPLD upgrade in step 1) to become the active supervisor module

Step 4

Upgrade the CPLD version of the new standby supervisor module

Perfom Steps 1 and 2, including all substeps, on the new standby supervisor module


Upgrading the CPLD Version: Single Supervisor Module Setup

Beginning in the privileged EXEC mode, complete the following steps:

Procedure


Upgrade the CPLD version of the active supervisor module

Enter the following commands on the active supervisor:

  1. Device# configure terminal

  2. Device(config)# service internal

  3. Device(config)# exit

  4. Device# upgrade hw-programmable cpld filename bootflash: rp active

The supervisor module reloads automatically and the upgrade occurs in ROMMON. During the upgrade, the supervisor module automatically power cycles and remains inactive for approximately 5 minutes.


Upgrading the CPLD Version: Alternative Manual Method

This is an alternate method to upgrade CPLD where reloading with down time is possible. Perform the following steps in a single maintenance window. Refer to the ROMMON and CPLD Versions chapter of the release notes for the supported CPLD version.

Beginning in the privileged EXEC mode, complete the following steps:

Procedure


Step 1

Add rommon-variable FPGA_UPGRADE=1 on to the supervisor. In a high availability or stackwise virtual setup, this configuration will set the rommon variable on both the supervisors.

  1. Device# configure terminal

  2. Device(config)# service internal

  3. Device(config)# boot fpga-upgrade

  4. Device(config)# end

  5. Device# write memory

Step 2

Use any method to upgrade the software or reload the supervisor. If the current running CPLD version is lower than the intergrated version in the software image, the FPGA files will be copied to the respective supervisor's flash. This message will appear during the reload:

%IOSXEBOOT-4-FPGA_UPGRADE: Copy required files to Flash - FPGA UPGRADING

%IOSXEBOOT-4-FPGA_UPGRADE: Supervisor will not be reloaded. New FPGA will activate with next reload or switchover

Step 3

(Optional) Verify that the images are copied to flash.

  1. Device# dir bootflash:mcnewfpgabinclose*

Step 4

Once the switch boots to IOS and is in SSO hot state, an additional reload is required for the actual CPLD upgrade, as the rommon takes care of upgrading the CPLD version. Traffic can be disrupted during the power cycle initiated by the supervisor.

Step 5

Verify that the CPLD/FPGA version is updated.

  1. Device# show firmware version all

Step 6

Use the no boot fpga-upgrade command to remove the rommon-variable FPGA_UPGRADE=1 from the supervisors. Verify that the rommon variable is FPGA_UPGRADE=0. This indicates that there are no further upgrades.

  1. Device# show romvar