Perform System Upgrade and Install Feature Packages

The system upgrade and package installation processes are executed using install commands on the router. The processes involve adding and activating the iso images (.iso) and feature packages on the router. These files are accessed from a network server and then activated on the router. If the installed package or SMU causes any issue on the router, it can be uninstalled.

The topics covered in this chapter are:

Upgrading the System

Upgrading the system is the process of installing a new version of the Cisco IOS XR operating system on the router. The router comes pre-installed with the Cisco IOS XR image. However, you can install the new version in order to keep router features up to date. The system upgrade operation is performed from the XR VM. However, during system upgrade, the software that runs on both the XR VM and the System Admin VM get upgraded.


Note

The 1G interface flaps twice instead of once in the Modular Port Adapter (MPA) NC55-MPA-12T-S after you reload any of these NCS 55A2 Fixed Chassis - NCS-55A2-MOD-SL, NCS-55A2-MOD-HD-S, NCS-55A2-MOD-HX-S, or NCS-55A2-MOD-SE-S.



Note

If you insert a line card on a router that is running a lower version than the one the line card supports, the line card will fail to boot. You must first upgrade the router to a software version that supports the line card, insert the line card and iPXE boot the line card. For more information, see Boot the Router Using iPXE.



Note

If an interface on a router does not have a configuration and is brought up by performing no-shut operation, then upon router reload, the interface state changes to admin-shutdown automatically.

System upgrade is done by installing a base package–Cisco IOS XR Unicast Routing Core Bundle. The file name for this bundle is ncs5500-mini-x.iso. Install this ISO image using install commands. For more information about the install process, see Workflow for Install Process.


Caution

Do not perform any install operations when the router is reloading.

Do not reload the router during an upgrade operation.


Cisco IOS XR supports RPM signing and signature verification for Cisco IOS XR RPM packages in the ISO and upgrade images. All RPM packages in the Cisco IOS XR ISO and upgrade images are signed to ensure cryptographic integrity and authenticity. This guarantees that the RPM packages have not been tampered with and the RPM packages are from Cisco IOS XR. The private key, used for signing the RPM packages, is created and securely maintained by Cisco.

For more information on upgrading the system and the RPMs, see Manage Automatic Dependency chapter.

Upgrading Features

Upgrading features is the process of deploying new features and software patches on the router. Feature upgrade is done by installing package files, termed simply, packages. Software patch installation is done by installing Software Maintenance Upgrade (SMU) files.

Installing a package on the router installs specific features that are part of that package. Cisco IOS XR Software is divided into various software packages; this enables you to select the features to run on your router. Each package contains components that perform a specific set of router functions, such as routing, security, and so on.

For example, the components of the routing package are split into individual RPMs, such as BGP and OSPF. BGP is a mandatory RPM which is a part of the base software version and hence cannot be removed. Optional RPMs such as OSPF can be added and removed as required.

The naming convention of the package is <platform>-<pkg>-<pkg version>-<release version>.<architecture>.rpm. Standard packages are as follows:

Feature

Package

Forwarding

ncs5500-fwding-1.0.0.0-<release-number>.x86_64.rpm

BGP

ncs5500-bgp-1.0.0.0-<release-number>.x86_64.rpm

mpls-te-rsvp

ncs5500-mpls-te-rsvp-1.0.0.0-<release-number>.x86_64.rpm

k9sec

ncs5500-k9sec-1.0.0.0-<release-number>.x86_64.rpm

mgbl

ncs5500-mgbl-2.0.0.0-<release-number>.x86_64.rpm

mpls

ncs5500-mpls-1.0.0.0-<release-number>.x86_64.rpm

routing

ncs5500-routing-1.0.0.0-<release-number>.x86_64.rpm

security

ncs5500-security-1.0.0.0-<release-number>.x86_64.rpm

Package and SMU installation is performed using install commands. For more information about the install process, see Install Packages.

There are separate packages and SMUs for the XR VM and the System Admin VM. They can be identified by their filenames. The XR and System Admin packages and SMUs can be activated from XR and System Admin VMs.

