Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Configuring Graceful Routing Engine Switchover

Learn how to configure Graceful Routing Engine Switchover (GRES) with the following steps and examples.

Requirements for Routers with a Backup Router Configuration

If your Routing Engine configuration includes a backup-router statement or an inet6-backup-router statement, you can also use the destination statement to specify a subnet address or multiple subnet addresses for the backup router. Include destination subnets for the backup Routing Engine at the [edit system (backup-router | inet6-backup-router) address] hierarchy level. This requirement also applies to any T640 router connected to a TX Matrix router that includes a backup-router or inet6-backup-router statement.

Note:

If you have a backup router configuration in which multiple static routes point to a gateway from the management Ethernet interface, you must configure prefixes that are more specific than the static routes or include the retain flag at the [edit routing-options static route] hierarchy level.

For example, if you configure the static route 172.16.0.0/12 from the management Ethernet interface for management purposes, you must specify the backup router configuration as follows:

Enabling Graceful Routing Engine Switchover

By default, graceful Routing Engine switchover (GRES) is disabled. To configure GRES, include the graceful-switchover statement at the [edit chassis redundancy] hierarchy level.

When you enable GRES, the command-line interface (CLI) indicates which Routing Engine you are using. For example:

To disable GRES, delete the graceful-switchover statement from the [edit chassis redundancy] hierarchy level.

Configuring Graceful Routing Engine Switchover with Graceful Restart

When using GRES with Graceful Restart, if adjacencies between the Routing Engine and the neighboring peer 'helper' routers time out, graceful restart protocol extensions are unable to notify the peer 'helper' routers about the impending restart. Graceful restart can then stop and cause interruptions in traffic.

To ensure that these adjacencies are kept, change the hold-time for IS-IS protocols from the default of 27 seconds to a value higher than 40 seconds.

Synchronizing the Routing Engine Configuration

Note:

A newly inserted backup Routing Engine automatically synchronizes its configuration with the primary Routing Engine configuration.

When you configure GRES, you can bring the backup Routing Engine online after the primary Routing Engine is already running. There is no requirement to start the two Routing Engines simultaneously.

Only when you enable the graceful Routing Engine switchover, you can copy the running Junos OS version of the primary Routing Engine to the backup Routing Engine.

Note:

If the system is in ISSU state, you cannot copy the running Junos OS version of the primary Router Engine.

Starting in Junos OS release 14.1, you can enable automatic synchronization of the primary Routing Engine configuration with the backup Routing Engine by including the events CHASSISD_SNMP_TRAP7 statement at the [edit event-options policy policy-name] hierarchy level.

CHASSISD_SNMP_TRAP7 is a system event logging message that the chassis process (chassisd) generates a Simple Network Management Protocol (SNMP) trap with the seven indicated argument-value pairs. An example of an event script to trigger automatic synchronization of primary to the backup Routing Engine is as follows:

After receiving this event, the event policy on the primary Router Engine is triggered and the image available in the /var/sw/pkg path is pushed to the backup Router Engine upgrade. During script execution, the image is copied to the backup Routing Engine's /var/sw/pkg path.

Note:

If the image is not available in the /var/sw/pkg path, the script is terminated with an appropriate syslog message.

If the Routing Engine is running at the Junos OS Release 13.2 or later, the Junos automation scripts is synchronized automatically.

After the primary Router Engine is rebooted, the event script available at the /usr/libexec/scripts/event/auto-image-upgrade.slax must be copied to the /var/db/scripts/event path.

Note:

For MX Series routers using enhanced subscriber management, the new backup Routing Engine (the former primary Routing Engine) will reboot when a graceful Routing Engine switchover is performed. This cold restart resynchronizes the backup Routing Engine state with that of the new primary Routing Engine, preventing discrepancies in state that might have occurred during the switchover.

Verifying Graceful Routing Engine Switchover Operation

To verify whether GRES is enabled on the backup Routing Engine, issue the show system switchover command. When the output of the command indicates that the Graceful switchover field is set to On, GRES is operational. The status of the kernel database and configuration database synchronization between Routing Engines is also provided. For example:

Note:

You must issue the show system switchover command on the backup Routing Engine. This command is not supported on the primary Routing Engine.

For more information about the show system switchover command, see the CLI Explorer.

Configuring Graceful Routing Engine Switchover in a Virtual Chassis

In a Virtual Chassis, one member switch is assigned the primary role and has the primary Routing Engine. Another member switch is assigned the backup role and has the backup Routing Engine. Graceful Routing Engine switchover (GRES) enables the primary and backup Routing Engines in a Virtual Chassis configuration to switch from the primary to backup without interruption to packet forwarding as a hitless failover solution. When you configure graceful Routing Engine switchover, the backup Routing Engine automatically synchronizes with the primary Routing Engine to preserve kernel state information and the forwarding state.

To set up the Virtual Chassis configuration to use graceful Routing Engine switchover (GRES):

  1. Set up a minimum of two switches in a Virtual Chassis configuration with primary-role priority of 255:
  2. Set up graceful Routing Engine switchover:

Commit the configuration.

Note:

We recommend that you use the commit synchronize command to save any configuration changes that you make to a multimember Virtual Chassis.

