GUI - Troubleshooting ASR 1000 v4
GUI - Troubleshooting ASR 1000 v4
GUI - Troubleshooting ASR 1000 v4
Advanced Services
Version 4
Corporate Headquarters
Cisco
170 West Tasman Drive
San Jose, CA 95134-1706
USA
http://www.cisco.com
Tel: 408 526-4000
800 553-NETS (6387)
Fax: 408 526-4100
Contenido
Contenido........................................................................................................................................2
Introducción....................................................................................................................................3
Referencias .................................................................................................................................. 34
Glosario ........................................................................................................................................ 35
Historia .................................................................................................................................... 36
Revisiones .............................................................................................................................. 36
A través de esta guía se intentara transmitir los conocimientos básicos necesarios para poder interpretar
los mensajes de error y crashes en los routers de la gama ASR1000, de modo que se pueda determinar en
la medida de lo posible si se trata de un error de hardware o software, así como los comandos básicos
troubleshooting para poder recopilar la información necesaria con el objetivo de agilizar la escalación y
permitir un mejor análisis de la incidencia.
Esta guía en ningún momento pretende reemplazar ó sustituir la documentación oficial de Cisco que se
encuentra disponible en múltiples páginas WEB de Cisco, sino mas bien extraer de ellas, lo fundamental
para ofrecer unas indicaciones de cómo proceder en la mayoría de los casos, donde se requiera la
instalación, manipulación tanto del hardware como del software del mencionado dispositivo.
Introducción al hardware
De la gama de equipos Cisco ASR1000 actualmente están validados en el Libro técnico de EDCs
los modelos ASR1001, 1002, 1002-X.
Escalabilidad ESP 2.5 Gbps a 5 Gbps (por licencia) 5 Gbps (ESP5) a 10 Gbps (ESP10) 5 Gbps a 36 Gbps (por licencia)
Escalabilidad encriptación
1.8 Gbps 1.8 Gbps (ESP5) a 4 Gbps (ESP10) 4 Gbps
hardware
Fuente de alimentación Si: Doble fuente de alimentación; Si: Doble fuente de alimentación; Si: Doble fuente de alimentación;
redundante con la opción de ser AC o DC con la opción de ser AC o DC con la opción de ser AC o DC
Flujo de aire De delante hacia atrás De delante hacia atrás De delante hacia atrás
*El modelo ASR1001 validado para Telefónica es el “Cisco ASR1001 Chassis w/o IDC” que no tiene tarjeta hija integrada (IDC).
El rendimiento de la procesadora de servicio se puede incrementar del valor por defecto 2.5 Gbps a
5 Gbps activándolo por licencia (FLS-ASR1001-5G).
La SIP10 integrada en el chasis del ASR1002 tiene 3 slots para tarjetas SPA y donde normalmente
llevaría el cuarto slot para SPA es donde este equipo lleva integrado la RP y 4 puertos
GigabitEthernet con slots SFP.
La procesadora de servicio (ESP) es modular y se puede sacar del chassis. Este equipo permite la
procesadora de servicio ESP5 o la ESP10.
Solo las SPA soportan la funcionalidad de online insert and removal ( OIR).
Introducción al ASR1002-X
El modelo ASR1002-X es un equipo de tamaño 2 RU, en el chasis integra la Route Processor, procesadora de
servicio (ESP) y un SIP con 6 puertos GigabitEthernet con slots SFP.
La procesadora de servicio (ESP) que en este modelo no es modular, ofrece por defecto un ancho de banda
de 5Gbps y permite aumentar por licencia hasta 10 Gbps, 20 Gbps y 36 Gbps.
Solo las SPA soportan la funcionalidad de online insert and removal ( OIR).
El ASR 1002 no permite tener redundancia de hardware ni de la RP ni ESP, pero si permite redundancia en
software, es decir correr dos IOS en la misma RP.
Conviene para hacer troubleshooting de los equipos ASR1000 el entender la arquitectura de esta plataforma,
para poder asociar luego los mensajes de error a los diferentes componentes.
Los ASR1000 tienen una arquitectura de tipo distribuido, podemos separarlo en tres grandes componentes:
Route Processor (RP) se encarga del plano de control
Embedded Series Processor (ESP) se encarga del plano de forwarding
SIP Cards se encargan de la entrada y salida a la red
Los planos de control y de forwarding están separados, lo que permite tener un nivel alto de redundancia. La
carga de uno de estos planos no afecta a otra, son independientes.
El plano de control es de tipo distribuido, no solo la RP sino la ESP e incluso las tarjetas SIP tienen
procesadoras de control lo que significa que tienen su propia CPU y memoria para hacer operaciones de
control.
El plano de forwarding, sin embargo es de tipo centralizado todo tráfico pasa por la ESP.
A nivel software tambien los ASR1000 son sistemas distribuidos, la RP, ESP y las SIP cards corren un kernel de
Linux.
Cada tarjeta SIP corre su propio proceso de Linux Kernel y tiene procesos separados para cada SPA que esta
insertada. En Linux cada proceso tiene asignada un espacio de memoria único, al no ser compartida por
otros procesos es más estable. Un fallo de una SPA no debe afectar a otros procesos que corren en el kernel
de la SIP Card (al ser procesos independientes con memoria no compartida).
El IOS corre en el kernel Linux de la RP como un proceso más que se llama IOSD. El CLI es el mismo que el IOS
de otras plataformas.
El kernel de IOS-XE es multitarea y gestiona cada proceso de una forma “preemptive”, es decir la CPU puede
parar la ejecución de un proceso para correr otro proceso de prioridad más alta. Esto se traduce en que los
De cara al troubleshooting en los ASR es importante discernir no solo si es de tipo hardware o software sino
también si el problema es del IOS (por tanto independiente de la plataforma) o específico de la plataforma
(IOS XE).
Con una arquitectura de este tipo tenemos que tener en cuenta que podemos tener un CLI que nos
responde correctamente pero a nivel de forwarding el equipo no funciona.
Si tenemos un problema específico de la plataforma, generalmente en los mensajes de error nos indicará
que proceso está siendo afectado.
Los mensajes de error de IOS-XE son muy similares a los mensajes de error de IOS, el formato es el siguiente:
En el campo “facility” nos indica el proceso afectado, a continuación se muestra un resumen de los procesos
del IOS-XE y su función para de este modo ver que puede estar afectando y a qué nivel.
El proceso de IOSD tiene tres subprocesos o flujos IOS thread, Fast thread and IFS thread
El “Fast thread” tiene una prioridad más alta que la mayoría de los procesos IOS-XE por lo que si hace un uso
intensivo de la CPU si puede afectar a otros procesos IOS-XE ralentizándolos. Esto no pasa con IOS thread o
IFS thread porque no tienen tanta prioridad y aunque hagan un uso intensivo de la CPU el kernel del IOS-XE
permite que se sigan corriendo otros procesos.
Router#show platform
Chassis type: ASR1002
Slot Type State Insert time (ago)
--------- ------------------- --------------------- -----------------
0 ASR1002-SIP10 ok 2d22h
0/0 4XGE-BUILT-IN ok 2d22h
R0 ASR1002-RP1 ok, active 2d22h
F0 ASR1000-ESP5 ok, active 2d22h
P0 ASR1002-PWR-AC ok 2d22h
P1 ASR1002-PWR-AC ok 2d22h
Slot CPLD Version Firmware Version
--------- ------------------- ---------------------------------------
0 07120202 12.2(33r)XN2
R0 08011017 12.2(33r)XN2
F0 07091401 12.2(33r)XN2
“Load average” significa el numero de procesos esperando ser despachados en el gestor de colas.
ASR1006a#show platform software status control-processor brief
Load Average
Slot Status 1-Min 5-Min 15-Min
RP0 Healthy 0.48 0.23 0.14
RP1 Healthy 0.03 0.03 0.04
ESP0 Healthy 0.04 0.06 0.02
SIP1 Healthy 0.03 0.04 0.00
SIP2 Healthy 0.01 0.04 0.00
Memory (kB)
Slot Status Total Used (Pct) Free (Pct) Committed (Pct)
RP0 Healthy 3919872 2224188 (53%) 1695684 (41%) 2323000 (56%)
RP1 Healthy 3919872 2151548 (52%) 1768324 (42%) 2319812 (56%)
ESP0 Healthy 2030444 1107012 (52%) 923432 (44%) 3404448 (162%)
SIP1 Healthy 484452 291300 (55%) 193152 (36%) 242196 (46%)
SIP2 Healthy 484452 291424 (55%) 193028 (36%) 242172 (46%)
CPU Utilization
Slot CPU User System Nice Idle IRQ SIRQ IOwait
RP0 0 11.68 1.51 0.00 86.50 0.04 0.12 0.12
RP1 0 9.15 1.51 0.00 88.26 0.00 0.04 1.01
ESP0 0 5.35 3.43 0.00 91.14 0.02 0.03 0.00
SIP1 0 2.55 0.54 0.00 96.87 0.00 0.01 0.00
SIP2 0 2.53 0.54 0.00 96.90 0.00 0.01 0.00
La columna de “Committed” significa el tamaño máximo de memoria que el IOS-XE podría usar. Linux tiene
un sistema de gestión de memoria virtual y los bloques de memoria física que no se asignan hasta que los
datos no son realmente almacenados. Por tanto el tamaño de memoria “Committed” no es el tamaño de
memoria física sino el tamaño de memoria virtual pedida.
En muchos ESPs se observa que tienen en la columna “Committed” un valor por encima del 100%. Esto es
normal y no significa que haya problemas a no ser que el valor de la usada (Columna “Used”) este cercano al
100%.
Otro comando que también es útil es “monitor platform software process" permite revisar la utilización de
la CPU y memoria de los procesos IOS-XE.
Hay que tener en cuenta que el proceso “ppc_linux_iosd” es el nombre del proceso IOSD que nos sale al
ejecutar el comando “monitor platform software process”
Este comando permite que se auto-ejecute el comando cada cierto intervalo de tiempo.
show platform software process slot {r0|r1|f0|f1|0|1|2} monitor cycles <> interval
<> lines
cycles: <1-4294967295> Number of times (default 5) to run monitor command
interval: Delay (in seconds) after each command (default 3)
lines: Set number of lines of output displayed
Tipo de Crashes
RP
Varios procesos Cisco IOS XE que corren sobre
un linux kernel. Por ejemplo el chassis manager,
Cisco IOS XE Process Crash ESP
el forwarding manager, interface manager, etc
que corren en la RP
SIP
RP
Linux Kernel Crash ESP Linux kernel que corre sobre la RP, ESP y SIP.
SIP
Con el fin de determinar la causa, el primer paso es capturar toda la información sobre el problema
como sea posible.
El formato del fichero es diferente dependiendo del tipo de crash (IOSD o SPA Driver):
crashinfo_RP_SlotNumber_00_Date- crashinfo_RP_00_00_20080807-
IOSD Crash
Time-Zone 063430-UTC
crashinfo_SIP_SlotNumber_00_Date- crashinfo_SIP_00_00_20080828-
SPA Driver Crash
Time-Zone 084907-UTC
Cuando hay un crash de un proceso se genera un fichero de Core Dump, en la tabla de abajo se puede ver
donde se almacena dicho fichero.
Un fichero de Core Dump es una copia de la imagen de memoria del proceso, por tanto guarda mucha más
información que un fichero de crashinfo. Es recomendable guardar el fichero de Core Dump hasta la
resolución del caso.
ASR 1001
ASR 1002 bootflash:core/ sobre la RP
ASR 1002-X
ASR 1004
harddisk:core/ sobre la RP
ASR 1006
No solo los ficheros de Core Dump de la RP sino también de los procesos de SIP o la ESP son almacenados en
la localización que se indica en la tabla.
hostname_RP_SlotNumber_ppc_linux_iosd-
IOSD Crash Router_RP_0_ppc_linux_iosd-_17407.core.gz
_ProcessID.core.gz
SPA Driver
hostname_SIP_SlotNumber_mcpcc-lc-ms_ProcessID.core.gz Router_SIP_1_mcpcc-lc-ms_6098.core.gz
Crash
Router_RP_0_fman_rp_28778.core.gz
IOS XE Process
hostname_FRU_SlotNumber_ProcessName_ProcessID.core.gz
Crash
Router_ESP_1_cpp_cp_svr_4497.core.gz
Linux Kernel
hostname_FRU_SlotNumber_kernel.core Router_ESP_0_kernel.core
Crash
IOSD Crash
Como se ha comentado el IOS corre bajo un proceso de Linux sobre la Route Processor (RP), el nombre de
este proceso es (ppc_linux_iosd-), el demonio se llama IOSD.
En el caso de tener configurada redundancia de software, en los modelos ASR1002 y ASR1004, habrá dos
demonios IOSD corriendo sobre la RP.
Para identificar un crash del IOSD, hay que encontrar un mensaje de “Exception” del tipo que se muestra en
la tabla de abajo.
En el caso de un ASR1002 o 1004 que no tenga redundancia de software este tipo de crash lo que provoca es
reinicio del router. Si tuviera redundancia de software al haber dos instancias de IOS, habría un switchover
del IOSD en la RP. Si tuviéramos un ASR1006 con redundancia hardware y software, este tipo de crash
provocaría un switchover de la RP.
Cuando hay un crash del IOSD, se genera un fichero de crashinfo y de core dump sobre la RP .
Ejemplo en un ASR1002:
Router#dir bootflash:
Directory of bootflash:
bootflash:crashinfo_RP_00_00_20080904-092940-UTC
Router#dir bootflash:core
Directory of bootflash:core/
3620877 -rw- 10632280 Sep 4 2008 09:31:00 +00:00 Router_RP_0_ppc_linux_iosd-
_17407.core.gz
Aug 28 08:52:12.418: %PMAN-3-PROCHOLDDOWN: SIP0: pman.sh: The process mcpcc-lc-ms has been helddown (rc 142)
Aug 28 08:52:12.425: %ASR1000_OIR-6-REMSPA: SPA removed from subslot 0/0, interfaces disabled
Aug 28 08:52:12.427: %SPA_OIR-6-OFFLINECARD: SPA (SPA-1X10GE-L-V2) offline in subslot 0/0
Aug 28 08:52:13.131: %ASR1000_OIR-6-INSSPA: SPA inserted in subslot 0/0
Aug 28 08:52:19.060: %LINK-3-UPDOWN: SIP0/0: Interface EOBC0/1, changed state to up
Aug 28 08:52:20.064: %SPA_OIR-6-ONLINECARD: SPA (SPA-1X10GE-L-V2) online in subslot 0/0
Cuando hay un crash del driver de una SPA, se genera un fichero de crashinfo y de core dump sobre la RP.
Router#dir bootflash:
Directory of bootflash:/
Router#dir bootflash:core
Directory of bootflash:/core/
cmand RP
cmcc SIP
imand RP
Interface Manager
imccd SIP
A continuación se muestra un ejemplo de crash del proceso “cpp_cp_svr” sobre una ESP en un Cisco ASR
1002, el mensaje que podría aparecer por consola es el siguiente:
Jan 24 23:37:06.644 JST: %PMAN-3-PROCHOLDDOWN: F0: pman.sh: The process cpp_cp_svr has been
helddown (rc 134)
Jan 24 23:37:06.727 JST: %PMAN-0-PROCFAILCRIT: F0: pvp.sh: A critical processcpp_cp_svr has
failed (rc 134)
Jan 24 23:37:11.539 JST: %ASR1000_OIR-6-OFFLINECARD: Card (fp) offline in slot F0
Router#dir bootflash:core
Directory of bootflash:/core/
También se puede buscar el fichero de tracelog del proceso que puede incluir información útil:
Router#dir bootflash:tracelogs/cpp_cp*
Directory of bootflash:tracelogs/
Para identificar este tipo de crashes, hay que encontraren la salida de consola el siguiente tipo de mensaje o
encontrar un fichero de core dump de cpp-mcplo-ucode:
Dec 17 05:50:26.417 JST: %IOSXE-3-PLATFORM: F0: cpp_cdm: CPP crashed, core file
/tmp/corelink/Router_ESP_0_cpp-mcplo-ucode_121708055026.core.gz
Dec 17 05:50:28.206 JST: %ASR1000_OIR-6-OFFLINECARD:
Card (fp) offline in slot F0
Router#dir bootflash:core
Directory of bootflash:core/
Cuando hay un crash del kernel, el módulo reinicia sin salida por consola de la información del crash. Sin
embargo una vez reiniciado se puede identificar si ha habido este tipo de crash porque debe aparecer un
fichero de core dump. El tamaño del fichero de core dump puede ser mayor de 100MBytes.
Router#dir harddisk:core
Directory of harddisk:/core/
Los routers de la gama ASR1000 se pueden actualizar usando un paquete de software consolidado,
que consiste en un único archivo. Otra alternativa es mediante subpaquetes, es decir varios ficheros
que permiten actualizar los diferentes componentes de manera independiente. Solo se recomienda
actualizar los routers de la gama ASR1000 usando el paquete de software consolidado y no con
subpaquetes.
Ejemplo:
Nota.- Si falla la transferencia TFTP por timeout comprobar que la dirección IP origen para el protocolo TFTP es la loopback
de gestión (normalmente loopback 600). El comando asociado es: “ip tftp source-interface loopback600”.
Comprobar que hay conectividad IP con el servidor TFTP con origen la loopback600.
Verificar que la imagen esta descargada en la bootflash: con el comando “dir bootflash:”
ASR1002#dir bootflash:
Directory of bootflash:/
Se puede comprobar que el checksum es el mismo que el publicado en la web de Cisco para dicha
imagen.
Paso 7.- Verificar el valor de “configuration register”
Se debe comprobar que el valor de config-register es 0x2102 en la última línea de la salida del
comando “show version”. Si tuviera un valor diferente habría que configurarlo al valor normal 0x2102.
ASR1002#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
ASR1002 (config)#config-register 0x2102
ASR1002 (config)#^Z
Para seleccionar la imagen de IOS-XE con la que queremos arranque el router, debemos configurar el
comando:
boot system flash bootflash:<nombre_fichero_imagen>
En el comando, en el path se debe indicar el device, “bootflash:” o “harddisk:”, se puede cargar una imagen
que esté alojada en el disco duro harddisk: (no todos los modelos tienen disco duro).
ASR1002#reload
Proceed with reload? [confirm]
ASR1002#sh version
A summary of U.S. laws governing Cisco cryptographic products may be found at:
http://www.cisco.com/wwl/export/crypto/tool/stqrg.html
ASR1002#
Nota (copiar imagen usando un USB): Las imágenes de IOS-XE ocupan muchos megabytes, por lo que la transferencia
TFTP puede durar bastante tiempo dependiendo del tipo de acceso. Si se tiene acceso local al equipo y un dispositivo de
almacenamiento USB, el procedimiento es similar al indicado, excepto en el punto 5, donde habrá que conectar el
dispositivo de almacenamiento USB a un puerto USB del chasis del ASR (usb0 ó usb1) y ejecutar el comando “ copy
usb<x>:<fichero-imagen-IOS-XE> bootflash:”
Nota (FPD):
En los ASR1000, el paquete de firmware para los FPD (Field Programmable Device) de las tarjetas SPA (Shared Port
Adapter), va incluido en la imagen de IOS-XE.
Ver ROMMON Release Requirements para conocer la release mínima de ROMMON soportada
http://www.cisco.com/c/en/us/td/docs/routers/asr1000/release/notes/asr1k_rn_rel_notes/asr1k_rn_sys_req.html#96
550
Hay que seguir el procedimiento de upgrade descrito en “ROMmon Upgrade Guide” y que se resumen abajo:
http://www.cisco.com/c/en/us/td/docs/routers/asr1000/rommon/rommon.html
Tras reiniciar el router debe arrancar normalmente suponiendo que está configurado autoboot (config-register 0x2102).
Si arrancara en modo ROMmon, revisar el siguiente apartado para ver cómo realizar boot de una imagen de IOS XE.
A.- Procedimiento cuando hay una imagen de IOS XE válida en algún dispositivo de memoria (bootflash:, harddisk: o
USB)
1.-Verificar si hay una imagen en alguno de los dispositivos de almacenamiento conectados al router.
Ejecutamos el comando “dev” y luego un “dir” en cada uno de los devices, para listar los ficheros. Si
encontramos alguna imagen ejecutamos el siguiente comando para arrancar con dicha imagen.
“boot <nombre_dispositivo>:<nombre_fichero_imagen>”
2.- En todos los casos, una vez arrancado el router, siempre copiaremos la imagen en la bootflash (si no
estuviera):
3.- Se debe comprobar que el valor de config-register es 0x2102 en la última línea de la salida del comando
“show version”. Si tuviera un valor diferente habría que configurarlo al valor normal 0x2102.
ASR1002#configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
ASR1002 (config)#config-register 0x2102
ASR1002 (config)#^Z
4.- Modificamos la variable boot añadiendo dicho path: y luego guardamos la configuración.
no boot system
boot system flash bootflash:<nombre_fichero_imagen>
wr mem
1.- Conectar un host (pc/portátil) con un servidor TFTP al puerto de gestión “GigabitEthernet0”.
2.- Configurar las variables apropiadas en modo rommon para tener conectividad con el servidor TFTP:
rommon1>IP_ADDRESS=<direccion_ip>
rommon2>IP_SUBNET_MASK=<mascara_red>
rommon3>DEFAULT_GATEWAY=<direccion_ip_puerta_de_enlace>
rommon4>TFTP_SERVER=<direccion_ip_servidor_TFTP>
rommon5>TFTP_FILE=<nombre_fichero_de_imagen>
rommon6> set
3.- Ejecutar el commando boot para indicarle al router que transfiera la imagen a la DRAM para su ejecución.
rommon7>boot tftp:
4.- Una vez arrancado el equipo, se puede seguir el procedimiento establecido en este anexo para guardar la
imagen en la bootflash.
Los ASR1K no soportan la funcionalidad de SPAN (Switched Port Analyzer) o RSPAN (Remote
Switched Port Analyzer), pero si la funcionalidad de ERSPAN (Encapsulated Remote Switched
Analyzer) con el cual se consiguen resultados similares.
Para poder monitorizar los paquetes a través de un interface usando ERSPAN, el usuario tiene
que crear una sesión ERSPAN-source y otra sesión ERSPAN-destination. Sin restricciones sobre
si estas dos sesiones se crean en un mismo ASR1000 o no.
Si las dos sesiones se crean en dos dispositivos diferentes, el tráfico a monitorizar será enviado
desde la fuente al destino mediante ERSPAN (tráfico encapsulado en GRE), si las dos sesiones
están creadas en el mismo ASR1000, el flujo de datos fluye en el interior del mismo router.
!
interface Gi1/1/<n>
description "Puerto de origen"
ip address <ip address_source_port>
inter loopback0
ip address <ip_address_origen> <mascara>
!
monitor session 1 type erspan-source
source interface Gi1/0/n
destination
erspan-id <id#>
ip address <ip_address_X>
origin ip address <ip_address_origen>
!
NOTA: Para versiones de IOS XE RLS5 y posteriores, añadir el CLI "plim ethernet vlan filter
disable" en el interface de destino
Si las dos sesiones están creadas en el mismo ASR1000, el flujo de datos fluye en el interior del
mismo router. En este caso donde se quiere configurar ERSPAN en el mismo ASR1000 de modo
que este funcione de forma similar al SPAN local, es decir que el flujo de datos fluya en el
interior del mismo router, hay que asegurarse de que:
Tanto la sesión de origen como la sesión de destino tienen el mismo ERSPAN-id
Se utiliza una dirección IPv4 localmente configurada, usada como "ip address" / "orig ip address" en la
sesión … source y la "ip address" en la sesión … destination
!
int loopback0
ip address <ip_address_X> <mascara>
!
monitor session 1 type erspan-source
source interface GigabitEthernet0/0/n
destination
erspan-id <id#>
ip address <ip_address_X>
origin ip address <ip_address_X>
!
monitor session 2 type erspan-destination
destination interface GigabitEthernet0/0/m
source
erspan-id <id#>
ip address <ip_address_X>
!
Cisco internal engineering documents, web pages, search tools and forums
Field notices -
(external) http://www.cisco.com/warp/public/tech_tips/index/fn.html
(internal) http://wwwin.cisco.com/cgi-bin/it/tsit/FieldNotice/sp_menu.cgi
Historia
Version No. Fecha Estado Razón del cambio
1 20-Oct-2011 Released Primera version del documento
Revisiones
Reviewer’s Details Version No. Fecha
Juan Ortega