cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
2554
Views
5
Helpful
3
Comments
Deepak Kumar
VIP Alumni
VIP Alumni

I decided to share a real-life (Production Switch) up-gradation process of Cisco 3850 Switches. I know there are many blogs and documents on the same but I want to share all (almost) queries in one place. You may face any one issue during the up-gradation process. Let’s start with some basic questions:

 

  1. Will a single Image works on all Cisco 3850 Series switches?

Ans: Yes, A Image will work on all switches of Cisco 3850 switches. 

 

  1. How much space do I require?

Ans: The IOS version 16.3.9 file size is 512 Mb and also required some more space for extracting the file so it is advised to run “Software Clear” before starting the copying the file from TFTP/USB to flash.

 

  1. Do I need to copy the IOS file on all Switch flash(s) in a stack?

Ans: No, Why I will explain the use of the “Auto-Copy” feature.

 

  1. How to download the ISO file and which version is recommended?

Ans: You can download a file from “https://software.cisco.com/download/home” but you must have a valid cisco account and contract for the same. 

 

  1. How to verify File Checksum Integrity?

Ans: I am always checking checksum integrity after transferring the file on the flash memory and before starting the “Install” command. It is very helpful to identify the corrupted or altered file and save unwanted downtime and time. I will explain later to use the “Verify /md5 flash:xxxxxxxx.bin” command.

 

  1. How to clear flash memory?

Answer: It is recommended that you run the "Software clean" command before copying the .bin file to flash memory; otherwise, the "Software clear" process will remove .bin. This command will remove all unused files from flash memory:

Note: It will not delete the current / running ios files / the startup file / the VLAN.dat file. My friend always writes "Write memory" after the "Software cleaning" process.

 

  1. Do you need some music during this process?

Ans: This is really a personal question and there is no link between the switch upgrade process and music but I always preferred to listen to “Punjabi Music”. I am feeling relaxed. 

 

  1. Which version of IOS will choose for upgradation:

Ans: You must go through the release note and your network requirement. You must verify in your lab and network before the process of the upgrade. I will always choose the MD + Cisco recommended version.

 

  1. Do I require any backup or log?

Ans: It is always recommended to collect logs before and after upgrading. You must compare both records and there should be no discrepancy since no interface is inactive, the hardware is not detected, the routing protocol is inactive, etc.

 

Let’s start the switch up-gradation process as:

 

Preparation checklist:

  1. Have you downloaded the Cisco ISO file?
  2. Do you have approved downtime?
  3. Have you verified an alternative/backup path, if any?
  4. Is your  FTP/TFTP server ready?
  5. Support engineers with a proper console cable and internet connection are available on the site to provide access in case of emergency (If you are working remotely). 
  6. Have you paused the switch and all connected devices in your monitoring system?
  7. Is it a stack or standalone switch? If it is a stack then how many switches are in the stack? 

 

Let’ verify current installed method and stack:

 

  1. Run a “Show Version” command to extract the required information  as:

 

stack_switch#sh ver

Cisco IOS Software [Denali], Catalyst L3 Switch Software (CAT3K_CAA-UNIVERSALK9-M), Version 16.3.7, RELEASE SOFTWARE (fc4)

 

! (omit)

 

Switch Ports        Model              SW Version        SW Image                              Mode   

------ ----- -----              ----------        ----------            ----   

*    1 56    WS-C3850-48P       16.3.7            CAT3K_CAA-UNIVERSALK9   INSTALL

     2 56    WS-C3850-48P       16.3.7            CAT3K_CAA-UNIVERSALK9   INSTALL

 

Here, you noticed that currently this stack is running on 16.3.7 version in INSTALLED mode and there are two switches in this sack.

 

  1. Verify the space and files stored on the flash:

 

stack_switch#sh flash:

-#- --length-- ---------date/time--------- path

  2    2097152 Nov 22 2019 13:45:41.0000000000 +00:00 nvram_config

  3       4096 May 19 2019 18:36:23.0000000000 +00:00 core

 !(omit)

 28      52717 May 18 2019 01:36:48.0000000000 +00:00 pnp-tech-discovery-summary

