Catalyst 9200, Upgrading IOS-XE Amsterdam 17.3.x (Install Mode)

Starting with IOS-XE 17.3.2 and future releases, Cisco implemented Smart Licensing using Policy. Be sure to read up on what this means in this post Update to Cisco Smart Licensing. If you need to review how to change operating modes, you can check this post Converting Cisco IOS-XE Software from Bundle Mode to Install Mode.

You may notice the new command no boot manual. What this essentially is doing is setting the config register to 0x2102. Classic platforms that run on IOS code version; you can set this via the config-register command. However, on Catalyst 9K switches that run IOS-XE, the config-register command was ineffective and malfunctioned, causing confusion.

To prevent the switch from rebooting into ROMmon mode (boot the switch normally), use the no boot manual command as shown in the code snippet below.

OperationIOS Config-register valueEquivalent IOS-XE CLI
Boot normally0x2102Switch(config)#no boot manual
Boot to rommon0x0,0x2120Switch(config)#boot manual
Step 1. Remove Unwanted Packages
C9200K#install remove inactive
Step 2. Copy New Image to Flash
C9200K#copy usbflash1:cat9k_lite_iosxexxx.bin flash:
Step 3. Set Boot Variable
C9200K(config)#boot system flash:packages.conf
C9200K(config)#no boot manual
C9200K(config)#end
C9200K#wr
C9200K#show boot system
Step 4. Software Install Image to Flash
C9200K#install add file flash: cat9k_lite_iosxexxx.bin activate commit (auto reloads after this command)
Step 5. Verify New Packages and Image after reload
C9200K#dir flash:*.pkg
Step 6. Check Version and New Bootloader
C9200K#show version
C9200K#show boot

Hope that this helps.

Mike

Cisco. (2021, May 10). Smart licensing using policy on catalyst switching platforms. Cisco. https://www.cisco.com/c/en/us/support/docs/switches/catalyst-9300-series-switches/216545-smart-licensing-using-policy-on-catalyst.html. 

Cisco. (2021, February 24). Configuration register equivalent CLIs In IOS-XE. Cisco. https://www.cisco.com/c/en/us/support/docs/switches/catalyst-9300-series-switches/216850-configuration-register-equivalent-clis-i.html. 

Catalyst 9300 Upgrading IOS-XE 16.6.2 onward (Install Mode)

Update to Cisco Smart Licensing

If you would like to skip to the code used to upgrade the switch, scroll to Appendix A.

This upgrade procedure is nearly identical to the Catalyst 9200 upgrade procedure.

Note: When upgrading..

First, check to see what mode your switch is running in. The preferred mode is INSTALL mode. In my case, it is running in INSTALL mode.

Prepare the switch to accept the new IOS-XE image by freeing up some storage.

Step 1. Remove Unwanted Packages
Cat9300#install remove inactive

Step 2. Copy New Image to Flash
Cat9300#copy usbflash0:/cat9k_iosxe.x.x.x.SPA.bin flash:/

Step 3. Set Boot Variable
Cat9300(config)#boot system flash:packages.conf
Cat9300(config)#end
Cat9300#wr
Cat9300#show boot system

Step 4. Software Install Image to Flash
Cat9300#install add file flash:cat9k_iosxe.x.x.x.SPA.bin activate commit

Your screen will produce a similar output and requires a reload. Confirm a reload by hitting ‘y’.

It will take a couple of minutes to reload. After the reload, you can confirm your running mode, version and pkg files are in your flash directory.

Step 5. Verify New Packages and Image after reload
Cat9300#dir flash:*.pkg

Step 6. Check Version and New Bootloader
Cat9300#show version

Step 7. Clean up
Cat9200#install remove inactive

Hope that this helps.

Mike

Appendix A
Step 1. Remove Unwanted Packages
Cat9300#install remove inactive
Step 2. Copy New Image to Flash
Cat9300#copy usbflash0:/cat9k_iosxe.x.x.x.SPA.bin flash:/
Step 3. Set Boot Variable
Cat9300(config)#boot system flash:packages.conf
Cat9300(config)#end
Cat9300#wr
Cat9300#show boot system
Step 4. Software Install Image to Flash
Cat9300#install add file flash: cat9k_iosxe.x.x.x.SPA.bin activate commit
Step 5. Verify New Packages and Image after reload
Cat9300#dir flash:*.pkg
Step 6. Check Version and New Bootloader
Cat9300#show version
Cat9300#show boot

https://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst9300/software/release/16-12/release_notes/ol-16-12-9300.html#id_67613

Catalyst 9200, Upgrading IOS-XE 16.9.2 onward (Install Mode)

UPDATE! Catalyst 9200, Upgrading IOS-XE Amsterdam 17.3.x (Install Mode)

If you would like to skip to the code used to upgrade the switch, scroll to Appendix A.

First, check to see what mode your switch is running in. The preferred mode is INSTALL mode. In my case, it is running in BUNDLE mode.

We will switch the running mode of the switch during the upgrade process.

Prepare the switch to accept the new IOS-XE image by freeing up some storage.

Step 1. Remove Unwanted Packages
C9200#install remove inactive

Step 2. Copy New Image to Flash
C9200#copy usbflash1:cat9k_lite_iosxexxx.bin flash:

