Networking

How to perform a Cisco IOS warm upgrade and reload to minimize downtime

David Davis explains how to perform a warm upgrade and warm reload in the Cisco IOS. Using these Cisco features significantly reduces downtime when you have to upgrade or reboot your router.

Recently, I wanted to upgrade my test router to the latest IOS. I had read about the new Cisco IOS warm upgrade and warm reload features, and I took this opportunity to test them out. By using these features, you can minimize downtime for your end users when you have to upgrade or reboot your router. Here is how I performed a warm upgrade and warm reboot on a Cisco 2811 Router.

What are the warm upgrade and warm reload features?

The warm upgrade feature of the Cisco IOS was offered in Cisco IOS version 12.3(11)T. The warm reload feature of the Cisco IOS was offered in IOS version 12.3(2)T.

Routers are one of the most critical features of your network infrastructure. As network administrators, it is our job to minimize network downtime. Both of these Cisco IOS features -- warm upgrade and warm reload -- are there to minimize router downtime anytime you do a router upgrade or reboot.

Without further delay, let's see how to use these powerful Cisco IOS features.

How to perform a warm upgrade in the Cisco IOS

I started with a Cisco 2811 Router running IOS 12.4(3g). I wanted to upgrade it to 12.4(15).T5. Within my Cisco IOS license, I downloaded IOS version c2800nm-advipservicesk9-mz.124-15.T5.bin and made it available to download from the TFTP server on my PC.

Next, I used the reload warm file command, like this:
Router# reload warm file tftp://1.1.1.1/c2800nm-advipservicesk9-mz.124-15.T5.bin

This command actually has a number of options such as scheduling and creating a comment:

reload [/verify | /noverify] [warm [file url]] [in [hh:]mm | at hh:mm [month day | day month]] [cancel] [text]

The file that you are upgrading from could be any valid source that the router can access.

Click here to see what the warm reload upgrade file looks like.

To reiterate, the reload warm file command allows the router to read and decompress the image while the router continues to process packets. I was able to ping the router the whole time the image was being downloaded and decompressed. The router is only down for the very short time while the IOS image is overwritten with the new image. From my test, that downtime was about 45 seconds. It is amazing to be able to transfer a 45MB file to the router, have it installed, decompressed, and have the router reload, with only 45 seconds of downtime!

Now, what about warm reload?

How do you use warm reload in the Cisco IOS?

The job of the warm reload feature is to allow you to reload your routers without having to read the IOS image from flash. This allows the router to skip the ROMmon phase and copying the IOS image from flash and decompressing it. In other words, with warm reload, the router is able to reboot much faster than ever before. I did some time comparisons, and on my 2811 router, a regular reload took one minute where a warm reload took only 25 seconds.

Using warm reload is simple. You can configure the warm reboot functionality with the warm reboot global command, like this:

Router(config)# warm-reboot 10 uptime 10

This enables the router to reboot a maximum number of 10 times using the warm reboot function and ensures that the router will sit for no more than 10 minutes after an attempted warm reload that doesn't result in a successful boot.

Next, you must do one clean, cold reload of the router. After that, you can use the reload warm command to quickly reboot your router. You can also use show warm-reboot to find the statistics concerning how many warm reloads have happened and how much space is taken up by warm reload storage. Here is what it looks like:
Router# show warm-reboot
Warm Reboot is enabled
Maximum warm reboot count is 10
Uptime after which warm reboot is safe in case of a crash is 10 (min)

Statistics:
0 warm reboots due to crashes and 0 warm reboots due to requests have taken
place since the last cold reboot
1140 KB taken up by warm reboot storage
Router#
Other related commands are show warm-reboot and debug warm-reboot. A warm reboot looks similar to a normal reboot, but there is no initializing of the memory, no ROMmon initialization, and no decompressing of the IOS image. Again, don't forget to use the reload warm command or else it is just a regular reload.

Less downtime

The warm reload and warm upgrade commands are very useful for any Cisco router admin. I hope that these few simple commands can help keep your routers up and running and available!

For more information on these features, see the Cisco IOS official documentation on the warm upgrade and warm reload features of the Cisco IOS.

Want to learn more about router and switch management? Automatically sign up for our free Cisco Routers and Switches newsletter, delivered each Friday!

5 comments
bcrenshaw
bcrenshaw

Just upgraded a 2811 took about a minute, what A time saver 14 more to go thanks

justin.parker
justin.parker

Yah that would be perfect for large campuses.

rhindman
rhindman

Will this work on switches as well?

Selena Frye
Selena Frye

Have you used the warm upgrade/reload features yet?

ddavis
ddavis

Hi rhindman As far as I can tell, this is not offered in Cisco switches at this time. I checked 3 different models of switches that I have and I checked the lastest switch doc for the reload command and it doesn't appear to be offered. Hopefully, Cisco will make this available in switches soon as I think it would be great. Thanks for reading TechRepublic! -David Davis