456368128 bytes available (1083207680 bytes used)

 

Here, this stack is having less space as 456Mb. You would require software clean command.

 

  1. Run Software Clean Process:

stack_switch#request platform software package clean switch all file flash:

Running command on switch 1

Cleaning up unnecessary package files

  Scanning boot directory for packages ... done.

  Preparing packages list to delete ...

    cat3k_caa-guestshell.16.03.07.SPA.pkg

      File is in use, will not delete.

    cat3k_caa-rpbase.16.03.07.SPA.pkg

      File is in use, will not delete.

    cat3k_caa-rpcore.16.03.07.SPA.pkg

      File is in use, will not delete.

    cat3k_caa-srdriver.16.03.07.SPA.pkg

      File is in use, will not delete.

    packages.conf

      File is in use, will not delete.

    cat3k_caa-wcm.16.03.07.SPA.pkg

      File is in use, will not delete.

    cat3k_caa-webui.16.03.07.SPA.pkg

      File is in use, will not delete.

  done.

Running command on switch 2

Cleaning up unnecessary package files

 

  Scanning boot directory for packages ... done.

  Preparing packages list to delete ...

    cat3k_caa-guestshell.16.03.07.SPA.pkg

      File is in use, will not delete.

    cat3k_caa-wcm.16.03.07.SPA.pkg

      File is in use, will not delete.

    cat3k_caa-webui.16.03.07.SPA.pkg

      File is in use, will not delete.

    packages.conf

      File is in use, will not delete.

    cat3k_caa-rpbase.16.03.07.SPA.pkg

      File is in use, will not delete

    cat3k_caa-rpcore.16.03.07.SPA.pkg

      File is in use, will not delete.

    cat3k_caa-srdriver.16.03.07.SPA.pkg

      File is in use, will not delete.

 

  done.

 

 

The following files will be deleted:

[1]:

/flash/cat3k_caa-base.SPA.03.06.03E.pkg

/flash/cat3k_caa-drivers.SPA.03.06.03E.pkg

/flash/cat3k_caa-guestshell.16.03.09.SPA.pkg

/flash/cat3k_caa-infra.SPA.03.06.03E.pkg

/flash/cat3k_caa-iosd-universalk9.SPA.152-2.E3.pkg

/flash/cat3k_caa-platform.SPA.03.06.03E.pkg

/flash/cat3k_caa-rpbase.16.03.09.SPA.pkg

/flash/cat3k_caa-rpcore.16.03.09.SPA.pkg

/flash/cat3k_caa-srdriver.16.03.09.SPA.pkg

/flash/cat3k_caa-universalk9.16.03.09.SPA.conf

/flash/cat3k_caa-wcm.16.03.09.SPA.pkg

/flash/cat3k_caa-wcm.SPA.10.2.131.0.pkg

/flash/cat3k_caa-webui.16.03.09.SPA.pkg

/flash/packages.conf.00-

/flash/packages.conf.01-

[2]:

 

/flash/cat3k_caa-base.SPA.03.06.03E.pkg

/flash/cat3k_caa-drivers.SPA.03.06.03E.pkg

/flash/cat3k_caa-infra.SPA.03.06.03E.pkg

/flash/cat3k_caa-iosd-universalk9.SPA.152-2.E3.pkg

/flash/cat3k_caa-platform.SPA.03.06.03E.pkg

/flash/cat3k_caa-srdriver.16.03.06.SPA.pkg

/flash/cat3k_caa-wcm.SPA.10.2.131.0.pkg

/flash/cat3k_caa-webui.16.03.06.SPA.pkg

/flash/packages.conf.00-

 

Do you want to proceed? [y/n]y

[1]:

Deleting file flash:cat3k_caa-base.SPA.03.06.03E.pkg ... done.

Deleting file flash:cat3k_caa-drivers.SPA.03.06.03E.pkg ... done.

Deleting file flash:cat3k_caa-guestshell.16.03.09.SPA.pkg ... done.

