Contenido

Introducción

Prerequisites

Requirements

Componentes Utilizados

Antecedentes

Supervisión del uso de CPU

Supervisión del uso de memoria

Supervisión del uso de archivos

Estado en mostrar recurso de tarea

Resolución de problemas

Para uso de CPU

Para uso de memoria

Para uso de archivos

Introducción

Este documento describe los fundamentos del uso de CPU/Memoria/Archivos en sistemas StarOS y cómo resolver problemas cuando se produce un problema.

Prerequisites

Requirements

Cisco recomienda que tenga conocimiento sobre estos temas:

- StarOs

Componentes Utilizados

Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.

La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.

Antecedentes

El subsistema de administración de recursos asigna un conjunto de límites de recursos para cada tarea del sistema. Supervisa el uso de recursos de cada tarea para asegurarse de que se mantiene dentro del límite. Si una tarea ha excedido sus límites, se lo notifica a los operadores a través de las trampas de Syslog o del Protocolo simple de administración de red (SNMP). Este documento explica cómo funciona y qué registros debe recopilar para solucionar problemas adicionales.

Puede comprobar la información básica en el resultado de la interfaz de línea de comandos (CLI) de show task resources.

El usuario no puede cambiar los límites de recursos asignados.

Los límites de recursos asignados son diferentes según la versión de StarOS.

Este es un ejemplo de SNMP que ocurre cuando el problema está presente en el sistema:

Mon Aug 26 11:32:19 2013 Internal trap notification 1221 (MemoryOver) facility sessmgr instance 16 card 1 cpu 0 allocated 204800 used 220392

Mon Aug 26 11:32:29 2013 Internal trap notification 1222 (MemoryOverClear) facility sessmgr instance 16 card 1 cpu 0 allocated 1249280 used 219608

Fri Dec 20 13:52:20 2013 Internal trap notification 1217 (MemoryWarn) facility npudrv instance 401 card 5 cpu 0 allocated 112640 used 119588

Fri Dec 20 14:07:26 2013 Internal trap notification 1218 (MemoryWarnClear) facility cli instance 5011763 card 5 cpu 0 allocated 56320 used 46856

Wed Dec 25 12:24:16 2013 Internal trap notification 1220 (CPUOverClear) facility cli instance 5010294 card 5 cpu 0 allocated 600 used 272

Wed Dec 25 12:24:16 2013 Internal trap notification 1216 (CPUWarnClear) facility cli instance 5010294 card 5 cpu 0 allocated 600 used 272

Wed Dec 25 17:04:56 2013 Internal trap notification 1215 (CPUWarn) facility cli instance 5010317 card 5 cpu 0 allocated 600 used 595

Wed Dec 25 17:05:36 2013 Internal trap notification 1216 (CPUWarnClear) facility cli instance 5010317 card 5 cpu 0 allocated 600 used 220

Supervisión del uso de CPU

La trampa SNMP CPUWarn se genera cuando el uso de la CPU de proclet alcanza el 90% de su valor asignado.

Una vez que se genera CPUWarn, CPUOver se genera cuando el uso de la CPU del destinatario alcanza más del 50% de su valor asignado a partir del valor advertido.

Si el uso de la CPU de proclet alcanza su uso asignado antes de que se genere CPUWarn, se genera CPUOver.

CPUWarn/Over se borra cuando el uso se remonta al 50% de los recursos asignados.

Ejemplo:

Si la asignación del sistema para la instalación es 60, cuando el valor alcance 54, el sistema genera una trampa SNMP (CPUWarn).

Dado que la asignación del sistema para la facilidad es 60, cuando el uso de la CPU de proclet alcanza más del 50% de su valor asignado del valor advertido, en este escenario cuando el sistema alcanza el valor 84 (54+30) el sistema genera una trampa SNMP (CPUOver).

Supervisión del uso de memoria

MemoryWarn se genera cuando el uso de memoria de proclet alcanza su asignación.

MemoryOver se genera cuando el uso de memoria de proclet alcanza más de los + 15 MB asignados, o el doble de su asignación.

MemoryWarn/MemoryOver se borran cuando el uso se remonta al 95% de su asignación.

Ejemplo:

Si la asignación del sistema para la instalación es de 60 MB, para cualquier valor superior a 60 MB, el sistema genera una MemoryWarn de trampa SNMP.

Dado que la asignación del sistema para la instalación es de 60 MB, cuando la utilización de la memoria de tareas alcanza los 75 MB, el sistema genera una trampa SNMP MemoryOver.

Supervisión del uso de archivos

Files indica el número de archivos abiertos o el descriptor de archivo que está utilizando el proceso.

No se ha implementado ninguna captura SNMP para el uso de archivos, pero se genera un mensaje de registro para el estado de exceso/borrado.

El registro de exceso se genera cuando el uso del archivo de proclet alcanza más de su asignado + 10% de su asignado.

El registro de borrado se genera cuando el uso del archivo de proclet se remonta al 90% de su asignado.

2013-May-28+14:16:18.746 [resmgr 14517 warning] [8/0/4440 <rmmgr:80>

_resource_cpu.c:3558] [software internal system syslog] The task cli-8031369 is over its

