How to upgrade a Cisco AirOS WLC

Upload the new image to the WLC. WLC used in this example is a 2504 but it is the same on all AirOS WLCs

CLI:

(Cisco Controller) >transfer download datatype code
(Cisco Controller) >transfer download mode ftp
(Cisco Controller) >transfer download username Cisco
(Cisco Controller) >transfer download password Cisco
(Cisco Controller) >transfer download serverip 10.46.100.105
(Cisco Controller) >transfer download path .
(Cisco Controller) >transfer download filename AIR-CT2500-K9-8-5-161-0.aes
(Cisco Controller) >transfer download start

Mode……………………………………… FTP
Data Type…………………………………. Code
FTP Server IP……………………………… 10.46.100.105
FTP Server Port……………………………. 21
FTP Path………………………………….. ./
FTP Filename………………………………. AIR-CT2500-K9-8-5-161-0.aes
FTP Username………………………………. WLC
FTP Password………………………………. *
This may take some time.
Are you sure you want to start? (y/N) y

GUI:
COMMANDS – Download File
File type: Code
Chose Transfer Mode (HTTP/TFTP/FTP/SFTP)
In the case of HTTP and chose where the file is located. If you are using FTP, then specify Server IP, File location, File name, Username, password and port.

HTTP Transfer
FTP Transfer

Both CLI and WEB will tell you when the download is compleated.

Verify that the image is on.

CLI:

(Cisco Controller) >show boot
Primary Boot Image…………………………. 8.5.161.0 (default)
Backup Boot Image………………………….. 8.5.151.0 (active)

GUI:
COMMANDS – Config Boot

Currently the running version is marked as active on the Backup Boot Image slot and the new version is on the Primary Boot Image slot with the marking of default. This means that when the controller reboots the default image will load and become active.

From here we have three choices. How to configure each options will be specified below.

1. Reboot the WLC:
If we do this the then the WLC will reboot. The APs will lose connection with the WLC and if no backup WLC is configured the AP will retry to rejoin the current WLC untill it is online again.
When the WLC is up with the new version and the APs joins then the WLC will push the new software to the APs. When the AP have the new software it will reboot and connect to the WLC with the correct version.

2. Pre-Download the image to the APs:
In this case we pre-download the image to the AP before the reboot.
We do the reboot of the WLC. The APs stays online and tries to rejoin the WLC until it is up again. When the WLC is up and the AP joins it will have the wrong version. But in this case the new software is already on the AP so it will only reboot and then rejoin the WLC.

3. Pre-Download the image to the APs and specify a time when the WLC and APs should be rebooted at the same time.
With this we will swap the default image back to the old version so it will not upgrade the WLC in case of a unplanned reboot before the upgrade service window. When we then issue the command we will swap the boot image on both WLC and AP and reboot all devices at the same time. When the WLC is back up the APs will already be on the correct version and will join the WLC directly and start connecting clients.
One big cavet with this is when there is a backup controller configuerd. The AP will reboot faster then the WLC and if the WLC is not online when the AP is started it will join the backup controller and if that WLC is not on the new version then the AP will reboot again and start with the old version.
So if using this command make shure that there is only one WLC (SSO or standalone) or that the backup WLC is already at the correct software level.


  1. Reboot the WLC:
    !!!If the WLC is in a HA(SSO) you will get an additional questions to reboot self, peer or both. For a upgrade you need to pick both!!!

CLI:

(Cisco Controller) >reset system

The system has unsaved changes.
Would you like to save them now? (y/N)

GUI:
COMMANDS – Reboot

2. Pre-Download the image to the APs:
CLI:

(Cisco Controller) >show ap image all

Total number of APs.............................. 2
Number of APs
        Initiated....................................... 0
        Downloading..................................... 0
        Predownloading.................................. 0
        Completed predownloading........................ 0
        Not Supported................................... 0
        Failed to Predownload........................... 0

                                                 Predownload     Predownload                                  Flexconnect
AP Name            Primary Image  Backup Image   Status          Version        Next Retry Time  Retry Count  Predownload
------------------ -------------- -------------- --------------- -------------- ---------------- ------------ --------------
DC                 8.5.151.0      8.5.135.0      None            None           NA               NA
VRUM               8.5.151.0      3.0.51.0       None            None           NA               NA


