Introduction
Este documento descreve os fundamentos do uso da CPU/Memória/Arquivos em sistemas StarOS e como solucionar problemas quando ocorrem problemas.
Prerequisites
Requirements
A Cisco recomenda que você tenha conhecimento destes tópicos:
Componentes Utilizados
Este documento não se restringe a versões de software e hardware específicas.
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. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Informações de Apoio
O subsistema de gerenciamento de recursos atribui um conjunto de limites de recursos para cada tarefa no sistema. Ele monitora o uso de recursos de cada tarefa para garantir que ela esteja dentro do limite. Se uma tarefa excedeu seus limites, ela notifica aos operadores por meio de interceptações Syslog ou SNMP (Simple Network Management Protocol). Este documento explica como ele funciona e quais registros você deve coletar para Troubleshooting adicional.
Você pode verificar as informações básicas na saída de show task resources command line interface (CLI).
Os limites de recursos alocados não podem ser alterados pelo usuário.
Os limites de recursos alocados são diferentes com base na versão do StarOS.

Este é um exemplo de SNMP que ocorre quando há um problema no 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
Monitoramento de uso da CPU
CPUWarn interceptação SNMP é gerada quando o uso da cpu do proclet atinge 90% de sua alocação.
Quando CPUWarn é gerado, CPUOver é gerado quando o uso da cpu do proclet atinge mais de 50% de seu alocado a partir do valor avisado.
Se o uso da cpu do proclet atingir seu uso alocado antes da geração do CPUWarn, o CPUOver será gerado.
CPUWarn/Over é limpo quando o uso retorna a 50% do alocado.
Exemplo:
Se a alocação do sistema para a instalação for 60, quando o valor chegar a 54, o sistema gerará uma interceptação SNMP (CPUWarn).
Como a alocação do sistema para a instalação é 60, quando o uso da cpu do proclet atinge mais de 50% de sua alocação a partir do valor avisado, neste cenário quando o sistema atinge o valor 84 (54+30) e gera interceptação SNMP (CPUOver).
Monitoramento de uso de memória
MemoryWarn é gerado quando o uso de memória do proclet atinge sua alocação.
MemoryOver é gerado quando o uso de memória do proclet atinge mais do que o alocado + 15 MB ou o dobro de sua alocação.
MemoryWarn/MemoryOver são apagados quando o uso retorna a 95% de sua alocação.
Exemplo:
Se a alocação do sistema para a instalação for de 60 MB, então para qualquer valor maior que 60 MB, o sistema gera Aviso de Memória de interceptação SNMP.
Como a alocação do sistema para a instalação é de 60 MB, quando a utilização da memória da tarefa atinge 75 MB, o sistema gera SNMP trap MemoryOver.
Monitoramento de uso de arquivos
Os arquivos indicam o número de arquivos abertos ou o descritor de arquivos que o processo está usando.
Não há armadilha SNMP implementada para o uso de arquivos, mas a mensagem de registro é gerada para o estado over/clear.
O registro de sobrecarga é gerado quando o uso de arquivos do proclet atinge mais do que o alocado + 10% dele.
O log limpo é gerado quando o uso de arquivos do proclet retorna a 90% de seu alocado.
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 em show task resource
O campo de status na saída de show task resources CLI tem critérios diferentes.
Na figura abaixo, AVISO é avisado e ALARM está acima do status.

Troubleshooting
Para uso da CPU
Quando o sistema começar a gerar interceptações SNMP relacionadas à CPU, reúna as seguintes informações durante o problema ativo:
show task resources
Verificar se algum proclet entra no estado de aviso/sobrevoo
show task resource max
Verificar o uso máximo em vez do uso atual
Verifique se há algum evento CPUWarn/Over
Note: Este é um comando oculto/de teste. Consulte a Documentation como ativar e entrar no modo de teste em StarOs.
Esse comando não está afetando o serviço e pode ser executado em produção.
show profile card <card number> cpu <cpu number> deep <value>
Este é o chamado perfil de fundo.
O perfil de fundo é sempre em funcionamento, mesmo em produção, com um período de amostragem fixo de 1s.
Podemos saber qual PC consome recursos da CPU, por placa/cpu/instalação/instância, etc.
Recomendar especificar profundidade em vez de usar o valor padrão 1. (ex. 4)
Para uso de memória
Quando o sistema começar a gerar interceptações SNMP relacionadas à memória, reúna as seguintes informações durante o problema ativo:
show task resources
Verificar se algum proclet entra no estado de aviso/sobrevoo
show task resource max
Verificar o uso máximo em vez do uso atual
show snmp trap history
Verifique se há algum evento MemoryWarn/Over
show logs
Verifique se há algum aviso/erro relatado pelo remgr.
Note: Este é um comando oculto/de teste. Consulte a Documentation como ativar e entrar no modo de teste em StarOs.
Esse comando não está afetando o serviço e pode ser executado em produção.
show messenger proclet facility <name> instance <x> heap
Verificar o uso da pilha do proclet
Note: Este é um comando oculto/de teste. Consulte a Documentation como ativar e entrar no modo de teste em StarOs.
Esse comando não está afetando o serviço e pode ser executado em produção.
show messenger proclet facility <name> instance <x> system heap
Verificar as informações da pilha do sistema para conter o processo
Tip: Tome várias saídas de comandos relacionados à cpu a cada 10 minutos e 4 saídas antes de aumentar a solicitação de serviço para o TAC.
Para uso de arquivos
O limite real de arquivos no nível do SO é definido mais alto que o limite de uso de arquivos no StarOs.
Exemplo para a tarefa Diameter Proxy (diaproxy), o limite de nível de SO é 8192, o processo pode consumir até 8192, enquanto o limite de arquivos é definido como 1000 no 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
Há um limite de nível de CPU também. Verifique-o também e você ficará bem, contanto que tenha o suficiente disponível.
[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)
Quando disponível for menor que 256, esta mensagem de aviso será gerada:
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