Preventing Graceful Routing Engine Switchover in the Case of Slow Disks

Unexpected slow disk access can happen for various reasons—a faulty or bad sector, for example—causing a hold up of the normal operation of processes such as the routing process (rpd). Eventually, the router’s performance will be impacted. Under these circumstances, it may take longer for the typical failover mechanism to be triggered.

Juniper Networks has introduced a disk monitoring daemon to solve this dilemma. The daemon detects slow disk access and initiates failover. Failover can minimize the traffic impact and ease the load on the original primary Routing Engine for its backlog clean up.

However, there are instances when you might not want failover to occur. You might commit a large set of changes or even minor changes that might lead to a series of updates on the routing topology. Such activity could lead to extensive disk access delay and, therefore, trigger failover. For expected disk access delays like this, where you do not want to trigger failover, you can choose to not have failover occur by setting the chassis redundancy failover not-on-disk-underperform configuration command. Another way is to disable the disk monitoring daemon completely by setting the system processes gstatd disable command.

To prevent failovers in the case of slow disks in the Routing Engine:

Set the option for preventing gstatd from initiating failovers in response to slow disks at the [edit chassis redundancy failover] hierarchy level.

Resetting Local Statistics

When you enable graceful Routing Engine switchover, the primary Routing Engine configuration is copied and loaded to the backup Routing Engine. User files, accounting information, and trace options information are not replicated to the backup Routing Engine.

When a graceful Routing Engine switchover occurs, local statistics such as process statistics and networking statistics are displayed as a cumulative value from the time the process first came online. Because processes on the primary Routing Engine can start at different times from the processes on the backup Routing Engine, the statistics on the two Routing Engines for the same process might differ. After a graceful Routing Engine switchover, we recommend that you issue the clear interface statistics (interface-name | all) command to reset the cumulative values for local statistics. Forwarding statistics are not affected by graceful Routing Engine switchover.

For information about how to use the clear command to clear statistics and protocol database information, see the CLI Explorer.

Note:

The clear firewall command cannot be used to clear the Routing Engine filter counters on a backup Routing Engine that is enabled for graceful Routing Engine switchover.

Example: Configuring IS-IS for GRES with Graceful Restart

This example shows how to configure the Routing Engine’s graceful restart protocol extensions using the intermediate system to intermediate system (IS-IS) interior gateway protocol (IGP) to successfully enable graceful Routing Engine switchover (GRES) with graceful restart.

Requirements

GRES prevents interruptions in network traffic if the primary Routing Engine fails when combined with either:

  • Graceful restart

  • Nonstop active routing (NSR)

Before you follow the directions here to configure graceful restart, be sure you have enabled GRES, which is disabled by default. See Configuring Graceful Routing Engine Switchover for more information.

Overview

If adjacencies between the Routing Engine and the neighboring peer 'helper' routers time out, graceful restart protocol extensions are unable to notify the peer 'helper' routers about the impending restart. Graceful restart can then stop and cause interruptions in traffic.

To ensure that these adjacencies are kept, change the hold-time for IS-IS protocols from the default of 27 seconds to a value higher than 40 seconds.

If your system uses the open shortest pathway first (OSPF) protocol instead of IS-IS, see Example: Configuring OSPF Timers for configuration information.

Configuration

CLI Quick Configuration

To quickly configure the hold-time, copy the following commands, paste them into a text file, remove any line breaks, change any details necessary to match your network configuration, and then copy and paste the commands into the CLI at the different hierarchy levels shown.

Each interface must be set individually, with a value for each level that the routing device operates on. The minimum recommended value of 41 seconds is used in this example, your system may require a higher value based on size and traffic.

Level 1 and level 2 can be set to different values.

[edit protocols]

[edit logical-systems logical-system-name}

[edit logical-systems logical-system-name routing-instances routing-instance-name]

[edit routing-instances routing-instance-name]

Configuring the IS-IS Protocol Hold Time for Graceful Restart

Step-by-Step Procedure

To configure the IS-IS hold-time for graceful restart:

  1. Locate or set the interfaces.

  2. Set the network level and the hold-time in seconds for that level.

  3. If the routing device functions on more than one level, set the value for the other level.

  4. If you are done configuring the routing device, commit the configuration.

    Note:

    Repeat the entire configuration on all routing devices in a shared network.

Results

Verification

Verifying the IS-IS Protocol Hold Time for Graceful Restart

Purpose

Verify that the IS-IS protocol hold-time is set to 41 seconds or greater to ensure that graceful restart is enabled.

Action

Confirm your configuration by entering the show isis adjacency brief command from operational mode. If the output does not display the intended configuration, repeat the instructions in this example to correct the configuration.

Meaning

A high enough IS-IS protocol hold-time value allows your system configuration to restart and ensures that even if a Routing Engine fails, traffic continues.

Change History Table

Feature support is determined by the platform and release you are using. Use Feature Explorer to determine if a feature is supported on your platform.

Release
Description
14.1
Starting in Junos OS release 14.1, you can enable automatic synchronization of the primary Routing Engine configuration with the backup Routing Engine by including the events CHASSISD_SNMP_TRAP7 statement at the [edit event-options policy policy-name] hierarchy level.