You can alternatively perform a cross VM operation, by activationg or deactivating the System Admin packages and SMUs from XR.

For more information on upgrading the system and the RPMs, see Cisco IOS XR Flexible Packaging Configuration Guide.

Third-Party SMUs

Consider these points while activating and deactivating third-party SMUs:

  • To activate a third-party SMU, you should have a corresponding base package.

  • When you activate a third-party SMU, the corresponding third-party base package state is inactive, this is an expected behavior.

  • To deactivate a third-party SMU, ensure that you activate the corresponding third-party base package. Third-party SMUs deactivated explicitly might lead to triages to the install team.


Note

All SMUs are bundled together with the base package in a TAR file



Note

All Cisco RPMs have the platform name in the filename. For example, ncs5500-sysadmin.


Workflow for Install Process

The workflow for installation and uninstallation processes is depicted in this flowchart.

For installing a package, see Install Packages. For uninstalling a package, see Uninstall Packages.

Install Packages

Complete this task to upgrade the system or install a patch. The system upgrade is done using an ISO image file, while the patch installation is done using packages and SMUs. You can also include SMUs in an upgrade operation along with mini ISO.

This task is also used to install .rpm files. The .rpm file contains multiple packages and SMUs that are merged into a single file. The packaging format defines one RPM per component, without dependency on the card type.


Note

  • The System Admin package and XR package can be executed using install commands in the System Admin EXEC mode and XR EXEC mode. All install commands are applicable in both these modes.

  • Install operation over IPv6 is not supported.


The workflow for installing a package is shown in this flowchart.

Figure 1. Installing Packages Workflow

Add packages workflow

Before you begin

  • Configure and connect to the management port. The installable file is accessed through the management port. For details about configuring the management port, see Configure the Management Port.

  • Copy the package to be installed either on the router's hard disk or on a network server to which the router has access.

SUMMARY STEPS

  1. Execute one of these:
    • install add source <http or shttp transfer protocol>/package_path/ filename1 filename2 ...
    • install add source <tftp transfer protocol>/package_path/ filename1 filename2 ...
    • install add source <ftp or sftp transfer protocol>//user@server:/package_path/ filename1 filename2 ...
  2. show install request
  3. show install repository
  4. show install inactive
  5. Execute one of these:
    • install activate package_name
    • install activate id operation_id
  6. show install active
  7. install commit

DETAILED STEPS


Step 1

Execute one of these:

  • install add source <http or shttp transfer protocol>/package_path/ filename1 filename2 ...
  • install add source <tftp transfer protocol>/package_path/ filename1 filename2 ...
  • install add source <ftp or sftp transfer protocol>//user@server:/package_path/ filename1 filename2 ...

Example:

RP/0/RP0/CPU0:router#install add source /harddisk:/ncs5500-mpls-1.0.0.0-r600.x86_64.rpm ncs5500-mgbl-2.0.0.0-r600.x86_64.rpm 
 
or
RP/0/RP0/CPU0:router#install add source /harddisk:/ncs5500-mpls-1.0.0.0-<release-number>.x86_64.rpm ncs5500-mgbl-2.0.0.0-<release-number>.x86_64.rpm 
 
or
Note 

A space must be provided between the package_path and filename.

The software files are unpacked from the package, validated, and then added to the software repository. This operation might take time depending on the size of the files being added. The operation is performed in asynchronous mode. The install add command runs in the background, and the EXEC prompt is returned as soon as possible.

Note 

The repositories for the XR VM and the System Admin VM are different. The system automatically adds a routing package to the XR VM repository and a system administration package to the System Admin VM repository.

Step 2

show install request

Example:

RP/0/RP0/CPU0:router#show install request

(Optional) Displays the operation ID of the add operation and its status. The operation ID can be later used to execute the activate command.

Install operation 8 is still in progress

For system administration packages, the remaining steps must be performed from the System Admin EXEC mode. Use the admin command to enter the System Admin EXEC mode.

Step 3

show install repository

Example:

RP/0/RP0/CPU0:router#show install repository

Displays packages that are added to the repository. Packages are displayed only after the install add operation is complete.

