Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Back Up Routing Director Configuration

This topic describes the backup functionality available for Routing Director.

You can use the backup functionality available in Paragon Shell to back up your Routing Director cluster and application configuration data.

Back Up Using Paragon Shell

You can back up your current Routing Director network configuration using Paragon Shell CLI. When you run the backup command, all the application configuration information stored in PostgreSQL, ArangoDB, and Airflow configuration database systems, LLM connector secrets keys, and available software images are backed up. The backup command also backs up telemetry information stored in OpenSearch, TimescaleDB, and VictoriaMetrics database systems. The backup procedure can be performed while the microservices and applications are running and does not affect the operation of the network. However, we recommend that you do not perform a backup during configuration changes such as device onboarding.

To back up your Routing Director configuration state.

  1. Log in as root user to any of the Routing Director nodes.
  2. Execute the request paragon backup command to back up the configuration. For example:

    The backup job runs in the background and you are returned to the command prompt. The backup command checks the space available on the local filesystem before proceeding with the download. If the available disk space is insufficient, the backup job aborts. In this example, 20250318-090214 is the backup ID in the yyyymmdd-hhmmss format. The backup data is stored in a folder named as the backup ID.

    Alternatively, you can use the request paragon backup config command to back up only configuration information or request paragon backup telemetry command to back up only telemetry data.

    The backup command checks the space available in the local file system before taking a backup. If the node does not have enough storage space, the backup process will display an error and fail.

  3. (Optional) View progress of the backup job. The backup process takes a few minutes to complete. In order to not block the terminal for use for the whole duration of the backup job, you are returned to the command prompt before the backup job is complete. You can view the progress status of the backup job by using the show paragon backup status backup-id backupID command.

    For example:

  4. (Optional) If you want to store the backup in a remote location, upload the backup folder to the remote location using the following command:

    Where:

    remote-path is the path to the remote backup location.

    username and password are the login credentials to the remote server.

Upon completion of the backup process, the backup folder is stored in the local persistent /export/paragon-shell/backup folder on the node. You'll have to exit out of Paragon Shell to the Linux root shell to navigate to the folder where the backups are saved.

Each backup folder contains the following folders with backup-related information.

  • airflow—Backup of airflow secrets and DAGs

  • arango—Backup of ArangoDB database

  • ask_paragon—Configured LLM connector secrets (in encrypted format)

  • postgres—Backup of PostgresDB database

  • software_images—Backup of available devices images

  • system_config—Backup of system configuration; this is for reference only

Telemetry data backups are stored in the nodes where the database pods are running.

Caveats of the Backup Process

  • When you back up a cluster and restore it, use the same VIP addresses as the cluster that was backed up. If the restored cluster uses a new set of VIP addresses, you must change the VIP addresses configured on the devices being managed by the Routing Director cluster.

  • Application configurations (such as devices, sites, service orders, and so on) are backed up, but certificates and infrastructure services configurations are not backed up. This information must be kept unchanged before you perform a restore.

  • The backup process captures the current infrastructure configurations, but information is used for reference only. The same configuration can be used to instantiate a new setup.

    For example, if monitoring was enabled on the cluster before performing a backup. The configuration related to monitoring is stored in the /export/paragon-shell/backup/backupID/system_config/config.cmgd file. Post-restore, use the information in the monitoring section of the config.cmgd file to reconfigure the monitoring commands on the new setup.

  • Telemetry backups are not version controlled, that is, only the latest copy of a backup is available at any given point of time. A new backup command will overwrite the existing telemetry backup with the delta of the data from the last backup.

    To maintain multiple and periodic copies of telemetry data, you can upload the telemetry backup to a remote location. To upload a backup to a remote location, use the following command.

    root@Primary1> request paragon backup upload backup-id backupID storage-location remote-path user username password password

    You can re-upload the data to the same remote location folder every time you choose to back up telemetry data to maintain incremental copies.

View or Delete Backup Files

To view a list of all backup folders across all nodes, use the following command:

root@Primary1> show paragon backup

The node connects to all the other nodes in the Routing Director cluster using SSH and displays a list of all backup folder names along with the IP address of the node on which the folder is located. This command displays all successfully completed backup jobs and folders, but does not display if a backup job is currently in-progess.

To view a list of backup folders along with a list of failed or in-progress backup jobs, use the following command:

root@Primary1> show paragon backup include-failure true

To list the available backups from a remote location use the following command.

root@Primary1> show paragon backup remote storage-location remote-path user username password password

Use this command to determine the backup that you want to download from the remote location. You can view the backup directories only in the folder that you have specified in the path and not all the backups available in other folders on the remote server. You cannot delete a backup in a remote location since you don't have the necessary permissions to manage the remote server.