Deleting file flash:cat3k_caa-infra.SPA.03.06.03E.pkg ... done.

Deleting file flash:cat3k_caa-iosd-universalk9.SPA.152-2.E3.pkg ... done.

Deleting file flash:cat3k_caa-platform.SPA.03.06.03E.pkg ... done.

Deleting file flash:cat3k_caa-rpbase.16.03.09.SPA.pkg ... done.

Deleting file flash:cat3k_caa-rpcore.16.03.09.SPA.pkg ... done.

Deleting file flash:cat3k_caa-srdriver.16.03.09.SPA.pkg ... done.

Deleting file flash:cat3k_caa-universalk9.16.03.09.SPA.conf ... done.

Deleting file flash:cat3k_caa-wcm.16.03.09.SPA.pkg ... done.

Deleting file flash:cat3k_caa-wcm.SPA.10.2.131.0.pkg ... done.

Deleting file flash:cat3k_caa-webui.16.03.09.SPA.pkg ... done.

Deleting file flash:packages.conf.00- ... done.

Deleting file flash:packages.conf.01- ... done.

SUCCESS: Files deleted.

[2]:

 

Deleting file flash:cat3k_caa-base.SPA.03.06.03E.pkg ... done.

Deleting file flash:cat3k_caa-drivers.SPA.03.06.03E.pkg ... done.

Deleting file flash:cat3k_caa-infra.SPA.03.06.03E.pkg ... done.

Deleting file flash:cat3k_caa-iosd-universalk9.SPA.152-2.E3.pkg ... done.

Deleting file flash:cat3k_caa-platform.SPA.03.06.03E.pkg ... done.

Deleting file flash:cat3k_caa-srdriver.16.03.06.SPA.pkg ... done.

Deleting file flash:cat3k_caa-wcm.SPA.10.2.131.0.pkg ... done.

Deleting file flash:cat3k_caa-webui.16.03.06.SPA.pkg ... done.

Deleting file flash:packages.conf.00- ... done.

 

SUCCESS: Files deleted.

 

  1. Copy IOS file on the Switch flash:

 

stack_switch#copy ftp: flash:

Address or name of remote host X.X.X.X

Source filename cat3k_caa-universalk9.16.03.09.SPA.bin

Destination filename [cat3k_caa-universalk9.16.03.09.SPA.bin]?

!(omit)

Accessing ftp://X.X.X.X/cat3k_caa-universalk9.16.03.09.SPA.bin...

Loading  /cat3k_caa-universalk9.16.03.09.SPA.bin !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

[OK - 537337933/4096 bytes]

 

537337933 bytes copied in 3882.891 secs (138386 bytes/sec)

 

  1. Let’s verify File checksum:

sack_switch#verify /md5 flash: cat3k_caa-universalk9.16.03.09.SPA.bin

Verify filename []? cat3k_caa-universalk9.16.03.09.SPA.bin

................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................Done!

Computed signature  = e69855fc0360eecd54c095125d5962ca

Submitted signature = cat3k_caa-universalk9.16.03.09.s

 

This computed signature must match with the Cisco website’s MD5 value as below screenshot:md5.png

As this file is passed MD5 checksum verification means it is safe to start upgrading.

 

  1. Software Installation:

 

stack_switch#request platform software package install switch all file flash:cat3k_caa-universalk9.16.03.09.SPA.bin auto-copy

 

--- Starting install local lock acquisition on switch 1 ---

Finished install local lock acquisition on switch 1

 

Expanding image file: flash:cat3k_caa-universalk9.16.03.09.SPA.bin

[1]: Copying flash:cat3k_caa-universalk9.16.03.09.SPA.bin from switch 1 to switch 2

[2]: Finished copying to switch 2

[1 2]: Expanding file

[1 2]: Finished expanding all-in-one software package in switch 1 2

SUCCESS: Finished expanding all-in-one software package.

[1 2]: Performing install

  SUCCESS: install Finished

[1]: install package(s) on switch 1

