Showing results for 
Search instead for 
Did you mean: 

OS upgrade using NSO

Cisco Employee

Do you need to upgrade the OS on your infrastructure devices?


If the answer to this question is “yes” then you may have an easy solution through NSO (Network Service Orchestrator). Cisco Advanced Services has developed a pre-packaged NSO-based OS Upgrade service, that can perform Software upgrades on infrastructure devices.


What are the supported Platforms?


Currently Cisco IOS (Cat 3560, Cat 4900), NX-OS (Nexus 5k), IOS-XE, ASA and STAR-OS (ASR5k) have been validated. More platforms (including multivendor OS) will be validated in future releases.


Available Features:


  1. Open architecture: Generic upgrade platform to support user-configurable upgrade process for any device family.
  2. Batch upgrades:  Can upgrade multiple devices in parallel using individual upgrade threads per device.
  3. Pre-upgrade Validation-rules: User can define a set of validation rules to perform health-checks on the device prior to upgrade.
  4. Plan of upgrade: User can define the upgrade process with a sequence of commands to execute with success / failure criteria.
  5. Pre / Post Checks: User can define the commands, which can be executed before & after the upgrade to identify any difference in device configs.
  6. Lazy Upgrade: Runs the upgrade process on the device only when it is required. It skips the upgrade action if the device is already on target OS.
  7. Critical BUG Check: validate if there is a critical bug(s) that is associated with the target image. BUG table is maintained within NSO CDB.
  8. Upgrade Report: Generates side-by-side HTML color-coded report highlighting the difference between pre & post health-checks.


For further information please contact the Cisco Advanced Services team, Syed Ziaullah (, Solution Architect, Manish Jain (, Director Software Integration and Orchestration and Filip Marest (, Business Architect


Cisco Employee

Hi Syed,

It was a very informative session. The packages are  created in  python or java ?

Cisco Employee

the current package is in Java.

Cisco Employee

Has this package been updated since this post was created? Is IOS XR supported or planned to?

Cisco Employee

Yes, the package has gone through a major update and can now support following features

  • Serial and Parallel upgrade
  • Single step and multistep upgrade
  • Staging the OS on device
  • Support for Regional download server
  • Support for Regional backup server
  • File cleanup on Flash (if needed)

XR is supported as well. We can validate the platform if needed. Please reach out to "" for more details.




Hello, This video doesn't seem to be available anymore? (There is no option to "play" the video) Is this available via an alternative link, or is there any documentation on IOS Upgrades using NSO? Thank you! Tom