To delete a backup folder, use the following command.

root@Primary1> request paragon backup delete backup-id backupID

You can delete a backup folder that is located only on the node on which you execute the command.

Upload or Download Backup Files

Upload your backed-up folder to a remote location outside the Routing Director cluster, within the same network as the cluster or in a different network. To upload your backup folder to a remote location, use the following command:

root@Primary1> request paragon backup upload backup-id backupID storage-location scp://IP:port/remote-path user username password password

To view progress of the backup folder upload command, use the following command:

root@Primary1> show paragon backup upload status backup-id backupID

To download your backup folder from a remote location, use the following command:

root@Primary1> request paragon backup download backup-id backupID storage-location scp://IP:port/remote-path user username password password

The backup download command checks the space available on the local filesystem before proceeding with the download. If the available disk space is insufficient, the download job aborts.

To view progress of the backup folder download command, use the following command:

root@Primary1> show paragon backup upload status backup-id backupID

Schedule Backups

Schedule periodic backups and store the backed up data locally or upload your backed-up data to a remote location outside the Routing Director cluster. You can configure only one backup schedule on a cluster. Additionally, you can also delete scheduled backups.

Backup scheduling job logs are stored at /export/paragon-shell/backup/schedule_job.log on the node on which the scheduling backup command is executed.

Backups can be scheduled for the following time periods:

  • Hourly

  • Daily

  • Weekly

  • A specific time of the day or day of the week

  • A specific but regular monthly schedule

  • A combination of all these

When a backup is scheduled, a cron job performs the backup as per the configured schedule.

To upload your backup folder to a remote location, use the following command:

root@Primary1>request paragon backup schedule trigger-time schedule node nodeIP storage-location scp | sftp://IP:port/remote-path user username password password node nodeIP type (full | config | telemetry )

Where:

  • trigger-time— (Mandatory) The cron expression of the backup schedule. The schedule must be entered in the following format:

    *

    *

    *

    *

    *

    Minute

    (0 - 59)

    Hour

    (0 - 23)

    Day of the month

    (1 - 31)

    Month

    (1 - 12)

    Day of the week

    (0 - 6, where 0 is Sunday)

    For example:

    Trigger Time Backup Schedule

    0 * * * *

    Hourly

    We recommend that you do not schedule hourly backups

    0 0 * * *

    12 00 AM daily

    0 0 * * 6

    12 00 AM on Saturdays

    0 0 1 * *

    12 00 AM, on day 1 of each month

    0 0 1 */2 *

    12 00 AM , on day 1 of the month, every alternate month

    Alternatively, if you skip this expression while entering the command, you will be prompted to enter the schedule.

  • node —(Optional) Enter the hostname of the node on which you want to execute the backup scheduling command and store the backup job logs. Use the kubectl get nodes command on the Linux root shell to determine the correct hostname. This node also serves as the storage location on which the backup folder is saved if not uploaded to a remote location. If no node is specified, then the backup is scheduled from and the backup job logs are stored on the current node.

  • storage-location—(Optional) Location of the remote storage server. You can use scp or sftp to transfer the files to the remote server. If you do not enter this option, the backup files are stored on the cluster node you specify, by default.

  • user—(Optional) The username with which you can log in to the remote storage location. If you have specified a storage location, this option is mandatory.

  • password—(Optional) The password with which you can log in to the remote storage location. If you have specified a storage location, this option is mandatory.

  • type—(Optional) The type of backup that must be taken. You can specify full, telemetry, or config. If you do not specify any option, then a full backup is scheduled, by default.

For example:

Caveat of scheduling backups

  • If both day of month and day of week are defined then the schedule will trigger a backup if any one of the conditions match.

View, Edit, or Delete Backup Schedules

To view if a backup schedule is configured, use the following command:

root@Primary1> show paragon backup schedule

To edit a backup schedule, rerun the request paragon backup schedule command. The new information will overwrite any pre-configured schedule.

root@Primary1>request paragon backup schedule trigger-time schedule node nodeIP storage-location scp | sftp://IP:port/remote-path user username password password node nodeIP type (full | config | telemetry )

To delete a scheduled backup, use the following command:

root@Primary1> request paragon backup delete schedule

To view any scheduled but in-progress backup jobs, or failed backup jobs, use the following command:

root@Primary1> show paragon backup include-failure true

Note:

In case of any failure while performing a scheduled backup, Routing Director will retry the backup process three times before aborting the backup attempts. In such cases, you may see three failed backup attempts in the backup jobs list.