This document provides a sample configuration for using EEM with the IOS-XR releases for the ASR9000. Though EEM is found in other XR platforms also, this example is specifically tested and demonstrated for hte ASR9000.
Using LAG or Link Aggregation or what IOS calls EtherChannel you have the ability to use the "min-links" feature. It allows the system to shut down the whole bundle when there are not enough members available, hence aggregated bandwidth to support the traffic.
There are cases where you cannot use or don't want to use LAG, but rather use ECMP, Equal Cost Multipath, to support more aggregated bandwidth.
In that case, when a certain number of path disappears, there is no way to automatically shut other paths to instantiate failover to a redundant ECMP path.
This document will show how to use EEM to detect an ECMP member going down and automatically shut the other members of that path.
b) XR configuration
c) Setting up interfaces to Monitor
d) How to determine if the script was invoked
e) Sample Operation
1) Setup the interfaces that are to be shut when this script kicks in. Edit the minlinks_ecmp.tcl file with a file editor such as notepad. In the top of the script there is a section that provides these variables. Change the interface names as if you’d configure them yourself.
#Interfaces of the ECMP bundle that need to be shut
set _if_1 "interface g0/0/0/29"
set _if_2 "interface g0/0/0/28"
set _if_3 "interface g0/0/0/27"
set _if_4 "interface g0/0/0/26"
2) copy the saved and modified tcl file to the disk0:
event manager environment _syslog_pattern .*(GigabitEthernet)(0/0/0/0|0/0/0/20).*(changed state to Down)
event manager directory user policy disk0:
event manager policy minlinks_ecmp.tcl username eem type user
aaa authorization eventmanager default local
c) Setting up the interfaces to monitor
The syslog pattern is currently setup for monitoring Gigabit Ethernet interfaces 0/0/0/0 and 0/0/0/20.
If you’d like to monitor TenG interfaces TenGigE0/3/0/0 and TenGigE0/7/0/1 then change the line to:
event manager environment _syslog_pattern .*(TenGigE)(0/3/0/0|0/7/0/1).*(changed state to Down)
Note that everything is case and space sensitive.
d) How to determine if the script was invoked
A SYSLOG message will be printed everytime the script is invoked!
RP/0/RSP0/CPU0:Jan 25 09:57:41.248 : minlinks_ecmp.tcl: ECMP DISTRIBTION SHUTDOWN ON THIS ROUTER!
e) Sample operation :
We are receiving an event of a interface down that we are monitoring:
LC/0/0/CPU0:Jan 25 10:07:31.742 : ifmgr: %PKT_INFRA-LINK-3-UPDOWN : Interface GigabitEthernet0/0/0/0, changed state to Down
LC/0/0/CPU0:Jan 25 10:07:31.742 : ifmgr: %PKT_INFRA-LINEPROTO-5-UPDOWN : Line protocol on Interface GigabitEthernet0/0/0/0, changed state to Down
RP/0/RSP0/CPU0:Jan 25 10:07:31.758 : ospf: %ROUTING-OSPF-5-ADJCHG : Process CORE, Nbr 172.16.1.1 on GigabitEthernet0/0/0/0 in area 0 from FULL to DOWN, Neighbor Down: interface down or detached,vrf default vrfid 0x60000000
!EEM is kicking in to admin shut the pre defined interfaces:
LC/0/0/CPU0:Jan 25 10:07:37.931 : ifmgr: %PKT_INFRA-LINK-5-CHANGED : Interface GigabitEthernet0/0/0/26, changed state to Administratively Down
LC/0/0/CPU0:Jan 25 10:07:37.931 : ifmgr: %PKT_INFRA-LINK-5-CHANGED : Interface GigabitEthernet0/0/0/27, changed state to Administratively Down
LC/0/0/CPU0:Jan 25 10:07:37.931 : ifmgr: %PKT_INFRA-LINK-5-CHANGED : Interface GigabitEthernet0/0/0/28, changed state to Administratively Down
LC/0/0/CPU0:Jan 25 10:07:37.932 : ifmgr: %PKT_INFRA-LINK-5-CHANGED : Interface GigabitEthernet0/0/0/29, changed state to Administratively Down
RP/0/RSP0/CPU0:Jan 25 10:07:38.238 : config: %MGBL-CONFIG-6-DB_COMMIT : Configuration committed by user 'eem'. Use 'show configuration commit changes 1000000656' to view the changes.
** Note the config changes made by the username as per configuration
RP/0/RSP0/CPU0:Jan 25 10:07:38.739 : config: %MGBL-SYS-5-CONFIG_I : Configured from console by console on vty100 (0.0.0.0)
** Syslog message is printing
RP/0/RSP0/CPU0:Jan 25 10:07:39.007 : minlinks_ecmp.tcl: ECMP DISTRIBTION SHUTDOWN ON THIS ROUTER!
XR EEM standard documentation.
Additional note, XR 4.0 and XR4.01 have a bug that will be fixed in 4.1 that prevents proper invokation of TCL upon syslog events. Please consult TAC for ddts and resolution prior to 4.1
My experience has been that it is normal for C21 power cables to have some difficulty fully seating in the PEM's, even after backing out the set screws more than they already are from the factory. Eventually we get them fully seated and secured, but...
I have a small MPLS network serving 15 clients,, I am delivering services via L3 VPNs and wanted to implement end to end QOS services using DSCP Pipe mode. however I am running into a barrier finding templates that can assist.I wanted to have some f...
HiWe are using ASR1K as PPPoE BRAS. With our pppoe service we have different accounting information about the volume of traffic which subscriber uses. this information is retrieved via different accounting updates which are sent for the particular P...
Hi! We have some troubles with igmp snooping when we are trying to change linecards from trident to typhoon. We have more then 1000 igmp groups on our router. Software version 5.3.4 SP7.After changing linecards seems that IGMP messages starts to drop...
HiAs I understood the main difference between ASR9K and ASR99k is SCB Module. This simply means Fabric of ASR99K is provided by a dedicated module. Regarding BNG feature, Is the model of SCB has any impact on Number of PPPoE Sessions on Amount of tra...