High Availability

main-cpu

To enter the redundancy main configuration submode and enable the standby switch, use the main-cpu command in redundancy configuration mode.

main-cpu

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Redundancy configuration (config-red)

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Usage Guidelines

From the redundancy main configuration submode, use the standby console enable command to enable the standby switch.

Examples

This example shows how to enter the redundancy main configuration submode and enable the standby switch:

Device(config)# redundancy
Device(config-red)# main-cpu
Device(config-r-mc)# standby console enable
Device#

mode sso

To set the redundancy mode to stateful switchover (SSO), use the mode sso command in redundancy configuration mode.

mode sso

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Redundancy configuration

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Usage Guidelines

The mode sso command can be entered only from within redundancy configuration mode.

Follow these guidelines when configuring your system to SSO mode:

  • You must use identical Cisco IOS images on the switches in the stack to support SSO mode. Redundancy may not work due to differences between the Cisco IOS releases.

  • If you perform an online insertion and removal (OIR) of the module, the switch resets during the stateful switchover and the port states are restarted only if the module is in a transient state (any state other than Ready).

  • The forwarding information base (FIB) tables are cleared on a switchover. Routed traffic is interrupted until route tables reconverge.

Examples

This example shows how to set the redundancy mode to SSO:

Device(config)# redundancy
Device(config-red)# mode sso
Device(config-red)#

policy config-sync prc reload

To reload the standby switch if a parser return code (PRC) failure occurs during configuration synchronization, use the policy config-sync reload command in redundancy configuration mode. To specify that the standby switch is not reloaded if a parser return code (PRC) failure occurs, use the no form of this command.

policy config-sync {bulk | lbl} prc reload

no policy config-sync {bulk | lbl} prc reload

Syntax Description

bulk

Specifies bulk configuration mode.

lbl

Specifies line-by-line (lbl) configuration mode.

Command Default

The command is enabled by default.

Command Modes

Redundancy configuration (config-red)

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Examples

This example shows how to specify that the standby switch is not reloaded if a parser return code (PRC) failure occurs during configuration synchronization:

Device(config-red)# no policy config-sync bulk prc reload

redundancy

To enter redundancy configuration mode, use the redundancy command in global configuration mode.

redundancy

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Global configuration (config)

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Usage Guidelines

The redundancy configuration mode is used to enter the main CPU submode, which is used to enable the standby switch.

To enter the main CPU submode, use the main-cpu command while in redundancy configuration mode.

From the main CPU submode, use the standby console enable command to enable the standby switch.

Use the exit command to exit redundancy configuration mode.

Examples

This example shows how to enter redundancy configuration mode:

Device(config)# redundancy
Device(config-red)#

This example shows how to enter the main CPU submode:

Device(config)# redundancy
Device(config-red)# main-cpu
Device(config-r-mc)#

redundancy config-sync mismatched-commands

To allow the standby switch to join the stack if a configuration mismatch occurs between the active and standby switches, use the redundancy config-sync mismatched-commands command in privileged EXEC mode.

redundancy config-sync {ignore | validate} mismatched-commands

Syntax Description

ignore

Ignores the mismatched command list.

validate

Revalidates the mismatched command list with the modified running-configuration.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Usage Guidelines

If the command syntax check in the running configuration of the active switch fails while the standby switch is booting, use the redundancy config-sync mismatched-commands command to display the Mismatched Command List (MCL) on the active switch and to reboot the standby switch.

The following is a log entry example for mismatched commands:

00:06:31: Config Sync: Bulk-sync failure due to Servicing Incompatibility. Please check full list of mismatched commands via:
show redundancy config-sync failures mcl
00:06:31: Config Sync: Starting lines from MCL file:
interface GigabitEthernet7/7
! <submode> "interface"
- ip address 192.0.2.0 255.255.255.0
! </submode> "interface"

To display all mismatched commands, use the show redundancy config-sync failures mcl command.

To clean the MCL, follow these steps:

  1. Remove all mismatched commands from the running configuration of the active switch.

  2. Revalidate the MCL with a modified running configuration by using the redundancy config-sync validate mismatched-commands command.

  3. Reload the standby switch.

You can ignore the MCL by doing the following:

  1. Enter the redundancy config-sync ignore mismatched-commands command.

  2. Reload the standby switch; the system changes to SSO mode.


    Note

    If you ignore the mismatched commands, the out-of-sync configuration at the active switch and the standby switch still exists.


  3. Verify the ignored MCL with the show redundancy config-sync ignored mcl command.

