[Cisco] C9300 Series Switch IOS Version Upgrade Procedure

Switch

Target environment

  • C9300 series switch
    • Before version upgrade: 16.9.4
    • After version upgrade: 16.12.4

Version upgrade procedure

Overview

  1. Obtaining OS files and preparing an FTP (TFTP) server
  2. Check free flash space
  3. OS file download
  4. Checking the OS file after downloading
  5. New OS installation
  6. Confirmation after version upgrade
  7. Delete old package file

Obtaining OS files and preparing an FTP (TFTP) server

First, obtain the OS file to be upgraded and store it in the FTP or TFTP server. Then, prepare an environment in which the FTP or TFTP server and the target switch can be connected via the network.

For the target switch, configure the minimum network settings for network connection with the FTP or TFTP server.

Check free flash space

  • show flash:
Switch#show flash:
-#- --length-- ---------date/time--------- path
  2    2097152 Jan 10 2021 05:13:45.0000000000 +00:00 nvram_config
  3    2097152 Jan 10 2021 05:13:45.0000000000 +00:00 nvram_config_bkup
  4   27231232 Mar 07 2020 09:18:09.0000000000 +00:00 cat9k-cc_srdriver.16.09.04.SPA.pkg
  5   81241084 Mar 07 2020 09:18:09.0000000000 +00:00 cat9k-espbase.16.09.04.SPA.pkg
#omit
10037112832 bytes available (739364864 bytes used)

Make sure that the free space on the flash is greater than the space on the new OS file.

OS file download

  • For FTP
    • copy ftp://<user name>:<password>@<FTP server IP>/<OS file name> flash:
  • For TFTP
    • copy tftp://<TFTP server IP>/<OS file name> flash:
Switch#copy tftp://192.168.1.1/cat9k_iosxe.16.12.04.SPA.bin flash:
Destination filename [cat9k_iosxe.16.12.04.SPA.bin]? 
Accessing tftp://192.168.1.1/cat9k_iosxe.16.12.04.SPA.bin...
Loading cat9k_iosxe.16.12.04.SPA.bin from 192.168.1.1 (via Vlan192): !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[OK - 805827585 bytes]

805827585 bytes copied in 970.894 secs (829985 bytes/sec)

Checking the OS file after downloading

  • dir flash:*.bin