(Cisco Controller) >config ap image predownload primary all


(Cisco Controller) >show ap image all

Total number of APs.............................. 2
Number of APs
        Initiated....................................... 0
        Downloading..................................... 0
        Predownloading.................................. 2
        Completed predownloading........................ 0
        Not Supported................................... 0
        Failed to Predownload........................... 0

                                                 Predownload     Predownload                                  Flexconnect
AP Name            Primary Image  Backup Image   Status          Version        Next Retry Time  Retry Count  Predownload
------------------ -------------- -------------- --------------- -------------- ---------------- ------------ --------------
DC                 8.5.151.0      8.5.135.0      Predownloading  8.5.161.0      NA               0
VRUM               8.5.151.0      3.0.51.0       Predownloading  8.5.161.0      NA               0


(Cisco Controller) >show ap image all

Total number of APs.............................. 2
Number of APs
        Initiated....................................... 0
        Downloading..................................... 0
        Predownloading.................................. 0
        Completed predownloading........................ 2
        Not Supported................................... 0
        Failed to Predownload........................... 0

                                                 Predownload     Predownload                                  Flexconnect
AP Name            Primary Image  Backup Image   Status          Version        Next Retry Time  Retry Count  Predownload
------------------ -------------- -------------- --------------- -------------- ---------------- ------------ --------------
DC                 8.5.151.0      8.5.161.0      Complete        8.5.161.0      NA               NA
VRUM               8.5.151.0      8.5.161.0      Complete        8.5.161.0      NA               NA

GUI:
WIRELESS- Global Configuration – Download Primary
Verify that all APs have downloaded the image under: Wireless – All APs You need to scroll to the right and look at the “Download Status”

You are now ready to reload the WLC. Follow the same procedure as shown before in ether CLI or GUI.

3. Pre-Download the image to the APs and specify a time when the WLC and APs should be rebooted at the same time.

CLI:

WLC Image Swap:

(Cisco Controller) >show boot
Primary Boot Image............................... 8.5.161.0 (default)
Backup Boot Image................................ 8.5.151.0 (active)


(Cisco Controller) >config boot backup


(Cisco Controller) >show boot
Primary Boot Image............................... 8.5.161.0
Backup Boot Image................................ 8.5.151.0 (default) (active)

Predownload as show abow:

(Cisco Controller) >config ap image predownload primary all
(Cisco Controller) >show ap image all

Total number of APs.............................. 2
Number of APs
        Initiated....................................... 0
        Downloading..................................... 0
        Predownloading.................................. 0
        Completed predownloading........................ 2
        Not Supported................................... 0
        Failed to Predownload........................... 0

                                                 Predownload     Predownload                                  Flexconnect
AP Name            Primary Image  Backup Image   Status          Version        Next Retry Time  Retry Count  Predownload
------------------ -------------- -------------- --------------- -------------- ---------------- ------------ --------------
DC                 8.5.161.0      8.5.151.0      Complete        8.5.161.0      NA               NA
VRUM               8.5.161.0      8.5.151.0      Complete        8.5.161.0      NA               NA

Use the reset system in with the following add on. I have not found a way in GUI to do this.

(Cisco Controller) >reset system in 00:01:01 image swap reset-aps save-config

System reset is scheduled for Jul 01 13:28:57 2020.
Current local time and date is Jul 01 13:27:56 2020.
Trap will not be generated as total delay is less than the trap time.
Active boot image will be changed before the reset.
Use 'reset system cancel' to cancel the reset.
Configuration will be saved before the system reset.

(Cisco Controller) >

GUI:

WLC Image Swap:
COMMANDS – Config Boot

Before changing Boot image
After changing Boot image. Note that the Swap dropdown will still say Primary after applying but its the default and active markings that are showing whats actually are set..

Do the AP pre-download as show before.

For the reload you will need to use CLI sense you can’t specify AP reboot in GUI.

To verify that the now code is working and is both default and active:

CLI:

(Cisco Controller) >show boot
Primary Boot Image............................... 8.5.161.0 (default) (active)
Backup Boot Image................................ 8.5.151.0

GUI:
COMMANDS – Config Boot