If SSO mode cannot be established between the active and standby switches because of an incompatibility in the configuration file, a mismatched command list (MCL) is generated at the active switch and a reload into route processor redundancy (RPR) mode is forced for the standby switch.


Note

RPR mode is supported on Catalyst 3850 switches as a fallback in case of errors. It is not configurable.


If you attempt to establish an SSO after removing the offending configuration and rebooting the standby switch with the same image, the C3K_REDUNDANCY-2-IOS_VERSION_CHECK_FAIL and ISSU-3-PEER_IMAGE_INCOMPATIBLE messages appear because the peer image is listed as incompatible. You can clear the peer image from the incompatible list with the redundancy config-sync ignore mismatched-commands EXEC command while the peer is in a standby cold (RPR) state. This action allows the standby switch to boot in a standby hot (SSO) state when it reloads.

Examples

This example shows how to revalidate the mismatched command list with the modified configuration:

Device# redundancy config-sync validate mismatched-commands
Device#

redundancy force-switchover

To force a switchover from the active switch to the standby switch, use the redundancy force-switchover command in privileged EXEC mode on a switch stack.

redundancy force-switchover

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Usage Guidelines

Use the redundancy force-switchover command to manually switch over to the redundant switch. The redundant switch becomes the new active switch that runs the Cisco IOS image, and the modules are reset to their default settings.

The old active switch reboots with the new image and joins the stack.

If you use the redundancy force-switchover command on the active switch, the switchports on the active switch to go down.

If you use this command on a switch that is in a partial ring stack, the following warning message appears:

Device# redundancy force-switchover
Stack is in Half ring setup; Reloading a switch might cause stack split
This will reload the active unit and force switchover to standby[confirm]

Examples

This example shows how to manually switch over from the active to the standby supervisor engine:

Device# redundancy force-switchover
Device#

redundancy reload

To force a reload of one or all of the switches in the stack, use the redundancy reload command in privileged EXEC mode.

redundancy reload {peer | shelf}

Syntax Description

peer

Reloads the peer unit.

shelf

Reboots all switches in the stack.

Command Default

None

Command Modes

Privileged EXEC

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Usage Guidelines

Before using this command, see the “Performing a Software Upgrade” section of the for additional information.

Use the redundancy reload shelf command to reboot all the switches in the stack.

Examples

This example shows how to manually reload all switches in the stack:

Device# redundancy reload shelf
Device#

reload

To reload the stack member and to apply a configuration change, use the reload command in privileged EXEC mode.

reload [/noverify | /verify] [LINE | at | cancel | in | slot stack-member-number | standby-cpu]

Syntax Description

/noverify

(Optional) Specifies to not verify the file signature before the reload.

/verify

(Optional) Verifies the file signature before the reload.

LINE

(Optional) Reason for the reload.

at

(Optional) Specifies the time in hh:mm for the reload to occur.

cancel

(Optional) Cancels the pending reload.

in

(Optional) Specifies a time interval for reloads to occur.

slot

(Optional) Saves the changes on the specified stack member and then restarts it.

stack-member-number

standby-cpu

(Optional) Reloads the standby route processor (RP).

Command Default

Immediately reloads the stack member and puts a configuration change into effect.

Command Modes

Privileged EXEC

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Usage Guidelines

If there is more than one switch in the switch stack, and you enter the reload slot stack-member-number command, you are not prompted to save the configuration.

Examples

This example shows how to reload the switch stack:

Device# reload
System configuration has been modified. Save? [yes/no]: yes
Reload command is being issued on Active unit, this will reload the whole stack
Proceed with reload? [confirm] yes

This example shows how to reload a specific stack member:

Device# reload slot 6
Proceed with reload? [confirm] y

This example shows how to reload a single-switch switch stack (there is only one member switch):

Device# reload slot 3
System configuration has been modified. Save? [yes/no]: y
Proceed to reload the whole Stack? [confirm] y

show redundancy

To display redundancy facility information, use the show redundancy command in privileged EXEC mode

show redundancy [clients | config-sync | counters | history [reload | reverse] | slaves [slave-name] {clients | counters} | states | switchover history [domain default]]

Syntax Description

clients

(Optional) Displays information about the redundancy facility client.

config-sync

(Optional) Displays a configuration synchronization failure or the ignored mismatched command list (MCL). For more information, see show redundancy config-sync.

counters

(Optional) Displays information about the redundancy facility counter.

history

(Optional) Displays a log of past status and related information for the redundancy facility.

history reload

(Optional) Displays a log of past reload information for the redundancy facility.

history reverse

(Optional) Displays a reverse log of past status and related information for the redundancy facility.

slaves

(Optional) Displays all slaves in the redundancy facility.

