Introduzione
In questo documento viene descritto il funzionamento dell'utilizzo delle risorse di un'attività in StarOS e viene fornito un elenco di registri da raccogliere per risolvere i problemi relativi all'utilizzo intensivo di CPU/memoria/file. In StarOS, il sottosistema di gestione delle risorse (resctrl / resmgr) assegna un set di limiti di risorse per ogni attività del sistema. Controlla l'utilizzo delle risorse di ogni attività per garantire che non superi il limite. Quando un'operazione supera i limiti, vengono generate trap Syslog o SNMP (Simple Network Management Protocol) per notificare le operazioni di rete.
Meccanismo di monitoraggio delle risorse
Ci sono molte attività eseguite su StarOS, ad esempio sessmgr/aamgr/vpnmgr e così via. Per ogni attività viene impostato un limite per l'utilizzo di CPU/memoria/file e i limiti vengono monitorati dalla gestione delle risorse. I limiti possono variare in base al tipo di attività (sessmgr e aamgr hanno limiti diversi), alla versione StarOS e al tipo di hardware. Inoltre, i limiti sono definiti dal sistema e non possono essere configurati dagli utenti.
La descrizione di ciascuna operazione su StarOS è disponibile nel capitolo StarOS Tasks della System Administration Guide.
Le informazioni di base sull'utilizzo delle risorse sono disponibili nell'output del show task resources
CLI.
Campo |
Descrizione |
computer utilizzato |
Utilizzo CPU dell'attività |
cputime allc |
Limite di utilizzo CPU allocato per l'attività |
memoria utilizzata |
Utilizzo memoria dell'attività |
allocazione di memoria |
Limite di utilizzo della memoria allocata per l'attività |
file utilizzati |
Utilizzo dei file dell'operazione |
file |
File allocati utilizzo dell'operazione |
stato |
Stato del task: good / warn / over |
È importante comprendere che lo scopo è quello di tenere sotto controllo le risorse e non limita la funzionalità delle attività. L'operazione deve essere in grado di funzionare anche dopo che consuma più CPU/memoria/file del limite. Le trap Syslog e SNMP vengono generate quando il limite viene superato, ma non sempre indicano un problema.
Causa sospetta
In molti casi, un picco di utilizzo temporaneo non è un problema. Tuttavia, se si tratta di un'attività persistente, ad esempio, l'utilizzo della CPU di un'attività rimane al 100% o l'utilizzo della memoria continua a crescere e non viene mai ridotto, è necessario analizzare tali casi.
Le cause tipiche di un picco temporaneo sono:
- Comando CLI che genera un output enorme (attività CLI)
- Quantità di informazioni di registro presenti nel sistema (attività evlogd)
I casi da indagare sono:
- Utilizzo elevato della CPU causato dal loop infinito interno (utilizzo della CPU al 100%)
- Aumento costante dell'utilizzo della memoria a causa di una perdita o frammentazione della memoria
Di seguito sono riportati alcuni esempi di trap SNMP nelle strutture di sessmgr, npudrv e 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
Utilizzo CPU
Quando l'utilizzo delle attività della CPU è vicino o superiore al limite, vengono generate le trap CPUWarn e CPUOver SNMP insieme all'avviso Syslog.
Trap 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
Nell'esempio relativo alla CPU, il numero di istanza 5010046 utilizza il 60,9% di utilizzo della CPU, mentre il limite è il 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: Questo syslog è un livello di avviso e non viene generato con l'impostazione di registrazione predefinita. Se è necessario generare questo messaggio, l'impostazione di registrazione per resmgr deve essere configurata come avviso.
Utilizzo memoria
Quando l'utilizzo delle attività di memoria è prossimo o superiore al limite, le trap MemoryWarn e MemoryOver SNMP vengono generate insieme all'avviso Syslog.
Trap 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
Nell'esempio di MemoryOver, il numero di istanza 5010046 utilizza 89940 memoria, mentre il limite è 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: Questo syslog è un livello di avviso e non viene generato con l'impostazione di registrazione predefinita. Se è necessario generare questo messaggio, l'impostazione di registrazione per resmgr deve essere configurata come avviso.
Utilizzo file
OSPF (Open Shortest Path First) files
indica il numero di file aperti o utilizzati dall'attività descrittore file. Non esiste una trap SNMP per l'utilizzo del file, ma viene generato un syslog quando il limite viene superato.
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
Informazioni necessarie per la risoluzione dei problemi
In questa sezione vengono descritte le informazioni da raccogliere prima di aprire una nuova richiesta di assistenza TAC (Technical Assistance Center) quando è necessario eseguire ulteriori indagini. Il registro da raccogliere varia in base al tipo di utilizzo.
Nota: Oltre all'elenco dei comandi, l'output del comando show support detail
è sempre obbligatorio.
Utilizzo CPU
Immettere questi comandi nella CLI di StarOS e acquisire l'output:
show task resources
show task resource max
show snmp trap history
show logs
show profile facility
instance
depth 4
Nota: OSPF (Open Shortest Path First) show profile
è un comando CLI in modalità nascosta.
Utilizzo memoria
Immettere questi comandi nella CLI di StarOS e acquisire l'output:
show task resources
show task resource max
show snmp trap history
show logs
Raccogliere i comandi heap e heap di sistema più volte a intervalli regolari, ad esempio ogni 15 minuti e quattro output.
show messenger proclet facility
instance
heap
show messenger proclet facility
instance
system heap
Nota: OSPF (Open Shortest Path First) show messenger proclet
un comando CLI in modalità nascosta.
Utilizzo file
Immettere questi comandi nella CLI di StarOS e acquisire l'output:
show task resources
show task resource max
show snmp trap history
show logs