Skip to content

Getting Started with the App

This document provides a step-by-step tutorial on how to get the App going and how to use it.

Install the App

To install the App, please follow the instructions detailed in the Installation Guide.

First steps with the App

In order to run all of the OS Upgrade jobs on any given device, you must have the following data populated:

  • Software Versions and Software Files.
    • Both the current version and the new validated version to upgrade to.
  • Devices with Primary IP address, Platform, Device Type, Software and Software Files, and Secrets Group.

Here's how to set this up:

  1. Create and document Software Version(s).

    "Software Version" is a core Nautobot data model that can be used to track software versions and their metadata. Below we demonstrate a software version for Cisco NXOS.

    Software Version Web UI Software Version Web UI

    Info

    Repeat the steps for all the software versions you need to track. Below represents two versions we need to demonstrate the application functionality.

    Software Version List UI Software Version List UI

  2. Link the new Software Versions to a Software Image File and provide a Download URL.

    Software Image Web UI Software Image Web UI

    Info

    Repeat the steps for all the software image files. Below represents two software files we need to demonstrate the application functionality.

    Software Image List UI Software Image List UI

  3. Properly setup Network Credentials via Secret Groups.

    Secret Group Web UI Secret Group Web UI

  4. Set the in-scope devices with Primary IP address, Platform, and Device Type.

    Device Data Web UI Device Data Web UI

Next Steps

Once the required data dependencies are met, you are ready to upgrade a network device, the steps below show how to customize the Nornir configurations.

  1. Customize device specific Nornir configurations.

    Different operating systems may have the requirement to tweak different Nornir configuration options. This can be accomplished globally in the nautobot_config.py file under the nautobot_plugin_nornir app configuration.

    "nautobot_plugin_nornir": {
        "use_config_context": {"secrets": False, "connection_options": True},
        # Optionally set global connection options.
        "connection_options": {
            "pyntc": {
                "extras": {
                    "timeout": 3600
                }
            },
        }
    }
    

    A more flexible option is to add it to each specific device/role etc. in the config_context details in the format shown below.

    {
        "nautobot_plugin_nornir": {
            "connection_options": {
                "pyntc": {
                    "extras": {
                        "timeout": 3600
                    }
                }
            }
        }
    }
    
  2. Set up the Nautobot Operational Compliance App (Optional).

    • Follow the quick start guide for the example validation rule group shown below.

    • When the Operational Compliance app is installed and configured, the job will automatically update to support a selection to choose the validation rules and/or validation rule groups to run.

    Jobs Inputs Web UI Jobs Inputs Web UI

    • The workflow will also be dynamically updated to show the extra steps added.

    Custom Job Results with Op Compliance Custom Job Results with Op Compliance

Info

For more details on how to properly setup the Operational Compliance app follow the Operational Compliance User Guide.

  1. Enable the OS Upgrade jobs for running.

    Notice all jobs are disabled by default.

    Jobs Web UI Jobs Web UI

    Select all the OS Upgrade jobs and click on Edit.

    Edit Jobs Web UI Edit Jobs Web UI

    Multiple select the OS Upgrade jobs and bulk edit the job to Enabled.

    Edit Jobs Web UI Edit Jobs Web UI

  2. Select the Run All OS Upgrade Jobs for a device and execute an upgrade.

    Run Jobs Web UI Run Jobs Web UI

  3. Monitor the workflow progress by visualizing the orchestrated flow on the custom Job results view.

    Custom Job Results Web UI Custom Job Results Web UI