Step 4

show install inactive

Example:

RP/0/RP0/CPU0:router#show install inactive

Displays inactive packages that are present in the repository. Only inactive packages can be activated.

Step 5

Execute one of these:

  • install activate package_name
  • install activate id operation_id

Example:

RP/0/RP0/CPU0:router#install activate ncs5500-mpls-1.0.0.0-<release-number>.x86_64.rpm ncs5500-mgbl-2.0.0.0-<release-number>.x86_64.rpm
or
RP/0/RP0/CPU0:router#install activate id 8

The operation_id is that of the install add operation. This command can also be run from System Admin mode. The package configurations are made active on the router. As a result, new features and software fixes take effect. This operation is performed in asynchronous mode, as this is the default. The install activate command runs in the background, and the EXEC prompt is returned.

You can run the activate operation either through the synchronous mode or by selecting the sync option from the CLI.

If you use the operation ID, all packages that were added in the specified operation are activated together. For example, if 5 packages are added in operation 8, by executing install activate id 8 , all 5 packages are activated together. You do not have to activate the packages individually.

Activation does not happen instantaneously, but takes some time. Upon activation completion, the system reloads automatically. For restart SMU activation, the SMU takes effect once the processes impacted by the SMU are restarted.

If the SMU has dependency on both XR VM and System Admin VM, perform the reload after activating the SMU in both VMs so that they take effect simultaneously. To reload the router, use the hw-module location all reload command from the System Admin EXEC mode.

Step 6

show install active

Example:

RP/0/RP0/CPU0:router#show install active

Displays packages that are active.


Node 0/RP0/CPU0 [RP]
Boot Partition: xr_lv70
Active Packages: 24
ncs5500-xr-<release-number> version=<release-number> [Boot image]
ncs5500-k9sec-1.0.0.0-<release-number>
ncs5500-mgbl-2.0.0.0-<release-number>
ncs5500-mpls-1.0.0.0-<release-number>
ncs5500-mpls-te-rsvp-1.0.0.0-<release-number>
ncs5500-infra-2.0.0.2-<release-number>.CSCxr22222
ncs5500-iosxr-fwding-2.0.0.2-<release-number>.CSCxr22222
ncs5500-iosxr-fwding-2.0.0.5-<release-number>.CSCxr90016
ncs5500-iosxr-fwding-2.0.0.1-<release-number>.CSCxr55555
ncs5500-iosxr-fwding-2.0.0.6-<release-number>.CSCxr90017
ncs5500-dpa-1.0.0.1-<release-number>.CSCxr90002
ncs5500-dpa-1.0.0.2-<release-number>.CSCxr90004
ncs5500-dpa-fwding-1.0.0.1-<release-number>.CSCxr90005
ncs5500-k9sec-1.0.0.1-<release-number>.CSCxr80008
ncs5500-os-support-1.0.0.1-<release-number>.CSCxr90013
ncs5500-os-support-1.0.0.2-<release-number>.CSCxr90014
ncs5500-fwding-1.0.0.2-<release-number>.CSCxr90011
ncs5500-fwding-1.0.0.5-<release-number>.CSCxr90019
ncs5500-fwding-1.0.0.1-<release-number>.CSCxr90010
ncs5500-fwding-1.0.0.4-<release-number>.CSCxr90018
ncs5500-mgbl-2.0.0.2-<release-number>.CSCxr80009
ncs5500-mpls-1.0.0.1-<release-number>.CSCxr33333
ncs5500-mpls-te-rsvp-1.0.0.2-<release-number>.CSCxr33335

From the result, verify that the same image and package versions are active on all RPs and LCs.

Step 7

install commit

Example:

RP/0/RP0/CPU0:router#install commit

Commits the Host, XR, and System Admin newly active software.

Note 

On Multi-SDR mode, you can use the install commit sdr to commit just the sdr from where the CLI is being triggered.


Installing Packages: Related Commands

Related Commands Purpose

show install log

Displays the log information for the install process; this can be used for troubleshooting in case of install failure.

show install package

Displays the details of the packages that have been added to the repository. Use this command to identify individual components of a package.

