Anuta ATOM

Juniper vMX Software Upgrade

Table of Contents

Intended Audience

This document is intended for Network Administrators & Operators that are using ATOM to perform Software Upgrade.


Please reach out to support@anutanetworks.com for more information on ATOM Documentation or Release Information.

Software Upgrade Process

Frequently organisations are confronted with the challenge of upgrading their network devices to the latest patch version. In Large scale Enterprise environments, we will be running a similar version across the network based on their role.

These situations are very critical in the lifecycle of a device, and need to execute them carefully with predefined MOP approved by Network Architects.

Typical Software Upgrade will involve the following basic constructs:

1. User Inputs to begin the change like Device, Image Version, Image Repo Details (FTP, SCP etc..), Software Image

2. Pre Checks – Set of pre checks before proceeding for the actual migration such as check current running software version, Hardware details, Config backup, Interface and Protocol level checks etc..

a. If any of the prechecks failed then raise a ticket and stop the migration activity for that device.

3. Copy the Image from Remote repository to the device (eg: Disk, NVRAM etc..) and set the boot options as required.

a. Raise an incident if the image copy fails for some reason.

4. Request Network Admin for device reboot and proceed on approval.

5. Check for devices reachability whichever way is feasible as specified below

a. Continuous Ping check within stipulated time.

b. Listening for any asynchronous notifications like SNMP trap.

6. Perform Post checks

a. Compare Pre and post check results & if the validation fails then call for a rollback of that device upgrade activity.

The above sequence of steps are readily understood by networking professionals. Now, let us see the thought process to translate that logic into ATOM Workflow.

Software Upgrade workflow definition


Field Action
Device ID (Mandatory) Id of a device to which wants to perform software upgrade.Leafref to the devices list.
Upgrade-Os-Version (Mandatory) Os version to which the device to upgrade.
Protocol (Mandatory) Protocol used to transfer image from remote repository
Image-Server-Location (Mandatory) Remote server ip address
Image-File-Path (Mandatory) Path to image in remote server
Image-File-Name (Mandatory) Image File name in the specified Path
Destination-Path (Mandatory) To store Image
Username (Mandatory) Username of Remote Server
Password Password of Remote Server


As part of the pre checks below commands will be executed.

  • Show version
  • Show configuration | display set | grep nonstop-routing
  • Show configuration | display set | grep switchover-on-routing-crash
  • Show configuration | display set | grep graceful-switchover
  • Show configuration | display set | grep commit
  • Show bgp neighbor
  • Show arp no-resolve
  • Show route protocol bgp
  • Show route


Copy the Image from Remote repository to the device and set the boot options.

  • request system software add /tmp/<imagefile>
  • request system reboot


As part of post checks below commands are executed.

  • Show bgp neighbor
  • Show arp no-resolve
  • Show route protocol bgp
  • Show route

Deploying Software Upgrade workflow

Go to Automation > Workflows

Then tap on the Workflows tab.

Click on the name “Juniper_mx_smu” to see the workflows we will be executing.

When ready to run the workflow, check the box next to “Juniper_mx_smu” and then click the PLAY button. Type in a unique name. We chose “upgrade-test-vmx3”

Move to the “Actions” section, then check the box next to the workflow instance ID and execute.

Move to the “My Actions” section, then check the box next to “Use Input” and select.

Enter the user inputs. Tap the check mark on the upper right corner to continue. (Password is not mandatory)

Tap on the Tasks bars on the upper right hand corner and look at the status. Many times, other tasks will appear in the task pane so one may need to use the search bar to find their tasks.


In the Task pane, before performing the upgrade some pre-checks are running. During vMX upgrade following prechecks will be running as shown in the diagram below.

Diskspace Check

Copy the Image from Remote repository to the device (eg: Disk, NVRAM etc..).This check verifies that the free space available to copy image from Remote Repository.Disk or NVRAM does not have enough space to copy the image then workflow will get terminated saying diskspace not available.

One can also go back to the Workflow section and see what is happening within the workflow, the variables being passed, outputs being passed, etc.

Upgrade Image

After taking the admin approval , the workflow will go for the actual upgrade process.

Device Status Check After Upgrade

After a successful upgrade to check device status,below step added to the workflow.

  • Continuous status check within a stipulated time.

After the device came to online workflow checks for the version of device.Whether device version matches with the upgraded version.


After successful upgrade meaning device version matches with upgraded image version post checks will run and workflow gets completed.

Working with workflow orders

Viewing workflow Instances

  • Once the workflow order is done, the instances can be seen under Automation > Workflow > Catalog > Juniper_mx_upgrade diagram.
  • In all the instances seen under the Software Maintenance Upgrade workflow, select the specific instance of interest.

  • Once the specific workflow instance is selected, the Variables/Actions/Errors related to that instance can be seen.

Variables: Within the workflow instance each of the variable values can be seen. Selecting two variables gives an option to see the diff between those values as well.

Actions: Any pending actions for that instance like user-inputs/approvals can be seen under this tab.

Errors: Details related to any Error/Termination happened on that instance can be seen.

Additional Resources

For detailed information on Anuta ATOM and its rich set of features, please refer to the resources section on anutanetworks.com