소개
이 문서에서는 작업의 리소스 사용량이 StarOS에서 작동하는 방식을 설명하고 CPU/메모리/파일 사용량이 많은 이벤트를 트러블슈팅하기 위해 수집해야 하는 로그 목록을 제공합니다. StarOS에서 리소스 관리 하위 시스템(resctrl/remgr)은 시스템의 각 작업에 대해 리소스 제한 집합을 할당합니다. 각 작업의 리소스 사용량을 모니터링하여 제한 내에 유지되도록 합니다. 작업이 제한을 초과하면 네트워크 작업을 알리기 위해 Syslog 또는 SNMP(Simple Network Management Protocol) 트랩이 생성됩니다.
리소스 모니터링 메커니즘
StarOS에서 실행되는 작업이 많습니다(예: sessmgr/aaamgr/vpnmgr 등). 각 작업에는 CPU/메모리/파일 사용에 대한 제한이 설정되어 있으며 리소스 관리에 의해 제한이 모니터링됩니다. 제한은 작업 유형(sessmgr 및 aaamgr에 다른 제한 있음), StarOS 버전, 하드웨어 유형에 따라 다를 수 있습니다. 또한 제한은 시스템에 의해 정의되며 사용자가 구성할 수 없습니다.
StarOS의 각 작업에 대한 설명은 System Administration Guide의 StarOS Tasks 장에서 확인할 수 있습니다.
기본 리소스 사용량 정보는 CLI 명령의 출력에서 찾을 수show task resources
있습니다.

필드 |
설명 |
사용된 cputime |
작업의 CPU 사용량 |
cputime allc |
작업에 할당된 CPU 사용 제한 |
사용된 메모리 |
작업의 메모리 사용량 |
기억 장치 용량 |
작업에 할당된 메모리 사용 제한 |
사용된 파일 |
작업의 파일 사용량 |
파일 모두 |
작업의 할당된 파일 사용량 |
상태 |
작업 상태: 좋음/경고/이상 |
이는 리소스를 계속 감시하는 것이며 작업 기능을 제한하지 않는다는 점을 이해하는 것이 중요합니다. 이 작업은 제한보다 많은 CPU/메모리/파일을 사용한 후에도 작업을 수행할 수 있어야 합니다. 제한을 초과하면 Syslog 및 SNMP 트랩이 생성되지만, 항상 문제를 나타내지는 않습니다.
의심스러운 원인
일시적인 사용 급증은 문제가 되지 않는 경우가 많다. 그러나 작업 CPU 사용량이 100%에 머물러 있거나 메모리 사용량이 계속 증가하고 줄지 않는 등의 문제가 지속되는 경우에는 이러한 사례를 조사해야 합니다.
일시적인 급증의 일반적인 원인은 다음과 같습니다.
- 대규모 출력을 생성하는 CLI 명령(CLI 작업)
- 시스템에 있는 로그 정보 양(evlogd 작업)
조사해야 할 사례는 다음과 같습니다.
- 내부 무한 루프로 인한 높은 CPU 사용량(CPU 사용량이 100% 유지)
- 메모리 누수 또는 단편화로 인해 메모리 사용량이 지속적으로 증가함
sessmgr, npudrv 및 CLI 기능의 SNMP 트랩 예는 다음과 같습니다.
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
CPU 사용
CPU 작업 사용량이 근접하거나 제한을 초과하면 Syslog 경고와 함께 CPUWarn 및 CPUOver SNMP 트랩이 생성됩니다.
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
CPUver 예에서 인스턴스 수 5010046은 CPU 사용량이 60.9%인 반면 제한은 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%
참고: 이 Syslog는 경고 수준이며 기본 로깅 설정으로 생성되지 않습니다. 이를 생성해야 하는 경우 recmgr에 대한 로깅 설정을 경고로 구성해야 합니다.
메모리 사용량
메모리 작업 사용량이 근접하거나 제한을 초과하면 Syslog 경고와 함께 MemoryWarn 및 MemoryOver SNMP 트랩이 생성됩니다.
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
MemoryOver 예제에서 인스턴스 번호 5010046은 제한이 66560 동안 89940 메모리를 소비합니다.
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
참고: 이 Syslog는 경고 수준이며 기본 로깅 설정으로 생성되지 않습니다. 이를 생성해야 하는 경우 recmgr에 대한 로깅 설정을 경고로 구성해야 합니다.
파일 사용
는 files
열려 있는 파일 수를 나타내거나 파일 설명자 태스크에서 사용합니다. 파일 사용에 대한 SNMP 트랩은 없지만 제한을 초과하면 Syslog가 생성됩니다.
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
문제 해결에 필요한 정보
이 섹션에서는 추가 조사가 필요할 때 새 TAC(Technical Assistance Center) 서비스 요청을 열기 전에 수집해야 하는 정보에 대해 설명합니다. 수집해야 하는 로그는 사용 유형에 따라 다릅니다.
참고: 명령 목록 외에 명령의 출력show support detail
이 항상 필요합니다.
CPU 사용
StarOS CLI에서 다음 명령을 입력하고 출력을 캡처합니다.
show task resources
show task resource max
show snmp trap history
show logs
show profile facility instance depth 4
참고: 이show profile
명령은 숨겨진 모드 CLI 명령입니다.
메모리 사용량
StarOS CLI에서 다음 명령을 입력하고 출력을 캡처합니다.
show task resources
show task resource max
show snmp trap history
show logs
heap 및 system heap 명령을 정기적으로 여러 번 수집합니다(예: 15분마다, 4개 출력).
show messenger proclet facility instance heap
show messenger proclet facility instance system heap
참고: 이show messenger proclet
명령은 숨겨진 모드 CLI 명령입니다.
파일 사용
StarOS CLI에서 다음 명령을 입력하고 출력을 캡처합니다.
show task resources
show task resource max
show snmp trap history
show logs