Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Synchronizing Configurations Across Routing Engines

On devices with redundant Routing Engines, you can perform a commit synchronize, which activates and synchronizes the configuration on both Routing Engines.

Routing Engine Synchronization Overview

If your device has two Routing Engines, you can manually direct one Routing Engine to synchronize its configuration with the other by issuing the commit synchronize command. The Routing Engine on which you execute this command (the requesting Routing Engine) first commits the configuration. The requesting Routing Engine then copies and loads its candidate configuration to the responding Routing Engine. Each Routing Engine performs a syntax check on the candidate configuration file before committing it. The commit synchronization process takes place one Routing Engine at a time.

If no errors are found, the configuration is activated and becomes the current operational configuration on both Routing Engines.

Note:

If the commit fails on either Routing Engine, the commit process is rolled back on the other Routing Engine as well. This safeguard ensures that both Routing Engines have the same configuration.

Note:

If your configuration includes a large amount of text or many apply-groups, commit times can be longer than desired.

For example, you may want both Routing Engines to have the same configuration. In this scenario, if you are logged in to re1 (requesting Routing Engine), you issue the commit synchronize command on re1. Routing Engine re1 copies and loads its candidate configuration to re0 (responding Routing Engine). Both Routing Engines then perform a syntax check on the candidate configuration file being committed. If no errors are found, the re1 candidate configuration is activated and becomes the current operational configuration on both Routing Engines.

Note:

When you issue the commit synchronize command, you must use the groups re0 and re1. For information about how to use the apply-groups statement, see Applying a Configuration Group.

You can synchronize a Routing Engine's current operational configuration file with the other Routing Engine's configuration file. To do this, you log in to the Routing Engine from which you want to synchronize and issue the commit synchronize command.

Example:

Note:

The backup Routing Engine may be only partially committed due to invalid configuration during system reboot. In this case, the commit synchronize command with the force option from the primary Routing Engine does not work.

The commit synchronize command does not work if the responding Routing Engine has uncommitted configuration changes. However, you can force commit synchronization on the Routing Engines by using the force option. When you issue the commit synchronize command with the force option from one Routing Engine, the configuration sessions on the other Routing Engine are terminated. When those sessions are terminated on the other Routing Engine, its configuration is synchronized with the configuration on the Routing Engine from which you issued the command.

Note:

We recommend that you use the force option only if you are unable to resolve the issues that caused the commit synchronize command to fail.

To force a commit synchronize on the Routing Engines, you log in to the Routing Engine from which you want to synchronize. Then, you issue the command with the force option.

Example:

Note:

If you have nonstop routing enabled on your device, you enter the commit synchronize command from the primary Routing Engine after you make any changes to the configuration. If you enter this command on the backup Routing Engine, the software displays a warning and commits the configuration.

Include the fast-synchronize statement at the [edit system] hierarchy level to have the synchronization occur simultaneously between the primary and the backup Routing Engines:

Note:
  • When the fast-synchronize statement is configured, the commits on the primary Routing Engine and the backup Routing Engine run in parallel. In this process, the configuration is validated only on the Routing Engine where you execute the commit command. Therefore, we recommend that you not include too many configuration details in groups like re0 and re1, because the configuration specified in group re0 is applied only if the current Routing Engine is in slot 0. Likewise, the configuration specified in group re1 is applied only if the current Routing Engine is in slot 1.

  • If fast-synchronize is enabled and both Routing Engines (primary and backup) run different software versions, the backup Routing Engine configuration may not be valid. This is true even if the primary Routing Engine validates the configuration. Therefore, ensure that the same operating systemoperating system software version is running on both the Routing Engines.

You can use the commit synchronize scripts command to synchronize a Routing Engine's configuration and all commit, event, lib, op, and SNMP scripts with the other Routing Engine. If you configure the load-scripts-from-flash statement for the requesting Routing Engine, the device synchronizes the scripts. The device synchronizes the scripts from flash memory on the requesting Routing Engine to flash memory on the responding Routing Engine. Otherwise, the device synchronizes the scripts from the hard disk on the requesting Routing Engine to the hard disk on the responding Routing Engine. The device synchronizes all scripts regardless of whether they are enabled in the configuration or have been updated since the last synchronization.

To synchronize a Routing Engine's configuration file and all scripts with the other Routing Engine, log in to the Routing Engine from which you want to synchronize, and issue the commit synchronize scripts command.

Example:

Note:

If the commit check operation fails for the requesting Routing Engine, the process stops, and the scripts are not copied to the responding Routing Engine. If the commit check or commit operation fails for the responding Routing Engine, the scripts are still synchronized. The scripts are still synchronized because the synchronization occurs before the commit check operation on the responding Routing Engine.

Include the synchronize statement at the [edit system scripts] hierarchy level to synchronize scripts every time you issue a commit synchronize command.

Configure Multiple Routing Engines to Synchronize Committed Configurations Automatically

If your device has multiple Routing Engines, you can manually direct one Routing Engine to synchronize its configuration with the others by issuing the commit synchronize command.

To make the Routing Engines synchronize automatically whenever a configuration is committed, include the commit synchronize statement at the [edit system] hierarchy level:

The Routing Engine on which you execute the commit command (requesting Routing Engine) copies and loads its candidate configuration to the other (responding) Routing Engines. All Routing Engines then perform a syntax check on the candidate configuration file being committed. If no errors are found, the configuration is activated and becomes the current operational configuration on all Routing Engines.

For the commit synchronization process, the primary Routing Engine commits the configuration and sends a copy of the configuration to the backup Routing Engine. Then the backup Routing Engine loads and commits the configuration. So, the commit synchronization between the primary and backup Routing Engines takes place one Routing Engine at a time. If the configuration has a large text size or many apply-groups, commit times can be longer than desired.

You can use the commit fast-synchronize statement to have the synchronization between the primary and backup Routing Engines occur simultaneously instead of sequentially. This can reduce the time needed for synchronization because the commits on the primary and backup Routing Engines occur in parallel.

Include the fast-synchronize statement at the [edit system] hierarchy level to have synchronize occur simultaneously between the primary and the backup Routing Engines:

Note:
  • If commit fails on either Routing Engine, the commit process is rolled back on the other Routing Engine as well. This ensures that both Routing Engines have the same configuration.

  • When the fast-synchronize statement is configured, the commits on the primary Routing Engine and the backup Routing Engine run in parallel. In this process, the configuration is validated only on the Routing Engine where you execute the commit command. Therefore, we recommend limiting the number of configuration details in groups like re0 and re1, because the configuration specified in group re0 is applied only if the current Routing Engine is in slot 0. Likewise, the configuration specified in group re1 is applied only if the current Routing Engine is in slot 1.

  • If fast-synchronize is enabled and if the primary Routing Engine and backup Routing Engines run different software versions, you cannot be sure that the backup Routing Engine configuration is valid. This is true even if the primary Routing Engine validates the configuration, Therefore, ensure that the operating system software version running on both the Routing Engines is the same.

Release History Table
Release
Description
19.4R1-S1
Starting in Junos OS Evolved Release 19.4R1-S1, commit synchronize is enabled by default on PTX10008. If you issue commit at the [edit system] hierarchy level from the primary routing engine, you see that the backup routing engine is automatically synchronized.
19.4R1
Starting in Junos OS Evolved Release 19.4R1, commit synchronize is enabled by default on PTX10008. If you issue commit at the [edit system] hierarchy level from the primary routing engine, you see that the backup routing engine is automatically synchronized.