Inleiding
Dit document beschrijft de basisprincipes van het gebruik van CPU/Memory/Files op StarOS-systemen en hoe problemen kunnen worden opgelost wanneer zich een probleem voordoet.
Voorwaarden
Vereisten
Cisco raadt kennis van de volgende onderwerpen aan:
Gebruikte componenten
Dit document is niet beperkt tot specifieke software- en hardware-versies.
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u zorgen dat u de potentiële impact van elke opdracht begrijpt.
Achtergrondinformatie
Het subsysteem Resourcebeheer kent een reeks resourcegrenzen toe aan elke taak in het systeem. Het controleert het bronnengebruik van elke taak om ervoor te zorgen dat deze binnen de limiet blijft. Als een taak zijn limieten heeft overschreden, meldt het aan operators via Syslog of Simple Network Management Protocol (SNMP) traps. In dit document wordt uitgelegd hoe het werkt en welke logs u moet verzamelen voor verdere probleemoplossing.
U kunt de basisinformatie controleren in de uitvoer van show task resources command line interface (CLI).
De toegewezen resourcegrenzen kunnen niet door de gebruiker worden gewijzigd.
De toegewezen bronlimieten zijn verschillend op basis van de StarOS-versie.

Dit is een voorbeeld van SNMP dat optreedt wanneer er een probleem op het systeem aanwezig is:
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
Bewaking van CPU-gebruik
CPUWarn SNMP trap wordt gegenereerd wanneer proclet's cpu gebruik 90% van de toegewezen bereikt.
Zodra CPUWarn is gegenereerd, wordt CPUOver gegenereerd wanneer het CPU-gebruik van proclet meer dan 50% van de toegewezen waarde van de gewaarschuwde waarde bereikt.
Als het CPU-gebruik van proclet het toegewezen gebruik bereikt voordat CPUWarn wordt gegenereerd, wordt CPUOver gegenereerd.
CPUWarn/Over wordt gewist wanneer het gebruik teruggaat tot 50% van het toegewezen bedrag.
Voorbeeld:
Als de systeemtoewijzing voor de installatie 60 is en de waarde 54 is, genereert het systeem SNMP-val (CPUWarn).
Aangezien de systeemtoewijzing voor de faciliteit 60 is, wanneer het CPU-gebruik van proclet meer dan 50% van de toegewezen waarde van de gewaarschuwde waarde bereikt, genereert het systeem in dit scenario SNMP-trap (CPUOver) wanneer het systeem waarde 84 (54+30) bereikt.
Monitoring van geheugengebruik
MemoryWarn wordt gegenereerd wanneer het geheugengebruik van proclet de toewijzing bereikt.
MemoryOver wordt gegenereerd wanneer het geheugengebruik van proclet meer dan de toegewezen + 15MB bereikt, of het dubbele van de toewijzing.
MemoryWarn/MemoryOver worden gewist wanneer het gebruik teruggaat tot 95% van de toewijzing.
Voorbeeld:
Als de systeemtoewijzing voor de faciliteit 60 MB is, genereert het systeem voor elke waarde groter dan 60 MB SNMP trap MemoryWarn.
Aangezien de systeemtoewijzing voor de faciliteit 60 MB is, genereert het systeem SNMP trap MemoryOver wanneer het taakgeheugengebruik 75 MB bereikt.
Bewaking van bestandsgebruik
Bestanden geeft het aantal geopende bestanden aan, of de bestandsdescriptor die het proces gebruikt.
Er is geen SNMP-trap geïmplementeerd voor het bestandsgebruik, maar het logboekbericht wordt gegenereerd voor de status over/clear.
Het overlog wordt gegenereerd wanneer het bestandsgebruik van proclet meer bereikt dan het toegewezen + 10% van het toegewezen bestand.
Het clear log wordt gegenereerd wanneer het bestandsgebruik van proclet teruggaat naar 90% van het toegewezen aantal.
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
Status in taakbron weergeven
Het statusveld in de output van show task resources CLI heeft verschillende criteria.
In de onderstaande afbeelding is WAARSCHUWING en ALARM is over status.

Probleemoplossing
Voor CPU-gebruik
Wanneer het systeem SNMP-traps met betrekking tot de CPU begint te genereren, verzamelt u de volgende informatie tijdens het actieve probleem:
Taakbronnen weergeven
Controleer of een proclet de status Warn/Over gaat
Taakresource max weergeven
Controleer het maximale gebruik in plaats van het huidige gebruik
SNMP-trapgeschiedenis weergeven
Controleer of er een CPUWarn/Over-gebeurtenis is
Opmerking: Dit is de opdracht hidden/test. Raadpleeg de documentatie over het inschakelen en invoeren van de testmodus in StarOS.
Deze opdracht heeft geen invloed op de service en kan in productie worden uitgevoerd.
Profielkaart <kaartnummer> CPU <CPU-nummer> diepte <waarde> weergeven
Dit is de zogenaamde achtergrond profiler.
Background Profiler draait altijd, zelfs in productie, met een vaste steekproefperiode van 1s.
We kunnen weten welke pc CPU-bron verbruikt, per kaart/cpu/faciliteit/instantie, enz.
Aanbevolen wordt diepte op te geven in plaats van standaardwaarde 1 te gebruiken (bijv. 4)
Voor geheugengebruik
Wanneer het systeem SNMP-traps met betrekking tot het geheugen begint te genereren, verzamelt u de volgende informatie tijdens het actieve probleem:
Taakbronnen weergeven
Controleer of een proclet de status Warn/Over gaat
Taakresource max weergeven
Controleer het maximale gebruik in plaats van het huidige gebruik
SNMP-trapgeschiedenis weergeven
Controleer of er een MemoryWarn/Over-gebeurtenis is
Logboeken weergeven
Controleer of er een waarschuwing/fout is gemeld door resmgr.
Opmerking: Dit is de opdracht hidden/test. Raadpleeg de documentatie over het inschakelen en invoeren van de testmodus in StarOS.
Deze opdracht heeft geen invloed op de service en kan in productie worden uitgevoerd.
Messenger Proclet Facility <naam> instantie <x> heap weergeven
Controleer het heap-gebruik van het proclet
Opmerking: Dit is de opdracht hidden/test. Raadpleeg de documentatie over het inschakelen en invoeren van de testmodus in StarOS.
Deze opdracht heeft geen invloed op de service en kan in productie worden uitgevoerd.
Messenger Proclet Facility <name> instance <x> System Heap weergeven
Controleer de heap-informatie van het systeem voor het bevatten van het proces
Tip: neem elke 10 minuten meerdere uitgangen van CPU-gerelateerde opdrachten en 4 uitgangen voordat u Serviceverzoek naar TAC verhoogt.
Bestanden voor gebruik
De werkelijke bestandslimiet op OS-niveau is hoger ingesteld dan de bestandslimiet in StarOs.
Voorbeeld voor taakdiameter proxy (diaproxy), OS-niveau limiet is 8192 het proces kan verbruiken tot 8192, terwijl de bestanden limiet is ingesteld als 1000 bij 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
Er is ook een limiet voor het CPU-niveau, controleer het ook en je zou prima zijn zolang je genoeg beschikbaar hebt.
[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)
Wanneer de beschikbare hoeveelheid kleiner is dan 256, wordt dit waarschuwingsbericht gegenereerd:
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