Introducción
Este documento describe cómo funciona el uso de recursos de una tarea en StarOS y proporciona una lista de registros que deben ser recolectados para resolver problemas de eventos de uso alto de CPU/Memoria/Archivo. En StarOS, el subsistema de administración de recursos (resctrl / resmgr) 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 mantenga dentro del límite. Cuando una tarea ha superado sus límites, se generan capturas de Syslog o del protocolo simple de administración de red (SNMP) para notificar las operaciones de red.
Mecanismo de supervisión de recursos
Hay un montón de tareas ejecutadas en StarOS, por ejemplo sessmgr/aamgr/vpnmgr, etc. Cada tarea tiene establecido un límite para el uso de CPU/Memoria/Archivo y los límites son supervisados por la administración de recursos. Los límites pueden ser diferentes por tipo de tarea (sessmgr y aamgr tienen diferentes límites), versión de StarOS y tipo de hardware. Además, los límites los define el sistema y los usuarios no los pueden configurar.
La descripción de cada tarea de StarOS se puede encontrar en el capítulo Tareas de StarOS de la Guía de administración del sistema.
La información básica sobre el uso de los recursos se puede encontrar en la salida delshow task resources
comando CLI.

Campo |
Descripción |
cputime utilizado |
Uso de tareas de la CPU |
cputime allc |
Límite de uso de CPU asignado para la tarea |
memoria utilizada |
Uso de memoria de la tarea |
asignación de memoria |
Límite de uso de memoria asignado para la tarea |
archivos utilizados |
Archivos uso de tarea |
files allc |
Uso de tarea de archivos asignados |
estado |
Estado de la tarea: bueno/advertido/por |
Es importante comprender que el objetivo es vigilar los recursos y no limitar la funcionalidad de las tareas. La tarea debe poder funcionar incluso después de consumir más CPU/Memoria/Archivos que el límite. Las trampas de Syslog y SNMP se generan cuando se cruza el límite, pero no siempre indican un problema.
Causa sospechosa
En muchos casos, un pico de uso temporal no es un problema. Pero si es persistente, por ejemplo, el uso de la CPU de una tarea se mantiene en el 100% o el uso de la memoria sigue creciendo y nunca se reduce, estos casos deben investigarse.
Las causas típicas de un pico temporal son:
- Comando CLI que genera una gran salida (tarea CLI)
- Cantidad de información de registro almacenada en el sistema (tarea evlogd)
Los casos que deben investigarse son los siguientes:
- Uso elevado de la CPU debido al bucle infinito interno (el uso de la CPU permanece en el 100%)
- El aumento constante del uso de memoria por una pérdida o fragmentación de memoria
Aquí se muestran los ejemplos de las trampas SNMP en las utilidades sessmgr, npudrv y CLI:
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
Uso de CPU
Cuando el uso de la tarea CPU está cerca o por encima del límite, las trampas CPUWarn y CPUOver SNMP se generan junto con la advertencia Syslog.
Trampas del protocolo SNMP
Internal trap notification 1215 (CPUWarn) facility sct instance 0 card 8 cpu 0 allocated 500 used 451
Internal trap notification 1219 (CPUOver) facility cli instance 5010046 card 5 cpu 0 allocated 600 used 609
En el ejemplo de CPUOver, el número de instancia 5010046 consume un 60,9% de uso de CPU mientras que el límite es del 60%.
Syslog
[resmgr 14502 warning] [2/0/2352 _resource_cpu.c:2876] [software internal system] The task ipsecmgr-202 is over it's cputime limit. Allocated 50.0%, Using 51.8%
Nota: Este registro del sistema es un nivel de advertencia y no se genera con la configuración de registro predeterminada. Si es necesario generar esto, la configuración de registro para resmgr debe configurarse como una advertencia.
Uso de memoria
Cuando el uso de la tarea de memoria está cerca o por encima del límite, se generan las trampas MemoryWarn y MemoryOver SNMP junto con la advertencia Syslog.
Trampas del protocolo SNMP
Internal trap notification 1217 (MemoryWarn) facility cli instance 5005588 card 5 cpu 0 allocated 66560 used 70212
Internal trap notification 1221 (MemoryOver) facility cli instance 5010046 card 5 cpu 0 allocated 66560 used 89940
En el ejemplo MemoryOver, el número de instancia 5010046 consume 89940 de memoria mientras que el límite es 66560.
Syslog
[resmgr 14500 warning] [8/0/4054 _resource_cpu.c:3622] [software internal system syslog] The task bulkstat-0 is over its memory limit. Allocated 46080K, Using 48120K
Nota: Este registro del sistema es un nivel de advertencia y no se genera con la configuración de registro predeterminada. Si es necesario generar esto, la configuración de registro para resmgr debe configurarse como una advertencia.
Uso de archivos
El files
indica el número de archivos abiertos o el descriptor de archivo que utiliza la tarea. No existe una trampa SNMP para el uso del archivo, pero se genera un registro del sistema cuando se cruza el límite.
2013-May-28+14:16:18.746 [resmgr 14517 warning] [8/0/4440
_resource_cpu.c:3558] [software internal system syslog] The task cli-8031369 is over its open files limit. Allocated 2000, Using 2499
Información necesaria para solucionar problemas
En esta sección se describe la información que debe recopilarse antes de abrir una nueva solicitud de servicio del Technical Assistance Center (TAC) cuando sea necesario realizar más investigaciones. El registro que se debe recopilar es diferente en función del tipo de uso.
Nota: Además de la lista de comandos, la salida del comandoshow support detail
siempre es necesaria.
Uso de CPU
Ingrese estos comandos en la CLI de StarOS y capture el resultado:
show task resources
show task resource max
show snmp trap history
show logs
show profile facility instance depth 4
Nota: Elshow profile
comando es un comando CLI de modo oculto.
Uso de memoria
Ingrese estos comandos en la CLI de StarOS y capture el resultado:
show task resources
show task resource max
show snmp trap history
show logs
Recopile los comandos heap y system heap varias veces a intervalos regulares, por ejemplo, cada 15 minutos y cuatro salidas.
show messenger proclet facility instance heap
show messenger proclet facility instance system heap
Nota: Elshow messenger proclet
comando es un comando CLI de modo oculto.
Uso de archivos
Ingrese estos comandos en la CLI de StarOS y capture el resultado:
show task resources
show task resource max
show snmp trap history
show logs