slave-name

(Optional) The name of the redundancy facility slave to display specific information for. Enter additional keywords to display all clients or counters in the specified slave.

clients

Displays all redundancy facility clients in the specified slave.

counters

Displays all counters in the specified slave.

states

(Optional) Displays information about the redundancy facility state, such as disabled, initialization, standby or active.

switchover history

(Optional) Displays information about the redundancy facility switchover history.

domain default

(Optional) Displays the default domain as the domain to display switchover history for.

Command Default

None

Command Modes

Privileged EXEC (#)

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Examples

This example shows how to display information about the redundancy facility:

Device# show redundancy
Redundant System Information :
------------------------------
       Available system uptime = 6 days, 9 hours, 23 minutes
Switchovers system experienced = 0
              Standby failures = 0
        Last switchover reason = not known

                 Hardware Mode = Simplex
    Configured Redundancy Mode = SSO
     Operating Redundancy Mode = SSO
              Maintenance Mode = Disabled
                Communications = Down      Reason: Simplex mode

Current Processor Information :
------------------------------
               Active Location = slot 1
        Current Software state = ACTIVE
       Uptime in current state = 6 days, 9 hours, 23 minutes
                 Image Version = Cisco IOS Software, IOS-XE Software, Catalyst 3
850 L3 Switch Software (CAT3850-UNIVERSALK9-M), Version 03.08.59.EMD EARLY DEPLO
YMENT ENGINEERING NOVA_WEEKLY BUILD, synced to DSGS_PI2_POSTPC_FLO_DSBU7_NG3K_11
05
Copyright (c) 1986-2012 by Cisco Systems, Inc.
Compiled Sun 16-S
        Configuration register = 0x102

Peer (slot: 0) information is not available because it is in 'DISABLED' state
Device#

This example shows how to display redundancy facility client information:

Device# show redundancy clients
Group ID =     1
     clientID = 20002    clientSeq =     4    EICORE HA Client
     clientID = 24100    clientSeq =     5    WCM_CAPWAP
     clientID = 24101    clientSeq =     6    WCM RRM HA
     clientID = 24103    clientSeq =     8    WCM QOS HA
     clientID = 24105    clientSeq =    10    WCM_MOBILITY
     clientID = 24106    clientSeq =    11    WCM_DOT1X
     clientID = 24107    clientSeq =    12    WCM_APFROGUE
     clientID = 24110    clientSeq =    15    WCM_CIDS
     clientID = 24111    clientSeq =    16    WCM_NETFLOW
     clientID = 24112    clientSeq =    17    WCM_MCAST
     clientID = 24120    clientSeq =    18    wcm_comet
     clientID = 24001    clientSeq =    21    Table Manager Client
     clientID = 20010    clientSeq =    24    SNMP SA HA Client
     clientID = 20007    clientSeq =    27    Installer HA Client
     clientID =    29    clientSeq =    60    Redundancy Mode RF
     clientID =   139    clientSeq =    61    IfIndex
     clientID =  3300    clientSeq =    62    Persistent Variable
     clientID =    25    clientSeq =    68    CHKPT RF
     clientID = 20005    clientSeq =    74    IIF-shim
     clientID = 10001    clientSeq =    82    QEMU Platform RF

<output truncated>

The output displays the following information:

  • clientID displays the client’s ID number.

  • clientSeq displays the client’s notification sequence number.

  • Current redundancy facility state.

This example shows how to display the redundancy facility counter information:

Device# show redundancy counters
Redundancy Facility OMs

               comm link up = 0
             comm link down = 0
          invalid client tx = 0
          null tx by client = 0
                tx failures = 0
      tx msg length invalid = 0

      client not rxing msgs = 0
 rx peer msg routing errors = 0
           null peer msg rx = 0
        errored peer msg rx = 0

                 buffers tx = 0
     tx buffers unavailable = 0
                 buffers rx = 0
      buffer release errors = 0

 duplicate client registers = 0
  failed to register client = 0
       Invalid client syncs = 0

Device#

This example shows how to display redundancy facility history information:

Device# show redundancy history
00:00:00 *my state = INITIALIZATION(2) peer state = DISABLED(1)
00:00:00 RF_EVENT_INITIALIZATION(524) op=0 rc=0
00:00:00 *my state = NEGOTIATION(3) peer state = DISABLED(1)
00:00:01 client added: Table Manager Client(24001) seq=21
00:00:01 client added: SNMP SA HA Client(20010) seq=24
00:00:06 client added: WCM_CAPWAP(24100) seq=5
00:00:06 client added: WCM QOS HA(24103) seq=8
00:00:07 client added: WCM_DOT1X(24106) seq=11
00:00:07 client added: EICORE HA Client(20002) seq=4
00:00:09 client added: WCM_MOBILITY(24105) seq=10
00:00:09 client added: WCM_NETFLOW(24111) seq=16
00:00:09 client added: WCM_APFROGUE(24107) seq=12
00:00:09 client added: WCM RRM HA(24101) seq=6
00:00:09 client added: WCM_MCAST(24112) seq=17
00:00:09 client added: WCM_CIDS(24110) seq=15
00:00:09 client added: wcm_comet(24120) seq=18
00:00:22 RF_STATUS_REDUNDANCY_MODE_CHANGE(405) First Slave(0) op=0 rc=0
00:00:22 RF_STATUS_REDUNDANCY_MODE_CHANGE(405) Slave(6107) op=0 rc=0
00:00:22 RF_STATUS_REDUNDANCY_MODE_CHANGE(405) Slave(6109) op=0 rc=0
00:00:22 RF_STATUS_REDUNDANCY_MODE_CHANGE(405) Slave(6128) op=0 rc=0
00:00:22 RF_STATUS_REDUNDANCY_MODE_CHANGE(405) Slave(8897) op=0 rc=0
00:00:22 RF_STATUS_REDUNDANCY_MODE_CHANGE(405) Slave(8898) op=0 rc=0
00:00:22 RF_STATUS_REDUNDANCY_MODE_CHANGE(405) Slave(8901) op=0 rc=0
00:00:22 RF_EVENT_SLAVE_STATUS_DONE(523) First Slave(0) op=405 rc=0
00:00:22 RF_STATUS_REDUNDANCY_MODE_CHANGE(405) Redundancy Mode RF(29) op=0 rc=0
00:00:22 RF_STATUS_REDUNDANCY_MODE_CHANGE(405) IfIndex(139) op=0 rc=0

<output truncated>

This example shows how to display information about the redundancy facility slaves:

Device# show redundancy slaves
Group ID =   1
Slave/Process ID =  6107   Slave Name = [installer]
Slave/Process ID =  6109   Slave Name = [eicored]
Slave/Process ID =  6128   Slave Name = [snmp_subagent]
Slave/Process ID =  8897   Slave Name = [wcm]
Slave/Process ID =  8898   Slave Name = [table_mgr]
Slave/Process ID =  8901   Slave Name = [iosd]

Device#

This example shows how to display information about the redundancy facility state:

Device# show redundancy states
         my state = 13 -ACTIVE
       peer state =  1 -DISABLED
             Mode = Simplex
          Unit ID = 1

  Redundancy Mode (Operational) = SSO
   Redundancy Mode (Configured) = SSO
               Redundancy State = Non Redundant
                      Manual Swact = disabled (system is simplex (no peer unit))

   Communications = Down      Reason: Simplex mode

     client count = 75
   client_notification_TMR = 360000 milliseconds
            keep_alive TMR = 9000 milliseconds
          keep_alive count = 0
      keep_alive threshold = 18
             RF debug mask = 0

Device#

show redundancy config-sync

To display a configuration synchronization failure or the ignored mismatched command list (MCL), if any, use the show redundancy config-sync command in EXEC mode.

show redundancy config-sync {failures {bem | mcl | prc} | ignored failures mcl}

Syntax Description

failures

Displays MCL entries or best effort method (BEM)/Parser Return Code (PRC) failures.

bem

Displays a BEM failed command list, and forces the standby switch to reboot.

mcl

Displays commands that exist in the switch’s running configuration but are not supported by the image on the standby switch, and forces the standby switch to reboot.

prc

Displays a PRC failed command list and forces the standby switch to reboot.

ignored failures mcl

Displays the ignored MCL failures.

Command Default

None

Command Modes

User EXEC

Privileged EXEC

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Usage Guidelines

When two versions of Cisco IOS images are involved, the command sets supported by two images might differ. If any of those mismatched commands are executed on the active switch, the standby switch might not recognize those commands, which causes a configuration mismatch condition. If the syntax check for the command fails on the standby switch during a bulk synchronization, the command is moved into the MCL and the standby switch is reset. To display all the mismatched commands, use the show redundancy config-sync failures mcl command.

To clean the MCL, follow these steps:

  1. Remove all mismatched commands from the active switch's running configuration.

  2. Revalidate the MCL with a modified running configuration by using the redundancy config-sync validate mismatched-commands command.

  3. Reload the standby switch.

Alternatively, you could ignore the MCL by following these steps:

  1. Enter the redundancy config-sync ignore mismatched-commands command.

  2. Reload the standby switch; the system transitions to SSO mode.


    Note

    If you ignore the mismatched commands, the out-of-synchronization configuration on the active switch and the standby switch still exists.


  3. You can verify the ignored MCL with the show redundancy config-sync ignored mcl command.

Each command sets a return code in the action function that implements the command. This return code indicates whether or not the command successfully executes. The active switch maintains the PRC after executing a command. The standby switch executes the command and sends the PRC back to the active switch. A PRC failure occurs if these two PRCs do not match. If a PRC error occurs at the standby switch either during bulk synchronization or line-by-line (LBL) synchronization, the standby switch is reset. To display all PRC failures, use the show redundancy config-sync failures prc command.

To display best effort method (BEM) errors, use the show redundancy config-sync failures bem command.

Examples

This example shows how to display the BEM failures:

Device> show redundancy config-sync failures bem
BEM Failed Command List
-----------------------

 The list is Empty

This example shows how to display the MCL failures:

Device> show redundancy config-sync failures mcl
Mismatched Command List
-----------------------

The list is Empty

This example shows how to display the PRC failures:

Device# show redundancy config-sync failures prc
PRC Failed Command List
-----------------------

 The list is Empty

show switch

To display information that is related to the stack member or the switch stack, use the show switch command in EXEC mode.

Command Default

None

Command Modes

User EXEC

Privileged EXEC

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Examples

This example shows how to display summary stack information:

This example shows how to display detailed stack information:

This example shows how to display the member 6 summary information:

Device# show switch 6
Switch#  Role      Mac Address     Priority     State
--------------------------------------------------------
 6       Member     0003.e31a.1e00     1         Ready

This example shows how to display the neighbor information for a stack:

Device# show switch neighbors
  Switch #    Port A       Port B
  --------    ------       ------
      6        None           8
      8         6            None

This example shows how to display stack-port information:

Device# show switch stack-ports
  Switch #    Port A       Port B
  --------    ------       ------
    6          Down          Ok
    8           Ok          Down

stack-mac persistent timer

To enable the persistent MAC address feature, use the stack-mac persistent timer command in global configuration mode on the switch stack or on a standalone switch. To disable the persistent MAC address feature, use the no form of this command.

stack-mac persistent timer [0 | time-value]

no stack-mac persistent timer

Syntax Description

0

time-value

(Optional) Time period in minutes before the stack MAC address changes to that of the new active switch. The range is 1 to 60 minutes.

Command Default

Persistent MAC address is disabled. The MAC address of the stack is always that of the first active switch.

Command Modes

Global configuration

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

stack-mac update force

To update the stack MAC address to the MAC address of the active switch, use the stack-mac update force command in EXEC mode on the active switch.

stack-mac update force

Syntax Description

This command has no arguments or keywords.

Command Default

None

Command Modes

User EXEC

Privileged EXEC

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Usage Guidelines

By default, the stack MAC address is not changed to the MAC address of the new active switch during a high availability (HA) failover. Use the stack-mac update force command to force the stack MAC address to change to the MAC address of the new active switch.

If the switch with the same MAC address as the stack MAC address is currently a member of the stack, the stack-mac update force command has no effect. (It does not change the stack MAC address to the MAC address of the active switch.)


Note

If you do not change the stack MAC address, Layer 3 interface flapping does not occur. It also means that a foreign MAC address (a MAC address that does not belong to any of the switches in the stack) could be the stack MAC address. If the switch with this foreign MAC address joins another stack as the active switch, two stacks will have the same stack MAC address. You must use the stack-mac update force command to resolve the conflict.


Examples

This example shows how to update the stack MAC address to the MAC address of the active switch:

Device> stack-mac update force
Device>

You can verify your settings by entering the show switch privileged EXEC command. The stack MAC address includes whether the MAC address is local or foreign.

standby console enable

To enable access to the standby console switch, use the standby console enable command in redundancy main configuration submode. To disable access to the standby console switch, use the no form of this command.

standby console enable

no standby console enable

Syntax Description

This command has no arguments or keywords.

Command Default

Access to the standby console switch is disabled.

Command Modes

Redundancy main configuration submode

Command History

Release Modification

Cisco IOS XE Everest 16.5.1a

This command was introduced.

Usage Guidelines

This command is used to collect and review specific data about the standby console. The command is useful primarily for Cisco technical support representatives troubleshooting the switch.

Examples

This example shows how to enter the redundancy main configuration submode and enable access to the standby console switch:

Device(config)# redundancy
Device(config-red)# main-cpu
Device(config-r-mc)# standby console enable
Device(config-r-mc)#