리소스 모니터링 방법론을 통한 시스템 성능 문제 해결
리소스 모니터링 사용 계산 개요
CLI 및 SNMP 관리 정보 베이스(MIB) 쿼리를 모두 사용하여 리소스 모니터링 기능을 구성할 수 있습니다. 이 유틸리티를 사용하여 DPC 및 MPC의 상태 및 운영 효율성을 모니터링하기 위한 충분한 헤드룸(애플리케이션 또는 가상 라우터 설정된 메모리 공간 제한)을 프로비저닝할 수 있습니다. 또한 jtree 메모리 유형과 인접한 페이지, 두 단어 및 무료 메모리 페이지의 메모리 사용 또는 사용량을 분석하고 볼 수 있습니다. 모든 MX 시리즈 라우터 패킷 전달 엔진의 jtree 메모리에는 두 가지 세그먼트가 있습니다. 한 세그먼트는 주로 라우팅 테이블 및 관련 정보를 저장하고 다른 세그먼트는 주로 방화벽 필터 관련 정보를 저장합니다. 라우팅 테이블 또는 방화벽 필터에 더 많은 메모리를 할당하면 패킷 전달 엔진 포워딩 작업이 중단될 수 있으므로, Junos OS CLI는 메모리 강화된 경로 명령문을 포함하는 구성을 커밋할 때 영향을 받는 모든 FPC를 다시 시작하도록 경고를 표시합니다.
다음 섹션에서는 I-칩 기반 및 Trio 기반 라인 카드에 대한 여러 메모리 영역의 계산 방정식과 해석에 대해 설명합니다.
Trio 기반 라인 카드에 대한 리소스 모니터링 및 사용 계산
Trio 기반 라인 카드에서는 다음 홉 및 방화벽 필터에 대한 메모리 블록이 별도로 할당됩니다. 또한 확장 메모리가 존재하며, 이는 다음 홉 또는 방화벽 필터에 할당된 메모리가 완전히 소비될 때 사용됩니다. 다음 홉 및 방화벽 필터 모두 확장 메모리에서 메모리를 할당할 수 있습니다. 캡슐화 메모리 영역은 I-칩 기반 라인 카드에만 국한되며 Trio 기반 라인 카드에는 적용되지 않습니다. 따라서 Trio 기반 라인 카드의 경우 자유 메모리 공간 비율은 다음과 같이 해석될 수 있습니다.
% Free (NH) = (1- (Used NH memory + Used Expansion memory ) / (Total NH memory+Total Expansion memory)) × 100
% Free (Firewall or Filter) = (1-(Used FW memory+Used Expansion memory ) / (Total FW memory+Total Expansion memory)) × 100
캡슐화 메모리는 I-칩에 따라 구성되며 Trio 기반 라인 카드에는 적용되지 않습니다.
% Free (Encap memory) = Not applicable
I-칩 기반 라인 카드에 대한 리소스 모니터링 및 사용 계산
I-칩 기반 라인 카드에는 경로 조회 블록과 관련된 32MB의 정적 RAM(SRAM) 메모리와 출력 WAN 블록과 연결된 16MB의 SRAM 메모리가 포함되어 있습니다.
경로 조회 메모리는 각각 16MB의 두 세그먼트로 나누어지는 32MB 메모리의 단일 풀입니다. 표준 구성에서 Segment 0은 NH 및 접두사에 사용되며 Segment 1은 방화벽 또는 필터에 사용됩니다. 이 할당은 [edit chassis] 계층 수준에서 route-memory-enhanced 옵션을 사용하여 수정할 수 있습니다. 일반적인 구성에서 NH 애플리케이션은 두 세그먼트에서 메모리를 할당할 수 있습니다. 따라서 NH의 자유 메모리 비율은 32MB 메모리에 계산됩니다. 현재 방화벽 애플리케이션은 세그먼트 1에서만 할당된 메모리입니다. 그 결과, 방화벽에 대해 모니터링할 무료 메모리의 백분율은 세그먼트 1에서만 사용 가능한 16MB 메모리에서 시작됩니다.
I-칩 기반 라인 카드의 경우, 자유 메모리 공간의 백분율은 다음과 같이 해석될 수 있습니다.
% Free (NH) = (32-(Used NH memory+Used FW memory+Used Other application)) / 32×100
% Free (Firewall or Filter)=(16-(Used NH memory+Used FW memory+Used Other application)) / 16×100
출력 WAN(Iwo) SRAM의 메모리 크기는 16MB이며 캡슐화 정보를 포함하는 레이어 2 설명자를 저장합니다. 이 엔터티는 중요한 리소스이며 모니터링해야 합니다. 이 메모리 공간은 show 명령의 출력에 "캡슐화"로 표시됩니다. 캡슐화 영역의 자유 메모리 비율은 다음과 같이 계산됩니다.
% Free (Encapsulation memory) = (16-(Iwo memory used ( L2 descriptors +other applications))) / 16×100
다음 홉 메모리에 대해 구성된 워터마크 수준은 캡슐화 메모리에도 효과적입니다. 따라서 캡슐화 영역의 자유 메모리 비율이 구성된 워터마크보다 낮으면 로그가 생성됩니다.
자유 메모리 비율이 특정 메모리 유형의 자유 메모리 워터마크보다 낮으면 syslog에 다음 오류 메시지가 기록됩니다.
“Resource Monitor: FPC <slot no> PFE <pfe inst> <“JNH memory” or “FW/ Filter memory”> is below set watermark <configured watermark>”.
계층 수준에서 문을 [edit system services resource-monitor]
사용하여 traceoptions file <filename> flag flag level level size bytes
리소스 모니터링 추적 작업을 구성할 수 있습니다. 기본적으로 메시지는 으로 작성 /var/log/rsmonlog됩니다. 소켓 통신 장애와 관련된 오류 로그(라우팅 엔진 및 패킷 전달 엔진 간)는 라우팅 엔진 패킷 전달 엔진 간의 통신 문제를 진단하는 데 유용합니다.
Ukern 관점에서 MPC5E에는 패킷 전달 엔진 인스턴스가 하나만 포함되어 있습니다. show chassis 패브릭 플레인 명령 출력은 패킷 전달 엔진 대한 패브릭 플레인 연결 상태를 표시합니다. 두 개의 패킷 전달 엔진이 존재하므로 출력에서 PFE-0 및 PFE-1을 확인할 수 있습니다.
user@host# run show chassis fabric plane Fabric management PLANE state Plane 0 Plane state: ACTIVE FPC 0 PFE 0 :Links ok PFE 1 :Links ok
MPC5E의 패킷 전달 엔진 인스턴스가 하나만 존재하기 때문에 show system resource-monitor fpc 명령의 출력은 패킷 전달 엔진 인스턴스 0에 해당하는 하나의 행만 표시합니다.
user@host# run show system resource-monitor fpc FPC Resource Usage Summary Free Heap Mem Watermark : 20 % Free NH Mem Watermark : 20 % Free Filter Mem Watermark : 20 % * - Watermark reached Heap ENCAP mem NH mem FW mem Slot # % Free PFE # % Free % Free % Free 0 94 0 NA 83 99
구성된 워터마크는 GRES 및 통합 ISSU 절차 전반에 걸쳐 유지됩니다.
MX 시리즈 라우터에서 메모리 리소스 사용 모니터링 구성을 통한 시스템 성능 진단 및 디버깅
Junos OS CLI 및 SNMP 관리 정보 베이스(MIB) 쿼리를 모두 사용하여 리소스 모니터링 기능을 지원합니다. 이 유틸리티를 사용하여 시스템 안정성, 특히 MX 시리즈 라우터에서 I-칩 기반 라인 카드 및 Trio 기반 FPC의 상태 및 운영 효율성을 보장하기 위해 충분한 용량(애플리케이션 또는 가상 라우터 설정된 메모리 공간 제한)을 프로비저닝할 수 있습니다. 메모리 사용량(우커널 메모리 또는 ASIC 메모리)이 특정 임계값에 도달하면 시스템 운영이 라인 카드의 상태 및 트래픽 처리 안정성에 영향을 미루게 되며 시스템 성능의 이러한 절충은 라이브 트래픽 및 프로토콜을 지원하는 데 해가 될 수 있습니다.
메모리 리소스 활용 기능의 속성을 구성하려면 다음을 수행합니다.
MS-DPC 및 MS-MIC에 대한 jnxNatObjects 값의 불일치 문제 해결
문제
설명
MS-DPC와 MS-MIC가 모두 네트워크에 구축되고 네트워크 주소 변환(NAT) 유형이 로 napt-44
구성되면 jnxNatObjects에 대한 명령의 snmp mib walk
출력은 MS-DPC 및 MS-MIC에 대한 다른 값을 표시합니다.
해상도
MS-DPC 및 MS-MIC에 대한 jnxNatObjects 값과 일치하도록 SNMP 구성
MS-DPC 및 MS-MIC에 대한 jnxNatObjects 값과 일치하도록 SNMP를 구성하려면,
구성 모드 명령을 실행합니다
set services service-set service-set-name nat-options snmp-value-match-msmic
. 다음 구성 예는 jnxNatObjects 관리 정보 베이스(MIB) 테이블의 MS-MIC 특정 객체에 대한 값과 일치하도록 SNMP를 구성하는 방법을 보여줍니다.[edit] user@host# set services service-set Mobile nat-options snmp-value-match-msmic
commit
명령을 실행하여 변경 사항을 확인합니다.[edit] user@host# commit commit complete
(선택 사항)
show snmp mib walk jnxNatObjects
명령을 실행하여 jnxNatObjects 관리 정보 베이스(MIB) 테이블의 MS-MIC 특정 객체에 대한 값이 MS-DPC 개체의 값과 일치하는지 확인합니다. 예를 들어, 다음 출력은 MS-MIC 특정 객체 및 MS-DPC 개체에 대한 값이 일치한다는 것을 보여줍니다.[edit] user@host# run show snmp mib walk jnxNatObjects jnxNatSrcXlatedAddrType.6.77.111.98.105.108.101 = 1 jnxNatSrcPoolType.6.77.111.98.105.108.101 = 13 jnxNatSrcNumPortAvail.6.77.111.98.105.108.101 = 64512 jnxNatSrcNumPortInuse.6.77.111.98.105.108.101 = 0 jnxNatSrcNumAddressAvail.6.77.111.98.105.108.101 = 1 jnxNatSrcNumAddressInUse.6.77.111.98.105.108.101 = 0 jnxNatSrcNumSessions.6.77.111.98.105.108.101 = 0 jnxNatRuleType.9.77.111.98.105.108.101.58.116.49 = 13 jnxNatRuleTransHits.9.77.111.98.105.108.101.58.116.49 = 0 jnxNatPoolType.6.77.111.98.105.108.101 = 13 jnxNatPoolTransHits.6.77.111.98.105.108.101 = 0
주:구성 모드 명령을 사용하여
delete services service-set service-set-name nat-options snmp-value-match-msmic
이 기능을 비활성화할 수 있습니다.
참조
FPC 슬롯의 패킷 전달 엔진 위한 우커널 메모리에 대한 매니지드 객체
개체 식별자가 인 은 jnxPfeMemoryUkernTable
(는 {jnxPfeMemory 1}
) 은(는) 지정된 패킷 전달 엔진 슬롯에 대한 글로벌 우커널 또는 업 메모리 통계를 검색하는 을(를) 포함합니다 JnxPfeMemoryUkernEntry
. 개체 식별자가 인 각 JnxPfeMemoryUkernEntry
은(는 {jnxPfeMemoryUkernTable 1}
) 다음 테이블에 나열된 개체를 포함합니다. 은 jnxPfeMemoryUkernEntry
(는) 사용 가능한 총 메모리 및 사용된 메모리 비율과 같은 메모리 활용도를 나표로 합니다.
객체 |
오브젝트 ID |
설명 |
---|---|---|
|
|
우커 스크럭 내의 무료 패킷 전달 엔진 메모리 비율을 표시합니다. |
패킷 전달 엔진 메모리 통계 데이터에 대한 매니지드 객체
jnxPfeMemory
객체 식별자가 {jnxPfeMib 2}
에 나열된 객체를 포함하는 테이블표 2
객체 |
오브젝트 ID |
설명 |
---|---|---|
|
|
지정된 패킷 전달 엔진 슬롯에 대한 전역 우커른 메모리 통계를 제공합니다. |
|
|
지정된 패킷 전달 엔진 슬롯에 대한 글로벌 다음 홉(Trio 기반 라인 카드용) 또는 Jtree(I-칩 기반 라인 카드의 경우) 메모리 활용도 및 방화벽 필터 메모리 사용 통계를 제공합니다. |
FPC 슬롯의 패킷 전달 엔진 대한 다음 홉, Jtree 및 방화벽 필터 메모리에 대한 매니지드 객체
jnxPfeMemoryForwardingTable
개체 식별자가 인 에는 {jnxPfeMemory 2}
Trio 기반 라인 카드의 다음 홉 메모리, I-칩 기반 라인 카드용 jtree 메모리, I-칩 및 Trio 기반 라인 카드 모두에 대해 지정된 패킷 전달 엔진 슬롯에 대한 방화벽 또는 필터 메모리 통계를 검색하는 기능이 포함되어 JnxPfeMemoryForwardingEntry
있습니다. 개체 식별자가 인 각 jnxPfeMemoryForwardingEntry
은(는 {jnxPfeMemoryForwardingTable 1}
) 다음 테이블에 나열된 개체를 포함합니다.
은 jnxPfeMemoryForwardingEntry
(는) ASIC 인스턴스, 사용된 ASIC 메모리 및 ASIC 자유 메모리를 나타냅니다. 모든 MX 시리즈 라우터 패킷 전달 엔진의 jtree 메모리에는 두 가지 세그먼트가 있습니다. 한 세그먼트는 주로 라우팅 테이블 및 관련 정보를 저장하고 다른 세그먼트는 주로 방화벽 필터 관련 정보를 저장합니다. 라우팅 테이블 또는 방화벽 필터에 더 많은 메모리를 할당하면 패킷 전달 엔진 포워딩 작업이 중단될 수 있으므로, Junos OS CLI는 메모리 강화된 경로 명령문을 포함하는 구성을 커밋할 때 영향을 받는 모든 FPC를 다시 시작하도록 경고를 표시합니다. FPC 또는 DPC를 다시 시작할 때까지(MX 시리즈 라우터에서) 구성이 효과적이지 않습니다.
객체 |
오브젝트 ID |
설명 |
---|---|---|
|
|
패킷 전달 엔진 콤플렉스의 ASIC 인스턴스 번호를 나타냅니다. |
|
|
패킷 전달 엔진 메모리 유형을 나타내며, 여기서 nh = 1, fw = 2, 캡슐 = 3입니다. |
|
|
각 메모리 유형에 대해 무료로 메모리의 비율을 나타냅니다. |
jnxPfeMemoryErrorsTable
개체 ID가 인 주니퍼 네트웍스 엔터프라이즈별 패킷 전달 엔진 관리 정보 베이스(MIB)는 {jnxPfeMibRoot 1}
새로운 관리 정보 베이스(MIB) 테이블을 jnxPfeMemoryErrorsTable
지원하여 패킷 전달 엔진 메모리 오류 카운터를 표시합니다. 개체 식별자가 인 은 jnxPfeMemoryErrorsTable
(는 jnxPfeNotification 3
) 을(를 JnxPfeMemoryErrorsEntry
) 포함합니다. 개체 식별자가 인 각 JnxPfeMemoryErrorsEntry
은(는 { jnxPfeMemoryErrorsTable 1 }
) 다음 테이블에 나열된 개체를 포함합니다.
객체 |
오브젝트 ID |
설명 |
---|---|---|
|
|
이 PFE 알림 집합에 대한 FPC 슬롯 번호를 의미합니다. |
|
|
이 오류 집합에 대한 PFE 슬롯 번호를 의미합니다. |
|
|
패리티 오류 수를 의미합니다. |
|
|
ECC(Error-Checking Code) 오류 수를 나타냅니다. |
pfeMemoryErrors
개체 식별자가 인 은 pfeMemoryErrorsNotificationPrefix
(는 {jnxPfeNotification 0}
) 속성을 포함합니다 pfeMemoryErrors
. pfeMemoryErrors 객체는 식별자가 {pfeMemoryErrorsNotificationPrefix 1}
및 jnxPfeEccErrors
객체를 jnxPfeParityErrors
포함하고 있습니다.
객체 |
오브젝트 ID |
설명 |
---|---|---|
|
|
jnxPfeParityError 또는 jnxPfeEccErrors의 값이 증가할 때 pfeMemoryErrors 알림이 전송됩니다. |