Este documento explica las diversas opciones que puede utilizar para habilitar vaciados de memoria en el software Cisco IOS®.
Nota: Los vaciados de memoria pueden ser difíciles de obtener. Sólo el personal de soporte técnico de Cisco que tiene acceso al código fuente y a mapas detallados de memoria debe intentar interpretar los vaciados de memoria. En varias plataformas, el uso de la función crashinfo puede hacer que los vaciados de memoria no sean necesarios. Refiérase a Recuperación de Información del Archivo Crashinfo para obtener más información.
Cisco recomienda que tenga conocimiento sobre estos temas:
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
Cisco IOS Software Versión 12.0 y posteriores
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, make sure that you understand the potential impact of any command.
Cuando el router tiene un desperfecto, recuerde obtener una copia de todos los contenidos de la memoria del router; este procedimiento se conoce como vaciado de memoria. Su representante de soporte técnico usa el vaciado de memoria para identificar la causa del desperfecto del router. El router escribe los contenidos de la memoria en el servidor antes de la recarga. No todos los desperfectos producen un vaciado de la memoria. Para obtener más detalles, consulte Tipos de Desperfectos.
Siempre debe capturar los registros de consola cuando el router intenta vaciar una memoria. Los registros de consola suministran información acerca del desperfecto. Además, el Monitor ROM (ROMMON) normalmente imprime información y la envía a la consola (y sólo a la consola) en el momento en que se produce el desperfecto.
Precaución: Los vaciados de memoria no son necesarios para resolver la mayoría de los casos de desperfectos. La creación de un vaciado de memoria mientras el router funciona en una red puede afectar el funcionamiento de ésta. Use los comandos descritos en este documento sólo con las instrucciones de un representante de soporte técnico.
Existen cuatro maneras básicas de configurar el router para generar un volcado de núcleo.
A través del Protocolo de Transferencia de Archivos (FTP)
A través del Protocolo de Copia Remota (RCP)
A través de un Disco Flash
A través del Protocolo Trivial de Transferencia de Archivos (TFTP)
Cada uno de estos métodos usa los siguientes comandos de configuración:
exception region-size size
Este comando especifica el tamaño de la región del pool de memoria en tiempo de excepción. El pool de memoria en tiempo de excepción se usa cuando se daña la memoria de proceso. El parámetro de tamaño se expresa en bytes y puede configurarse desde 1024 a 65536 bytes.
exception core-file filename [compress]
Este comando especifica un nombre para el archivo de vaciado de memoria diferente al nombre predeterminado. Para restaurar el nombre predeterminado, utilice la forma de este comando con no.
Para obtener más información sobre los comandos descritos en este documento, consulte la herramienta de referencia de Comandos (sólo clientes registrados).
Use el comando exception region-size para definir una pequeña cantidad de memoria que le servirá como pool alternativo cuando el pool de memoria del procesador esté dañado. Esto ayuda a prevenir fallas de memoria durante el proceso de vaciado de memoria. El parámetro de tamaño se expresa en bytes y puede configurarse desde 1024 a 65536 bytes, con un valor predeterminado de 16384 bytes. Configure el comando exception region-size en 65536 bytes para aumentar las posibilidades de un vaciado de memoria exitoso.
De forma predeterminada, el vaciado de memoria del procesador se escribe en un archivo llamado "hostname-core", donde hostname es el nombre del router, definido por el comando de configuración hostname. Si el router tiene memoria de Entrada/Salida (I/O) (por ejemplo, el Cisco 7200), también puede crearse un vaciado de memoria I/O, que se escribe en el archivo "hostname-coreiomem".
Utilice el comando exception core-file para anular el nombre del archivo de vaciado de memoria predeterminado. Si el servidor de archivos tiene un sistema de archivos DOS FAT, no especifique un nombre de archivo de más de seis caracteres. Por ejemplo, si configura un router con "exception core-file foobar", el nombre de vaciado de memoria del procesador es "foobar" y el nombre del vaciado de memoria I/O es "foobario" (información suficiente que le indica que tiene un vaciado de memoria I/O).
Asegúrese de que haya suficiente espacio en disco en el servidor de archivos para completar varios vaciados de memoria. Puede comprimir los archivos de vaciado de memoria con la opción compress.
Nota: Compress se aplica automáticamente cuando escribe archivos de vaciado de memoria en el disco Flash. Si usa el RCP, la opción compress no es compatible.
Note: El protocolo de Transferencia de Archivos (FTP) es el método recomendado para configurar un vaciado de memoria.
Con el fin de utilizar el FTP para configurar el router para un vaciado de memoria, use estos comandos:
ip ftp username username: Este comando configura el nombre de usuario para las conexiones del Protocolo de Transferencia de Archivos (FTP). Para configurar el router para que intente usar un FTP anónimo, utilice la forma de este comando con no.
ip ftp password password: Este comando configura la contraseña para la conexión del FTP.
exception protocol ftp: Este comando configura el protocolo usado para el vaciado de memoria con FTP.
exception region-size 65536: Este comando configura el tamaño de la región.
exception dump ip-address: Este comando configura la dirección ip del servidor al que el router envía el vaciado de memoria en caso de un desperfecto.
Nota: Para evitar la congestión de la red, Cisco recomienda encarecidamente que conecte el router directamente al servidor FTP, sin saltos intermedios. Si debe atravesar uno o más saltos intermedios, posiblemente necesite el comando ip ftp source-interface para especificar qué interfaz debe usar para acceder al servidor FTP. Si desea más información, consulte Configuración del Router para Utilizar Conexiones FTP.
Si no ha configurado el nombre de usuario y la contraseña, el router intenta usar un FTP anónimo.
Cuando el representante de soporte técnico de Cisco le solicite los archivos de vaciado de memoria, puede enviarlos a Cisco a través del FTP anónimo. El servidor FTP es ftp-sj.cisco.com y el directorio es /incoming.
Nota: El directorio /incoming es invisible.
Asegúrese de configurar el modo de transferencia en binario. Si los archivos aún no están comprimidos, comprímalos con una utilidad de compresión común como gzip o zip.
También asegúrese de incluir el archivo crashinfo, si está disponible, junto con el vaciado de memoria. El archivo crashinfo está disponible si el hardware o el software admiten esta función. Consulte Recuperación de Información del Archivo Crashinfo para obtener instrucciones sobre cómo hacer esto.
Asegúrese de que el FTP funcione en primer lugar. Use este ejemplo:
c7500#copy running-config ftp: Address or name of remote host []? 172.18.125.3 Destination filename [c7500-confg]? Writing c7500-confg ! 2781 bytes copied in 0.944 secs
Para configurar el router para un vaciado de memoria con el RCP, use estos comandos:
ip rcmd remote-username username -Este comando configura el nombre de usuario remoto para su uso cuando solicita una copia remota a través del protocolo de copia remota (RCP).
exception protocol rcp: Este comando configura el protocolo usado para el vaciado de memoria como RCP.
exception region-size 65536: Este comando configura el tamaño de la región.
exception dump dirección de ip
Si no ha configurado el nombre de usuario, el router usa su nombre de host como nombre de usuario para RCP.
Nota: Para evitar la congestión de la red, Cisco recomienda encarecidamente que conecte el router directamente al servidor RCP, sin saltos intermedios. Si debe atravesar uno o más saltos intermedios, use el comando ip rcmd source-interface para especificar qué interfaz debe usar para acceder al servidor RCP. Si desea más información, consulte Configuración del Router para Utilizar rsh y rcp.
Asegúrese de que el RCP funcione en primer lugar. Use este ejemplo:
c7500#copy running-config rcp: Address or name of remote host []? 172.18.125.3 Destination username [c7500]? Destination filename [c7500-confg]? Writing c7500-confg ! 2781 bytes copied in 0.944 secs
Algunas plataformas del router admiten el disco Flash como alternativa a la memoria Flash lineal o a la tarjeta PCMCIA Flash. La gran capacidad de almacenamiento de estos discos Flash los convierte en un buen medio para la captura de un vaciado de memoria. Para obtener más información sobre las plataformas del router y las versiones de software Cisco IOS que admiten el disco Flash, consulte Notas de la Versión de Cisco IOS.
Nota: Cuando captura un vaciado de memoria en un disco Flash, debe asegurarse de que este disco tenga un tamaño de almacenamiento mayor que la memoria DRAM que provoca el vaciado de memoria. Por ejemplo, si tiene una memoria DRAM de 128 MB, el disco Flash debe tener una capacidad de almacenamiento mayor que 128 MB. Se necesita una memoria de disco flash para vaciar la memoria correctamente. Si hay una insuficiencia de memoria en el disco Flash, no se crea el vaciado de memoria.
Con el fin de utilizar un disco Flash para configurar el router para un vaciado de memoria, use este comando:
exception flash procmem|iomem|all device_name [:partition_number] !--- This command uses a Flash disk to configure the router for a core dump.
El comando show flash all EXEC describe los dispositivos que puede usar para el comando exception flash.
Debido a una limitación de la mayoría de las aplicaciones del TFTP, el router sólo vacía los primeros 16 MB del archivo principal. En consecuencia, si la memoria principal del router es mayor que 16 MB, no use TFTP. Para obtener más información, consulte El Cliente del TFTP de Cisco IOS No Puede Transferir Archivos de Más de 16 MB.
Con el fin de utilizar el TFTP para configurar el router para un vaciado de memoria, use estos comandos:
exception protocol tftp: Este comando configura el TFTP como el protocolo para vaciados de memoria.
exception region-size 65536
exception dump dirección de ip
TFTP es el protocolo predeterminado para protocolo de excepción.
Nota: Para evitar la congestión de la red, Cisco recomienda encarecidamente que conecte el router directamente al servidor TFTP, sin saltos intermedios. Si debe atravesar uno o más saltos intermedios, use el comando ip tftp source-interface para especificar qué interfaz debe usar para acceder al servidor TFTP.
Según el servidor TFTP que se utilice, posiblemente necesite crear uno o varios archivos vacíos de destino con los permisos adecuados antes de que el router escriba en ellos.
Asegúrese de que el TFTP funcione en primer lugar. Use este ejemplo:
c7500#copy running-config tftp: Address or name of remote host []? 172.18.125.3 Destination filename [c7500-confg]? ! 2781 bytes copied in 0.944 secs
Utilice los comandos de configuración de esta sección además de los comandos de la sección Configuración básica.
Para depurar algunos problemas de memoria, puede hacer que el router cree un vaciado de memoria y que se reinicie cuando se violan ciertos parámetros de tamaño de memoria. Use estos comandos exception memory para accionar un vaciado de memoria:
exception memory minimum size: Este comando fuerza un desperfecto si la cantidad de memoria libre del procesador cae por debajo del umbral configurado.
exception memory fragment size: Este comando fuerza un desperfecto si el software Cisco IOS no puede asignar un bloque contiguo de memoria del procesador mayor que el umbral configurado.
El parámetro tamaño está expresado en bytes y se verifica por defecto cada 60 segundos.
Estos comandos sólo provocan que el router se reinicie cuando se cumplen las condiciones configuradas. Si además configura exception dump o exception flash, el router primero crea un vaciado de memoria. Estos comandos ayudan a detectar fugas de memoria.
En algunos casos, el representante de soporte técnico le solicita que active debug sanity cuando configura el vaciado de memoria. El comando debug sanity es un comando oculto en la mayoría de las versiones de software Cisco IOS y a veces es necesario para depurar problemas de corrupción de memoria, especialmente corrupción de memoria I/O. Cuando activa debug sanity, el sistema ejecuta una verificación de integridad en cada buffer que se asigna, y realiza una nueva verificación de integridad cuando el buffer queda liberado.
Debe ejecutar el comando debug sanity en el modo privilegiado EXEC (o el modo enable). Aunque este comando usa parte de la capacidad de la CPU, debug sanity no afecta de forma significativa la funcionalidad del router. Como otros comandos debug, debug sanity no se guarda en la configuración y, por lo tanto, no supera un reinicio del sistema.
No es necesario que active debug sanity con todos los tipos de desperfectos. Use debug sanity sólo cuando su representante de soporte técnico le solicite activar este comando.
Para desactivar la verificación de integridad, use el comando undebug sanity EXEC privilegiado.
Una vez que haya configurado el router para el vaciado de memoria, pruebe la configuración.
El software Cisco IOS ofrece el comando especial write core en el modo EXEC privilegiado (o el modo enable) para que el router genere un vaciado de memoria sin recarga.
Si la acción es exitosa, los archivos de vaciado de memoria tienen el tamaño de las regiones de memoria respectivas. Recuerde que toda la región de memoria se vacía, no sólo la memoria que se está utilizando.
El comando write core también se usa en caso de que el router tenga problemas, pero no desperfectos.
Revisión | Fecha de publicación | Comentarios |
---|---|---|
1.0 |
24-Jun-2008 |
Versión inicial |