Step 3. Set Boot Variable
C9200(config)#boot system flash:packages.conf
C9200(config)#end
C9200#wr
C9200#show boot system

Step 4. Software Install Image to Flash
C9200K#install add file flash: cat9k_lite_iosxexxx.bin activate commit

After hitting ‘y’, you will be asked to confirm that you have changed the boot config to packages.conf. You should have done this in Step 3.

Confirm by hitting ‘y’. Your screen will produce a similar output and requires a reload.

It will take a couple of minutes to reload. After the reload, you can confirm your running mode, version and pkg files are in your flash directory.

Step 5. Verify New Packages and Image after reload
C9200#dir flash:*.pkg

Step 6. Check Version and New Bootloader
C9200#show version
C9200#show boot

Note: Previously the 9200 was running in BUNDLE mode. After the reload, it is running in INSTALL mode.

Step 7. Clean up
C9200#install remove inactive

Hope that this helps.

Mike

Appendix A
Step 1. Remove Unwanted Packages
C9200K#install remove inactive
Step 2. Copy New Image to Flash
C9200K#copy usbflash1:cat9k_lite_iosxexxx.bin flash:
Step 3. Set Boot Variable
C9200K(config)#boot system flash:packages.conf
C9200K (config)#end
C9200K#wr
C9200K#show boot system
Step 4. Software Install Image to Flash
C9200K#install add file flash: cat9k_lite_iosxexxx.bin activate commit
Step 5. Verify New Packages and Image after reload
C9200K#dir flash:*.pkg
Step 6. Check Version and New Bootloader
C9200K#show version
C9200K#show boot

https://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst9200/software/release/16-9/configuration_guide/sys_mgmt/b_169_sys_mgmt_9200_cg/performing_setup_configuration.html#id_57156

https://www.cisco.com/c/en/us/td/docs/switches/lan/catalyst9200/software/release/16-12/release_notes/ol-16-12-9200.html#id_67619

Campus switching positioning

Recommended Releases for Cat9K and Cat3K

It can be confusing to know which Catalyst 9K switch to position on your campus. The most recent release to the Catalyst 9K switching family; the Catalyst 9600 brings a modular chassis to the core/aggregation layer and is positioned to replace the 6500 & 6800.

Heres a quick reference aimed to assist you in your upgrades and have confidence that you will meet the present and future needs of the campus.

Current PlatformTransition to Cat 9K Series
Access SwitchingCatalyst 2960Catalyst 9200
Catalyst 3650Catalyst 9300L
Catalyst 3850Catalyst 9300
Catalyst 4500ECatalyst 9400
Backbone SwitchingCatalyst 3850 10GCatalyst 9500
Catalyst 4500XCatalyst 9500
Catalyst 6500ECatalyst 9600
Catalyst 6800Catalyst 9600

Mike

Converting Cisco IOS-XE Software from Bundle Mode to Install Mode

Recommended Releases for Cat9k

Today we’re are going to be converting a Cisco WS-C3850-24XS from a Bundle Running Mode to an Install Running Mode.

If you haven’t read my other post on operating modes for the Cat3k or 9Ks, look there first. Upgrading Cisco IOS-XE Software (Install Mode)

You can also review upgrade procedure for specific hardware.
Catalyst 9200 upgrade procedure or review Campus switching positioning with Catalyst 9Ks for a quick reference to determine what hardware is best suited for your campus.

I first want to show you the file(s) that each mode references. I’ll use the show version command to do this.

3850-1
3850-2

You can see from the previous output that the 3850 is running in BUNDLE mode. Secondly, the line that starts with ‘System image file is..” This line is the name and location of the booted Cisco IOS XE bundle file. Notice that this is a .bin extension.

3850-3
3850-4.PNG

Again using the show version command, in the previous output the 3650 is running in INSTALL mode. This time the line that starts with ‘System image file is..” is referencing the name and location of the provisioning file ‘packages.conf‘.

Let’s continue changing our Bundle running mode to Install running mode.

To do this, execute the command below in exec.

3850# software expand running to flash:

3850-5

I am executing this on a stack so you can see that the operation is expanding the bundle (.bin) file to switch 1 and switch 2. This is essentially unpacking .pkg files from the running .bin file on the switch.

Notice that the switch attempts to create a packages.conf file but it already exists, so it creates a file called ‘running-packages.conf‘. This isn’t a big deal. If you want your file to be named packages.conf, just rename the original packages.conf to something else before you run the above command.

After this finishes, we can view the flash:/ to see our pkg files.

3850-6.PNG

Here we see two .pkg versions, 03.07.04E.pkg and 03.07.05E.pkg. Which one is the most recent one? 03.07.05E.pkg is the most recent because that is the version we extracted from our current running cat3k_caa-universalk9.SPA.03.07.05.E152-3.bin file. Also, notice the running-packages.conf file.

Let’s change the boot system variable to reference our new .conf file.

3850-7

Note: Check to see if you already have a boot variable defined. Change it so that on next boot you load your packages.conf file and not the .bin file. Check the boot var with the command show boot to confirm.

Save your running config to start up and reload the switch.

After the reload, we can check our running mode.

3850-8

Lets clean up our flash directory.

3850-9

Here is the flash directory after we cleaned it.

3850-10

Mike