install prepare

Makes pre-activation checks on an inactive package, to prepare it for activation.

show install prepare

Displays the list of package that have been prepared and are ready for activation.

What to do next

  • Ensure that you commit the upgrade using install commit .

  • After performing a system upgrade, upgrade FPD by using the upgrade hw-module location all fpd all command from the System Admin EXEC mode. The progress of FPD upgrade process can be monitored using the show hw-module fpd command in the System Admin EXEC mode. Reload the router after the FPD upgrade is completed.

  • Verify the installation using the install verify packages command.

  • Uninstall the packages or SMUs if their installation causes any issues on the router. See Uninstall Packages.


    Note

    ISO images cannot be uninstalled. However, you can perform a system downgrade by installing an older ISO version.



    Note

    If you are upgrading power supply modules for NC55-PWR-3KW-DC and NC55-PWR-3KW-2HV, ensure that you first upgrade SC IO FPGA by using upgrade hw-module location <SC0/SC1> fpd all command from Sysadmin prompt followed by the upgrade hw-module location pm-all fpd command, to upgrade FPD.

    Finally use hw-module location <SC0/SC1> reload command from Sysadmin prompt to reload the shelf controller.


Install Prepared Packages

  • If the installable file is corrupted, the prepare process fails. This provides an early warning of the problem. If the corrupted file was activated directly, it might cause router malfunction.

  • Directly activating an ISO image for system upgrade takes considerable time during which the router is not usable. However, if the image is prepared before activation, not only does the prepare process run asynchronously, but when the prepared image is subsequently activated, the activation process too takes less time. As a result, the router downtime is reduced.

A system upgrade or feature upgrade is performed by activating the ISO image file, packages, and SMUs. It is possible to prepare these installable files before activation. During the prepare phase, preactivation checks are made and the components of the installable files are loaded on to the router setup. The prepare process runs in the background and the router is fully usable during this time. When the prepare phase is over, all the prepared files can be activated instantaneously. The advantages of preparing before activation are:

  • If the installable file is corrupted, the prepare process fails. This provides an early warning of the problem. If the corrupted file was activated directly, it might cause router malfunction.

  • Directly activating an ISO image for system upgrade takes considerable time during which the router is not usable. However, if the image is prepared before activation, not only does the prepare process run asynchronously, but when the prepared image is subsequently activated, the activation process too takes less time. As a result, the router downtime is considerably reduced.

  • Performs disk-space check that is required for a successful operation. This quantifies the disk-space deficit, and provides you possible alternatives to free up space in the filesystem.

  • Performs package compatibility check. This ensures that all the required installation packages are available. For any package compatibility check error, details of the package and version are logged.

Complete this task to upgrade the system and install packages by making use of the prepare operation.

Note

Depending on whether you are installing a System Admin package or a XR package, execute the install commands in the System Admin EXEC mode or XR EXEC mode respectively. All install commands are applicable in both these modes. System Admin install operations can be done from XR mode.


SUMMARY STEPS

  1. Add the required ISO image and packages to the repository.
  2. show install repository
  3. Execute one of these:
    • install prepare package_name
    • install prepare id operation_id
  4. show install prepare
  5. install activate
  6. show install active
  7. install commit

DETAILED STEPS


Step 1

Add the required ISO image and packages to the repository.

For details, see Install Packages.
Step 2

show install repository

Example:

RP/0/RP0/CPU0:router#show install repository

Perform this step to verify that the required installable files are available in the repository. Packages are displayed only after the "install add" operation is complete.

Step 3

Execute one of these:

  • install prepare package_name
  • install prepare id operation_id

Example:

RP/0/RP0/CPU0:router#install prepare ncs5500-mpls-1.0.0.0-r60023I.x86_64.rpm 
	
or
RP/0/RP0/CPU0:router#install prepare id 8

The prepare process takes place. This operation is performed in asynchronous mode. The install prepare command runs in the background, and the EXEC prompt is returned as soon as possible.