open files limit. Allocated 2000, Using 2499

Estado en mostrar recurso de tarea

El campo Estado en el resultado de show task resources CLI tiene criterios diferentes.

En la imagen siguiente, WARN es warn y ALARM es over status (ALARMA superada).

Resolución de problemas

Para uso de CPU

Cuando el sistema comience a generar trampas SNMP relacionadas con la CPU, recopile la siguiente información durante el problema activo:

show task resources

Compruebe si algún proyector pasa al estado de aviso/sobre

show task resource max

Comprobar el uso máximo en lugar del uso actual

show snmp trap history

Compruebe si hay algún evento CPUWarn/Over

Nota: Este es un comando hidden/test. Consulte la Documentación sobre cómo activar y entrar en el modo Test en StarOs.

Este comando no afecta al servicio y se puede ejecutar en producción.

show profile card <card number> cpu <cpu number> depth <value>

Se trata del denominado generador de perfiles de fondo.

El analizador en segundo plano siempre funcionamiento, incluso en producción, con un período de muestreo fijo de 1 s.

Podemos saber qué PC consume recursos de CPU, por tarjeta/cpu/instalación/instancia, etc.

Se recomienda especificar la profundidad en lugar de utilizar el valor predeterminado 1.(p. ej., 4)

Para uso de memoria

Cuando el sistema comience a generar trampas SNMP relacionadas con la memoria, recopile la siguiente información durante el problema activo:

show task resources

Compruebe si algún proyector pasa al estado de aviso/sobre

show task resource max

Comprobar el uso máximo en lugar del uso actual

show snmp trap history

Compruebe si hay algún evento MemoryWarn/Over

show logs

Compruebe si resmgr ha notificado algún error o advertencia.

Nota: Este es un comando hidden/test. Consulte la Documentación sobre cómo activar y entrar en el modo Test en StarOs.

Este comando no afecta al servicio y se puede ejecutar en producción.

show messenger proclet facility <name> instance <x> heap

Comprobar el uso del montón del proyector

Nota: Este es un comando hidden/test. Consulte la Documentación sobre cómo activar y entrar en el modo Test en StarOs.

Este comando no afecta al servicio y se puede ejecutar en producción.

show messenger proclet facility <name> instance <x> system heap

Comprobar la información de montón del sistema para contener el proceso

Sugerencia: Tome varias salidas de comandos relacionados con la CPU cada 10 minutos y 4 salidas antes de elevar la solicitud de servicio hacia el TAC.

Para uso de archivos

El límite real de archivos en el nivel del sistema operativo es más alto que el límite de uso de archivos en StarOs.

Ejemplo para la tarea Diameter Proxy (diaproxy), el límite de nivel de SO es 8192; el proceso puede consumir hasta 8192, mientras que el límite de archivos se establece como 1000 en StarOS.

asr5500:card3-cpu0# ps -ef | grep diam

root 5934 4555 0 Jul02 ? 00:07:52 diamproxy --readypipe 8 --limit_mode 8 --card_number 3 --cpu_number 0 --master_spc 3

asr5500:card3-cpu0# cat /proc/5934/limits | grep open

Max open files     8192      8192     files

[local]asr5500-2# show task resources facility diamproxy all

Friday July 11 10:05:54 JST 2014

task cputime memory files sessions

cpu facility inst used allc used alloc used allc used allc S status

----------------------- --------- ------------- --------- ------------- ------

3/0 diamproxy 2 0.3% 90% 22.83M 250.0M 216 1000 -- -- - good

8/0 diamproxy 1 0.4% 90% 22.71M 250.0M 69 1000 -- -- - good

También hay un límite de nivel de CPU, por favor, compruébelo también y estará bien siempre que tenga suficiente disponible.

[local]ASR5500# show cpu info card 1 cpu 0

Card 1, CPU 0:

Status                : Active, Kernel Running, Tasks Running

Load Average          : 0.26, 0.39, 0.44 (1.78 max)

Total Memory          : 32768M (16384M node-0, 16384M node-1)

Kernel Uptime         : 3D 22H 11M

Last Reading:

CPU Usage All       : 0.1% user, 0.3% sys, 0.0% io, 0.0% irq, 99.6% idle

Node 0            : 0.1% user, 0.3% sys, 0.0% io, 0.0% irq, 99.5% idle

Node 1            : 0.1% user, 0.2% sys, 0.0% io, 0.0% irq, 99.7% idle

Processes / Tasks   : 185 processes / 29 tasks

Network             : 0.326 kpps rx, 0.912 mbps rx, 0.208 kpps tx, 3.485 mbps tx

File Usage          : 1792 open files, 3279141 available

Memory Usage        : 1619M 4.9% used (1209M 7.4% node-0, 409M 2.5% node-1)

Cuando el valor disponible es inferior a 256, se genera este mensaje de advertencia:

event 14516

user_resource_cpu_cpu_low_files(uint32 card, uint32 cpu, uint32 used, uint32 remain)

"The CPU %d/%d is running low on available open files. (%u used, %u remain)"

warning

software internal system critical-info