Switch#dir flash:*.bin
Directory of flash:/*.bin

Directory of flash:/

262167  -rw-   805827585  Jan 10 2021 05:57:12 +00:00  cat9k_iosxe.16.12.04.SPA.bin
11353194496 bytes total (9230487552 bytes free)

New OS installation

  • install add file flash:<OS file name> activate commit
Switch#install add file flash:cat9k_iosxe.16.12.04.SPA.bin activate commit
install_add_activate_commit: START Wed Jan 10 06:03:45 UTC 2021

System configuration has been modified.
Press Yes(y) to save the configuration and proceed.
Press No(n) for proceeding without saving the configuration.
Press Quit(q) to exit, you may save configuration and re-enter the command. [y/n/q]

  • Press Quit(q) to exit, you may save configuration and re-enter the command. [y/n/q]
    –> y
Press Quit(q) to exit, you may save configuration and re-enter the command. [y/n/q]y

Building configuration...

[OK]Modified configuration has been saved

flash:cat9k_iosxe.16.12.04.SPA.bininstall_add_activate_commit: Adding PACKAGE

--- Starting initial file syncing ---
Info: Finished copying flash:cat9k_iosxe.16.12.04.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
Following packages shall be activated:
/flash/cat9k-wlc.16.12.04.SPA.pkg
/flash/cat9k-webui.16.12.04.SPA.pkg
/flash/cat9k-srdriver.16.12.04.SPA.pkg
/flash/cat9k-sipspa.16.12.04.SPA.pkg
/flash/cat9k-sipbase.16.12.04.SPA.pkg
/flash/cat9k-rpboot.16.12.04.SPA.pkg
/flash/cat9k-rpbase.16.12.04.SPA.pkg
/flash/cat9k-guestshell.16.12.04.SPA.pkg
/flash/cat9k-espbase.16.12.04.SPA.pkg
/flash/cat9k-cc_srdriver.16.12.04.SPA.pkg
This operation requires a reload of the system. Do you want to proceed? [y/n]

  • This operation requires a reload of the system. Do you want to proceed? [y/n]
    –> y
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
    --- Starting list of software package changes ---
    Old files list:
      Removed cat9k-cc_srdriver.16.09.04.SPA.pkg
      Removed cat9k-espbase.16.09.04.SPA.pkg
      Removed cat9k-guestshell.16.09.04.SPA.pkg
      Removed cat9k-rpbase.16.09.04.SPA.pkg
      Removed cat9k-rpboot.16.09.04.SPA.pkg
      Removed cat9k-sipbase.16.09.04.SPA.pkg
      Removed cat9k-sipspa.16.09.04.SPA.pkg
      Removed cat9k-srdriver.16.09.04.SPA.pkg
      Removed cat9k-webui.16.09.04.SPA.pkg
      Removed cat9k-wlc.16.09.04.SPA.pkg
    New files list:
      Added cat9k-cc_srdriver.16.12.04.SPA.pkg
      Added cat9k-espbase.16.12.04.SPA.pkg
      Added cat9k-guestshell.16.12.04.SPA.pkg
      Added cat9k-rpbase.16.12.04.SPA.pkg
      Added cat9k-rpboot.16.12.04.SPA.pkg
      Added cat9k-sipbase.16.12.04.SPA.pkg
      Added cat9k-sipspa.16.12.04.SPA.pkg
      Added cat9k-srdriver.16.12.04.SPA.pkg
      Added cat9k-webui.16.12.04.SPA.pkg
      Added cat9k-wlc.16.12.04.SPA.pkg
    Finished list of software package changes
  [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] Finished Commit on switch 1
Checking status of Commit on [1]
Commit: Passed on [1]
Finished Commit

[1]: Performing Upgrade_Service
%IOSXEBOOT-4-BOOTLOADER_UPGRADE: (local/local): Starting boot preupgrade
300+0 records in
300+0 records out
%IOSXEBOOT-4-BOOTLOADER_UPGRADE: (local/local): ### Wed Jan 10 06:09:25 UTC 2021 PLEASE DO NOT POWER CYCLE ### BOOT LOADER UPGRADING
307200 bytes (307 kB, 300 KiB) copied, 0.316035 s, 972 kB/s
16128+0 records in
16128+0 records out
%IOSXEBOOT-4-BOOTLOADER_UPGRADE: (local/local): Boot loader upgrade successful
8257536 bytes (8.3 MB, 7.9 MiB) copied, 8.50574 s, 971 kB/s
/bin/ls: cannot access '/ucode0/cat9k-select_srdriver.*': No such file or directory
head: error reading '/ucode0/lost+found': Is a directory
hexdump: /ucode0/lost+found: Is a directory
hexdump: /ucode0/lost+found: Is a directory
hexdump: /ucode0/lost+found: Is a directory
hexdump: /ucode0/lost+found: Is a directory
hexdump: /ucode0/lost+found: Is a directory
hexdump: /ucode0/lost+found: Is a directory
mount: /mnt/sd7/lost+found: failed to setup loop device: Invalid argument
  SUCCESS: Upgrade_Service finished
Install will reload the system now!
SUCCESS: install_add_activate_commit  Wed Jan 10 06:10:04 UTC 2021

Chassis 1 reloading, reason - Reload command

Initializing Hardware...

System Bootstrap, Version 16.12.2r, RELEASE SOFTWARE (P)
Compiled Wed 10/23/2019 16:35:17.50 by rel

Current ROMMON image : Primary
Last reset cause     : SoftwareReload
C9300-24UX platform with 8388608 Kbytes of main memory




boot: attempting to boot from [flash:packages.conf]
boot: reading file packages.conf
#
#########################################################################################################################################################################################################################################################################################################################################################################################################################


MM [1] MCU version 190 sw ver 129
MM [2] MCU version 190 sw ver 129


MCU UPGRADE IN PROGRESS... PLEASE DO NOT POWER CYCLE!!

Front-end Microcode IMG MGR: found 4 microcode images for 1 device.
Image for front-end 0: /tmp/microcode_update/front_end/fe_type_6_0 update needed: no
Image for front-end 0: /tmp/microcode_update/front_end/fe_type_6_1 update needed: yes
Image for front-end 0: /tmp/microcode_update/front_end/fe_type_6_2 update needed: yes
Image for front-end 0: /tmp/microcode_update/front_end/fe_type_6_3 update needed: no

Front-end Microcode IMG MGR: Preparing to program device microcode...
Front-end Microcode IMG MGR: Preparing to program device[0], index=0 ...594412 bytes.... Skipped[0].
Front-end Microcode IMG MGR: Preparing to program device[0], index=1 ...379310 bytes.
Front-end Microcode IMG MGR: Programming device 0...rwRrrrrrrw..0%.......................................................................10%......................................................................20%......................................................................30%.......................................................................40%......................................................................50%......................................................................60%......................................................................70%.......................................................................80%......................................................................90%......................................................................100%
Front-end Microcode IMG MGR: Preparing to program device[0], index=2 ...24506 bytes.
Front-end Microcode IMG MGR: Programming device 0...rrrrrrw..0%....10%....20%......30%...40%....50%......60%....70%.....80%....90%....100%w
Wating for MCU to come up .....Rr!
Front-end Microcode IMG MGR: Microcode programming complete for device 0.
Front-end Microcode IMG MGR: Preparing to program device[0], index=3 ...90974 bytes.... Skipped[3].
Front-end Microcode IMG MGR: Microcode programming complete in 260 seconds


MCU UPGRADE COMPLETED!!...

This completes the version upgrade.

Confirmation after version upgrade

  • show version
Switch#show version
Cisco IOS XE Software, Version 16.12.04
Cisco IOS Software [Gibraltar], Catalyst L3 Switch Software (CAT9K_IOSXE), Version 16.12.4, RELEASE SOFTWARE (fc5)
#略
Switch Ports Model              SW Version        SW Image              Mode   
------ ----- -----              ----------        ----------            ----   
*    1 41    C9300-24T          16.12.4           CAT9K_IOSXE           INSTALL


Configuration register is 0x102

Must be a new version.

  • show install summary
Switch#show install summary
[ Switch 1 ] Installed Package(s) Information:
State (St): I - Inactive, U - Activated & Uncommitted,
            C - Activated & Committed, D - Deactivated & Uncommitted
--------------------------------------------------------------------------------
Type  St   Filename/Version    
--------------------------------------------------------------------------------
IMG   C    16.12.4.0.4480                                                      

--------------------------------------------------------------------------------
Auto abort timer: inactive
--------------------------------------------------------------------------------

State (St) is C.

  • show flash:
    –> Confirm that the new package file is installed

Delete old package file

  • install remove inactive
Switch#install remove inactive
install_remove: START Wed Jan 10 06:30:59 UTC 2021

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.16.12.04.SPA.pkg
      File is in use, will not delete.
    cat9k-espbase.16.12.04.SPA.pkg
      File is in use, will not delete.
    cat9k-guestshell.16.12.04.SPA.pkg
      File is in use, will not delete.
    cat9k-rpbase.16.12.04.SPA.pkg
      File is in use, will not delete.
    cat9k-rpboot.16.12.04.SPA.pkg
      File is in use, will not delete.
    cat9k-sipbase.16.12.04.SPA.pkg
      File is in use, will not delete.
    cat9k-sipspa.16.12.04.SPA.pkg
      File is in use, will not delete.
    cat9k-srdriver.16.12.04.SPA.pkg
      File is in use, will not delete.
    cat9k-webui.16.12.04.SPA.pkg
      File is in use, will not delete.
    cat9k-wlc.16.12.04.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:
[switch 1]:
/flash/cat9k-cc_srdriver.16.09.04.SPA.pkg
/flash/cat9k-espbase.16.09.04.SPA.pkg
/flash/cat9k-guestshell.16.09.04.SPA.pkg
/flash/cat9k-rpbase.16.09.04.SPA.pkg
/flash/cat9k-rpboot.16.09.04.SPA.pkg
/flash/cat9k-sipbase.16.09.04.SPA.pkg
/flash/cat9k-sipspa.16.09.04.SPA.pkg
/flash/cat9k-srdriver.16.09.04.SPA.pkg
/flash/cat9k-webui.16.09.04.SPA.pkg
/flash/cat9k-wlc.16.09.04.SPA.pkg
/flash/cat9k_iosxe.16.12.04.SPA.bin
/flash/cat9k_iosxe.16.12.04.SPA.conf
Do you want to remove the above files? [y/n]

  • Do you want to remove the above files? [y/n]
    –> y
Do you want to remove the above files? [y/n]y
[switch 1]:
Deleting file flash:cat9k-cc_srdriver.16.09.04.SPA.pkg ... done.
Deleting file flash:cat9k-espbase.16.09.04.SPA.pkg ... done.
Deleting file flash:cat9k-guestshell.16.09.04.SPA.pkg ... done.
Deleting file flash:cat9k-rpbase.16.09.04.SPA.pkg ... done.
Deleting file flash:cat9k-rpboot.16.09.04.SPA.pkg ... done.
Deleting file flash:cat9k-sipbase.16.09.04.SPA.pkg ... done.
Deleting file flash:cat9k-sipspa.16.09.04.SPA.pkg ... done.
Deleting file flash:cat9k-srdriver.16.09.04.SPA.pkg ... done.
Deleting file flash:cat9k-webui.16.09.04.SPA.pkg ... done.
Deleting file flash:cat9k-wlc.16.09.04.SPA.pkg ... done.
Deleting file flash:cat9k_iosxe.16.12.04.SPA.bin ... done.
Deleting file flash:cat9k_iosxe.16.12.04.SPA.conf ... done.
SUCCESS: Files deleted.
--- 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  Wed Jan 10 06:34:17 UTC 2021

After removal, use show flash: to verify that the old package files have been removed.

References

Release Notes for Cisco Catalyst 9300 Series Switches, Cisco IOS XE Everest 16.6.x
Release Notes for Cisco Catalyst 9300 Series Switches, Cisco IOS XE Everest 16.6.x
Upgrade Guide for Cisco Catalyst 9000 Switches
This document describes upgrade methods for Catalyst9000 (Cat9K) switches

Comments

Copied title and URL