If you use the operation ID, all packages that were added in the specified operation are prepared together. For example, if 5 packages are added in operation 8, by executing install prepare id 8 , all 5 packages are prepared together. You do not have to prepare the packages individually.

Step 4

show install prepare

Example:

RP/0/RP0/CPU0:router#show install prepare

Displays packages that are prepared. From the result, verify that all the required packages have been prepared.

Step 5

install activate

Example:

RP/0/RP0/CPU0:router#install activate

All the packages that have been prepared are activated together to make the package configurations active on the router.

Note 
You should not specify any package name or operation ID in the CLI.

Activations of some SMUs require manual reload of the router. When such SMUs are activated, a warning message is displayed to perform reload. The components of the SMU get activated only after the reload is complete. Perform router reload immediately after the execution of the install activate command is completed.

Step 6

show install active

Example:

RP/0/RP0/CPU0:router#show install active

Displays packages that are active.


Node 0/RP0/CPU0 [RP]
Boot Partition: xr_lv70
Active Packages: 24
ncs5500-xr-6.0.0 version=6.0.0 [Boot image]
ncs5500-k9sec-1.0.0.0-r600
ncs5500-mgbl-2.0.0.0-r600
ncs5500-mpls-1.0.0.0-r600
ncs5500-mpls-te-rsvp-1.0.0.0-r600
ncs5500-infra-2.0.0.2-r600.CSCxr22222
ncs5500-iosxr-fwding-2.0.0.2-r600.CSCxr22222
ncs5500-iosxr-fwding-2.0.0.5-r600.CSCxr90016
ncs5500-iosxr-fwding-2.0.0.1-r600.CSCxr55555
ncs5500-iosxr-fwding-2.0.0.6-r600.CSCxr90017
ncs5500-dpa-1.0.0.1-r600.CSCxr90002
ncs5500-dpa-1.0.0.2-r600.CSCxr90004
ncs5500-dpa-fwding-1.0.0.1-r600.CSCxr90005
ncs5500-k9sec-1.0.0.1-r600.CSCxr80008
ncs5500-os-support-1.0.0.1-r600.CSCxr90013
ncs5500-os-support-1.0.0.2-r600.CSCxr90014
ncs5500-fwding-1.0.0.2-r600.CSCxr90011
ncs5500-fwding-1.0.0.5-r600.CSCxr90019
ncs5500-fwding-1.0.0.1-r600.CSCxr90010
ncs5500-fwding-1.0.0.4-r600.CSCxr90018
ncs5500-mgbl-2.0.0.2-r600.CSCxr80009
ncs5500-mpls-1.0.0.1-r600.CSCxr33333
ncs5500-mpls-te-rsvp-1.0.0.2-r600.CSCxr33335

From the result, verify that on all RPs and LCs, the same image and package versions are active.

Step 7

install commit

Example:

RP/0/RP0/CPU0:router#install commit

Installing Packages: Related Commands

Related Commands Purpose

show install log

Displays the log information for the install process; this can be used for troubleshooting in case of install failure.

show install package

Displays the details of the packages that have been added to the repository. Use this command to identify individual components of a package.

install prepare clean

Clears the prepare operation and removes all the packages from the prepared state.

What to do next

  • After performing a system upgrade, upgrade FPD by using the upgrade hw-module location all fpd all command from the System Admin EXEC mode. The progress of FPD upgrade process can be monitored using the show hw-module fpd command in the System Admin EXEC mode. Reload the router after the FPD upgrade is completed.

  • Verify the installation using the install verify packages command.

  • Uninstall the packages or SMUs if their installation causes any issues on the router. See Uninstall Packages.


    Note

    ISO images cannot be uninstalled. However, you can perform a system downgrade by installing an older ISO version.


Uninstall Packages

Complete this task to uninstall a package. All router functionalities that are part of the uninstalled package are deactivated. Packages that are added in the XR VM cannot be uninstalled from the System Admin VM. However, the cross VM operation allows System Admin packages to be deactivated from XR as well.


Note

Installed ISO images cannot be uninstalled. Also, kernel SMUs that install third party SMU on host, XR VM and System Admin VM, cannot be uninstalled. However, subsequent installation of ISO image or kernel SMU overwrites the existing installation.