--- Starting list of software package changes ---

Old files list:

  Removed cat3k_caa-guestshell.16.03.07.SPA.pkg

  Removed cat3k_caa-rpbase.16.03.07.SPA.pkg

  Removed cat3k_caa-rpcore.16.03.07.SPA.pkg

  Removed cat3k_caa-srdriver.16.03.07.SPA.pkg

  Removed cat3k_caa-wcm.16.03.07.SPA.pkg

  Removed cat3k_caa-webui.16.03.07.SPA.pkg

New files list:

  Added cat3k_caa-guestshell.16.03.09.SPA.pkg

  Added cat3k_caa-rpbase.16.03.09.SPA.pkg

  Added cat3k_caa-rpcore.16.03.09.SPA.pkg

  Added cat3k_caa-srdriver.16.03.09.SPA.pkg

  Added cat3k_caa-wcm.16.03.09.SPA.pkg

  Added cat3k_caa-webui.16.03.09.SPA.pkg

Finished list of software package changes

SUCCESS: Software provisioned.  New software will load on reboot.

[1]: Finished install successful on switch 1

[2]: install package(s) on switch 2

--- Starting list of software package changes ---

 

Old files list:

  Removed cat3k_caa-guestshell.16.03.07.SPA.pkg

  Removed cat3k_caa-rpbase.16.03.07.SPA.pkg

  Removed cat3k_caa-rpcore.16.03.07.SPA.pkg

  Removed cat3k_caa-srdriver.16.03.07.SPA.pkg

  Removed cat3k_caa-wcm.16.03.07.SPA.pkg

  Removed cat3k_caa-webui.16.03.07.SPA.pkg

 

New files list:

 

  Added cat3k_caa-guestshell.16.03.09.SPA.pkg

  Added cat3k_caa-rpbase.16.03.09.SPA.pkg

  Added cat3k_caa-rpcore.16.03.09.SPA.pkg

  Added cat3k_caa-srdriver.16.03.09.SPA.pkg

  Added cat3k_caa-wcm.16.03.09.SPA.pkg

  Added cat3k_caa-webui.16.03.09.SPA.pkg

Finished list of software package changes

 

SUCCESS: Software provisioned.  The new software will load on reboot.

[2]: Finished install successful on switch 2

Checking status of install on [1 2]

[1 2]: Finished install in switch 1 2

SUCCESS: Finished install: Success on [1 2]

 

Here, you noticed that I used a keyword “Auto-Copy” which is required because if we didn’t copy software images on all switch (stack members) and it will auto-copy that file and process the installation. The above command is replaced with old “Software install” command in version 16.X.X so if you working on the old version then this command may not work for you.

 

If you will not use this command then the installation process will be aborted and you have to start the process from the starting again and an error message will be like:

 

[2]: FAILED: Specified package file flash:cat3k_caa-universalk9.16.03.09.SPA.bin does not exist

[1]: Finished expanding all-in-one software package in switch 1

[2]: FAILED: Expanding all-in-one software package failed in switch 2

  FAILED: Unable to expand flash:cat3k_caa-universalk9.16.03.09.SPA.bin

 

G: Restart the Stack to finish the up-gradation process:

stack_switch#reload

Reload command is being issued on Active unit, this will reload the whole stack

Proceed with reload? [confirm]

 

The stack will come back after a successful restore. This may take 10-15 minutes. 

 

Comments
jayant5805
Level 1
Level 1

Thanks dude, great work!!!

Leo Laohoo
Hall of Fame
Hall of Fame
Nice thread, Deepak. Permit me to add this: Did anyone read the Release Notes? Aside from bugs, Release Notes also contain very valuable information, such as: 1. The Install Mode command is version-dependent: The command is different in 3.X.X and in 16.X.X. 2. In 17.X.X an additional step is added - Golden ROMMON Capsule Upgrade 3. Hardware support - what module/line card is supported in which version.
as.almutairi
Level 1
Level 1

Thank's it's helpful

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Innovations in Cisco Full Stack Observability - A new webinar from Cisco