The workflow for uninstalling a package is shown in this flowchart.

Figure 2. Uninstalling Packages Workflow


This task uninstalls XR VM packages. If you need to uninstall System Admin packages, run the same commands from the System Admin EXEC mode.

SUMMARY STEPS

  1. show install active
  2. Execute one of these:
    • install deactivate package_name
    • install deactivate id operation_id
  3. show install inactive
  4. install commit
  5. install remove package_name
  6. show install repository

DETAILED STEPS


Step 1

show install active

Example:

RP/0/RP0/CPU0:router#show install active

Displays active packages. Only active packages can be deactivated.


Node 0/RP0/CPU0 [RP]
Boot Partition: xr_lv70
Active Packages: 24
ncs5500-xr-6.0.0 version=6.0.0 [Boot image]
ncs5500-k9sec-1.0.0.0-r600
ncs5500-mgbl-2.0.0.0-r600
ncs5500-mpls-1.0.0.0-r600
ncs5500-mpls-te-rsvp-1.0.0.0-r600
ncs5500-infra-2.0.0.2-r600.CSCxr22222
ncs5500-iosxr-fwding-2.0.0.2-r600.CSCxr22222
ncs5500-iosxr-fwding-2.0.0.5-r600.CSCxr90016
ncs5500-iosxr-fwding-2.0.0.1-r600.CSCxr55555
ncs5500-iosxr-fwding-2.0.0.6-r600.CSCxr90017
ncs5500-dpa-1.0.0.1-r600.CSCxr90002
ncs5500-dpa-1.0.0.2-r600.CSCxr90004
ncs5500-dpa-fwding-1.0.0.1-r600.CSCxr90005
ncs5500-k9sec-1.0.0.1-r600.CSCxr80008
ncs5500-os-support-1.0.0.1-r600.CSCxr90013
ncs5500-os-support-1.0.0.2-r600.CSCxr90014
ncs5500-fwding-1.0.0.2-r600.CSCxr90011
ncs5500-fwding-1.0.0.5-r600.CSCxr90019
ncs5500-fwding-1.0.0.1-r600.CSCxr90010
ncs5500-fwding-1.0.0.4-r600.CSCxr90018
ncs5500-mgbl-2.0.0.2-r600.CSCxr80009
ncs5500-mpls-1.0.0.1-r600.CSCxr33333
ncs5500-mpls-te-rsvp-1.0.0.2-r600.CSCxr33335
Step 2

Execute one of these:

  • install deactivate package_name
  • install deactivate id operation_id

Example:

RP/0/RP0/CPU0:router#install deactivate ncs5500-mpls-1.0.0.0-r60023I.x86_64.rpm ncs5500-mgbl-2.0.0.0-r60023I.x86_64.rpm
or
RP/0/RP0/CPU0:router#install deactivate id 8

The operation_id is the ID from install add operation. All features and software patches associated with the package are deactivated. You can specify multiple package names and deactivate them simultaneously.

If you use the operation ID, all packages that were added in the specified operation are deactivated together. You do not have to deactivate the packages individually. If System admin packages were added as a part of the install add operation (of the ID used in deactivate) then those packages will also be deactivated.

Step 3

show install inactive

Example:

RP/0/RP0/CPU0:router#show install inactive

The deactivated packages are now listed as inactive packages. Only inactive packages can be removed from the repository.

Step 4

install commit

Step 5

install remove package_name

Example:

RP/0/RP0/CPU0:router#install remove ncs5500-mpls-1.0.0.0-r60023I.x86_64.rpm ncs5500-mgbl-2.0.0.0-r60023I.x86_64.rpm

The inactive packages are removed from the repository.

Use the install remove command with the id operation-id keyword and argument to remove all packages that were added for the specified operation ID.

You can also use the install remove inactive all to remove all inactive packages from XR and System Admin.

Step 6

show install repository

Example:

RP/0/RP0/CPU0:router#show install repository

Displays packages available in the repository. The package that are removed are no longer displayed in the result.


What to do next

Install required packages. .