목차

소개

사전 요구 사항

요구 사항

사용되는 구성 요소

표기 규칙

코어 덤프 구성 및 테스트

코어 덤프

구성

설정 테스트

선택적 명령

관련 정보

소개

이 문서에서는 Cisco GSR(Gigabit Switch Router) 라인 카드(LC)에서 코어 덤프를 구성하는 방법에 대한 지침을 제공합니다.

사전 요구 사항

요구 사항

이 문서에 대한 특정 요건이 없습니다.

사용되는 구성 요소

이 문서의 정보는 다음 소프트웨어 및 하드웨어 버전을 기반으로 합니다.

- Cisco IOS® 소프트웨어 릴리스 12.0(24)S1

- 이 문서는 모든 Cisco 12xxx Series GSR 라우터에 적용됩니다.

주의: 원격 서버에 대한 코어 덤프는 20분에서 45분 정도 걸릴 수 있습니다.라우터에 액세스할 수 없으며 현재 패킷을 전달하지 않습니다.이 절차는 주의하여 사용하십시오.

이 문서의 정보는 특정 랩 환경의 디바이스를 토대로 작성되었습니다.이 문서에 사용된 모든 디바이스는 초기화된(기본) 컨피그레이션으로 시작되었습니다.현재 네트워크가 작동 중인 경우, 모든 명령어의 잠재적인 영향을 미리 숙지하시기 바랍니다.

표기 규칙

문서 규칙에 대한 자세한 내용은 Cisco 기술 팁 표기 규칙을 참조하십시오.

코어 덤프 구성 및 테스트

코어 덤프

코어 덤프는 라우터가 복구할 수 없는 오류를 감지하여 자체적으로 다시 로드해야 할 때 생성되는 이진 파일입니다.라우터의 메모리 이미지의 전체 복사본입니다.코어 덤프를 생성하려면 라우터를 구성해야 합니다.그러나 모든 크래시 유형이 코어 덤프를 생성하지는 않습니다.이러한 기능은 일반적으로 기술 지원 담당자에게 유용하며 충돌 원인을 파악하는 데 도움이 됩니다.

구성

이 표에서는 FTP를 사용하는 코어 덤프에 대해 LC를 구성하기 위해 필요한 최소 컨피그레이션을 보여 줍니다.

FTP를 사용하는 코어 덤프

hostname GSR

!

ip ftp source-interface Ethernet0

ip ftp username test

ip ftp password blah

!--- These commands enable the router for FTP transfer. !--- These commands are not necessary if you use the default !--- protocol TFTP for file transfer.

!

interface Ethernet0

ip address 10.77.240.91 255.255.255.128

!

ip route 0.0.0.0 0.0.0.0 10.77.240.1

!

exception protocol ftp

!--- Specifies FTP as the protocol for core dumps. The default is TFTP.

exception dump 10.77.233.129

!--- Specifies the IP address of the server which receives the core dump file.

exception linecard slot 2

!--- Enables the storage of crash information for the LC that you specify. !--- Here you specify slot 2.

이 기본 컨피그레이션을 사용하여 다음을 수행합니다.

- GRP(Gigabit Route Processor)가 충돌하면 GSR-core라는 코어 덤프가 10.77.233.129에 있는 FTP 서버에 저장됩니다.

- 슬롯 2의 LC가 Router-core라는 코어 덤프에 충돌하면 슬롯 2가 동일한 위치에 저장됩니다.

설정 테스트

코어 덤프에 대한 라우터를 구성할 때 설정이 작동하는지 테스트합니다.

Cisco IOS는 다시 로드할 필요 없이 코어 덤프를 테스트하거나 트리거하기 위해 write core 명령을 제공합니다.

write core 명령

특별 권한 exec 모드(활성화 모드)에서 write core 명령을 사용합니다. 이 명령을 사용하면 시스템은 다시 로드할 필요 없이 코어 덤프를 생성하며 GRP 메모리의 내용은 덤프됩니다.

이 명령은 파일이 작성된 서버의 연결을 확인할 때 유용합니다.

GSR#write core

Remote host [10.77.233.129]?

Base name of core files to write [cdfile1]?

writing uncompressed ftp://10.77.233.129/cdfile1

Writing cdfile1 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

!!!!!!!!!!!

!--- This output is suppressed.

숨겨진 명령 테스트 충돌을 사용하여 코어 덤프에 대한 컨피그레이션을 테스트합니다.attach 명령을 사용하여 필요한 라인 카드에 연결합니다.라인 카드에 대한 코어 덤프를 생성하려면 test crash 명령을 입력합니다.라인 카드에서 실행하는 명령은 해당 라인 카드에서 Cisco IOS 이미지를 사용합니다.이 IOS 이미지에는 write core 명령이 없습니다.LC에서 코어 덤프 컨피그레이션을 테스트하려면 이 방법을 사용해야 합니다.

주의: test crash 명령은 프로덕션 네트워크를 중단합니다.따라서 라우터가 crash하고 메모리 내용을 덤프하기 전에 라우터가 다시 나타나는 것을 방지합니다.이 작업에 걸리는 시간은 RP 또는 LC에 있는 동적 RAM(DRAM)의 양에 따라 달라집니다.

GSR#attach 2

Entering Console for 1 Port Packet Over SONET OC-12c/STM-4c in Slot: 2

Type "exit" to end this session

Press RETURN to get started!

LC-Slot2>

LC-Slot2>enable

LC-Slot2#test crash

WARNING: Command selections marked with '(crash router)' will crash

router when issued. However a selection 'C' will need to

be issued IMMEDIATELY before these selections to enable them.

Type the number for the selected crash:

--------------------------------------

1  (crash router) Bus Error, due to invalid address access

2  (crash router) Bus Error, due to parity error in Main memory

3  (crash router) Bus Error, due to parity error in I/O memory

4  (crash router) Address Error, due to fetching code from odd address

5  (crash router) Jump to zero

6  (crash router) Software forced crash

7  (crash router) Illegal read of address zero

8  (crash router) Divide by zero

9  (crash router) Corrupt memory

C  Enable crash router selection marked with (crash router)

U  (crash router) User enter write bus error address

W  (crash router) Software watchdog timeout (*** Watch Dog Timeout ***)

w  (crash router) Process watchdog timeout (SYS-2-WATCHDOG)

d  Disable crashinfo collection

e  Enable crashinfo collection

i  Display contents of current crashinfo flash file

n  Change crashinfo flash file name

s  Save crashinfo to current crashinfo flash file

q  Exit crash menu

? C

!--- Enter C here and press return.

Type the number for the selected crash:

--------------------------------------

1 (crash router) Bus Error, due to invalid address access

2 (crash router) Bus Error, due to parity error in Main memory

3 (crash router) Bus Error, due to parity error in I/O memory

4 (crash router) Address Error, due to fetching code from odd address

5 (crash router) Jump to zero

6 (crash router) Software forced crash

7 (crash router) Illegal read of address zero

8 (crash router) Divide by zero

9 (crash router) Corrupt memory

C Enable crash router selection marked with (crash router)

U (crash router) User enter write bus error address

W (crash router) Software watchdog timeout (*** Watch Dog Timeout ***)

w (crash router) Process watchdog timeout (SYS-2-WATCHDOG)

d Disable crashinfo collection

e Enable crashinfo collection

i Display contents of current crashinfo flash file

n Change crashinfo flash file name

s Save crashinfo to current crashinfo flash file

q Exit crash menu

? 6

!--- Enter the number that corresponds to !--- the crash type you want to test.

Unexpected exception, CPU signal 23, PC = 0x400E8DA8

-Traceback= 400E8DA8 40C6A4DC 404006E09C 400C477C 400C4768

$0 : 00000000, AT : 41B30000, v0 : 431A8F40, v1 : 00000032

!--- Output is suppressed.

이 명령을 실행하면 충돌이 발생하고 메모리 내용이 덤프됩니다.코어 덤프 생성이 없는 경우 전체 설정 및 컨피그레이션을 검토해야 합니다.

선택적 명령

이 섹션에서는 이 문서에서 사용하는 명령과 기타 선택적 명령에 대해 설명합니다.

LC 충돌이 생성하는 코어 덤프를 수정하는 유일한 예외 명령은 예외 라인 카드 명령입니다.이 목록의 다른 예외 명령은 GRP가 생성하는 코어덤프에 적용됩니다.

- exception core-file file-name compress - GRP crash가 생성하고 코어 파일을 생성하는 코어 덤프 파일의 파일 이름을 설정합니다.기본적으로 코어 파일의 이름은 hostname-core입니다. 여기서 hostname은 라우터의 이름입니다.이 명령을 사용하면 각 라우터에는 고유한 코어 파일이 있습니다.

예를 들어 라우터의 호스트 이름이 "lab1"이면 기본적으로 라우터는 lab1-core라는 이름의 코어 덤프 파일을 생성합니다.명령 예외 core-file Test를 사용하면 생성된 코어 덤프 이름을 Test로 변경할 수 있습니다.

compress 옵션으로 코어 덤프 파일을 압축할 수 있습니다.

참고:  압축은 플래시 디스크에 코어 덤프 파일을 쓸 때 자동으로 사용됩니다.RCP(remote copy protocol)의 도움을 받아 코어 덤프 파일을 작성할 때는 compress 옵션을 지원하지 않습니다.

- 예외 프로토콜 {ftp | rcp | tftp} - 코어 파일을 원격 호스트에 쓸 때 사용할 프로토콜을 설정합니다.FTP(File Transfer Protocol), TFTP(Trivial File Transfer Protocol) 또는 RCP(Remote Copy Protocol)일 수 있습니다. 기본 프로토콜은 TFTP입니다.

참고: 16MB보다 큰 코어 파일을 덤프하기 위해 TFTP를 사용할 수 없습니다.

참고: FTP를 사용하는 경우 해당 시스템에 유효한 사용자 계정이 있어야 하며 사용 가능한 디스크 공간이 충분해야 합니다.코어 파일이 매우 클 수 있기 때문입니다.기본 프로토콜은 TFTP입니다.

- exception dump ip address—코어 파일을 쓸 원격 서버의 IP 주소 또는 호스트 이름을 설정합니다.

- 예외 플래시 {promem | iomem | all} {device_name[:partition_number]}—다른 플랫폼 중 GSR은 선형 플래시 메모리 또는 PCMCIA 플래시 카드의 대안으로 플래시 디스크를 지원합니다.이러한 플래시 디스크의 대용량 스토리지 용량으로 인해 코어 덤프를 캡처하는 또 다른 방법이 적합합니다.다음은 플래시 디스크를 사용하여 코어 덤프를 설정하기 위해 필요한 라우터 컨피그레이션 명령입니다.

exception flash {procmem | iomem | all} {device_name[:partition_number]}

현재 플래시 디스크에 LC 코어 덤프를 구현하지 않습니다.

- exception crashinfo file device:filename - GRP가 충돌할 때 crashinfo 파일을 쓰기 위해 라우터를 구성합니다.라우터는 기본적으로 활성화되어 있습니다.

옵션 파일 디바이스:filename을 지정하면 진단 정보를 저장하기 위해 사용하는 플래시 디바이스와 파일 이름입니다.콜론이 필요합니다.기본 위치는 bootflash이고 파일의 기본 이름은 crashinfo _datetime입니다.

- exception crashinfo buffersize kilobytes(예외 crashinfo buffersize kilobytes) - GRP가 충돌할 때 crashinfo 파일을 쓰기 위해 라우터를 구성합니다.라우터는 기본적으로 활성화되어 있습니다.

옵션 buffersize KB를 사용하면 crashinfo 파일에 사용하는 버퍼의 크기로 라우터를 변경할 수 있습니다.기본 크기는 32KB입니다(최대 크기는 100KB이며, 예외 crashinfo buffer 100으로 구성할 수 있습니다).

- exception suffix slot-number - GRP core-file에 대한 파일 이름을 지정하지 않으면 slot-number를 코어 파일 이름에 추가합니다.LC가 생성하는 코어 덤프에 기본적으로 슬롯 번호가 추가됩니다.

- 예외 라인 카드 {all | slot-number} [corefile filename | 주 메모리 크기[k] | m] | queue-ram 크기[k] | m] | rx 버퍼 크기[k] | m] | sqe-register-rx | sqe-register-tx | tx-buffer 크기 [k] | m]]—이 구문에 대한 자세한 내용은 이 명령의 구성 요소에 대해 설명합니다.

- all —모든 LC에 대한 충돌 정보를 저장합니다.

- slot slot-number - LC에 대한 충돌 정보를 지정한 슬롯에 저장합니다.

- corefile filename - LC crash가 생성하는 코어 덤프 파일의 파일 이름을 설정합니다.기본 파일 이름은 hostname-core-slot-number(예: Router-core-2)입니다.

- main-memory size—의 주 메모리에 대한 충돌 정보를 저장하여 충돌 정보의 크기를 지정합니다.저장할 메모리의 크기는 0~268435456입니다.

- queue-ram size - LC에 대기열 RAM 메모리에 대한 충돌 정보를 저장하고 충돌 정보의 크기를 지정합니다.저장할 메모리의 크기는 0~1048576입니다.

- rx-buffer size and tx-buffer size - LC에 receive(rx) 및 transmit(tx) 버퍼에 대한 충돌 정보를 저장하고 충돌 정보의 크기를 지정합니다.저장할 메모리의 크기는 0~67108864입니다.

- sqe-register-rx 및 sqe-register-tx—LC에 있는 수신 또는 전송 실리콘 대기열 엔진 레지스터에 대한 충돌 정보를 저장합니다.

- k 및 m - k 옵션은 지정한 크기에 1K(1024)를 곱한 후 m 옵션은 지정한 크기에 1M(1024*1024)을 곱합니다.

예:

- exception linecard slot 6 - 슬롯 6에 있는 LC에 대한 코어 파일을 생성할 수 있습니다(충돌 시).

- exception linecard slot 6 core-file router_slot6_core - LC가 슬롯 6에서 생성하는 코어 파일의 파일 이름을 router_slot6_core로 설정합니다.

- exception linecard slot 6 main-memory 16 Mb - 덤프할 주 메모리 콘텐츠의 양을 16MB로 설정합니다.

참고: 최대값은 256MB입니다.이를 지정하는 것은 안전합니다.

"exception linecard slot 6 main-memory 256 M(예외 라인 카드 슬롯 6 기본 메모리 256 M)"을 지정하면 컨피그레이션에 이 정보가 표시되지 않습니다.이는 LC에 대해 코어 파일 생성을 활성화할 때 기본 컨피그레이션이기 때문입니다.

- 예외 메모리 {fragment size | minimum size}—디버깅 프로세스 시 특정 메모리 크기 매개 변수를 위반할 때 라우터가 코어 덤프를 생성하고 재부팅하도록 할 수 있습니다.매개 변수 조각을 사용하면 사용 가능한 풀에서 최소 연속 메모리 블록을 바이트 단위로 확인할 수 있습니다.최소값은 사용 가능한 메모리 풀의 최소 크기를 나타냅니다.size 값은 바이트 단위이며 60초마다 선택됩니다.사용 가능한 메모리보다 큰 크기를 입력하고 예외 덤프 명령을 구성하면 코어 덤프가 생성되고 라우터가 60초 후에 다시 로드됩니다.예외 덤프 명령을 구성하지 않으면 코어 덤프를 생성하지 않고 라우터가 다시 로드됩니다.

- exception region-size size—프로세서 메모리 풀에 손상 표시가 있는 경우 폴백 풀로 사용할 작은 양의 메모리를 정의하려면 이 명령을 사용합니다.이를 통해 코어 덤프 프로세스 시 메모리 장애를 방지할 수 있습니다.기본 영역 크기는 16,384바이트입니다.예외 영역 크기를 최대(65536바이트)로 구성하면 코어 덤프가 성공할 가능성이 높아집니다.

- exception delay-dump delay - 중복 시스템에서 코어 파일 전송을 시작하기 전에 지연을 지정할 수 있습니다.기본적으로 시스템은 코어 파일 전송을 초기화하기 전에 대기 시간이 안정화될 수 있도록 30초 동안 일시 중지됩니다.유효한 범위 값은 30~300초입니다.

- ip ftp username username—FTP를 사용하여 원격 서버에 코어 파일을 업로드할 때 사용할 사용자 이름을 구성할 수 있습니다.이 예에서 사용자 이름은 테스트(ip ftp 사용자 이름 테스트)로 설정됩니다.

- ip ftp password [type] password—ip ftp username username 명령에서 설정한 사용자 이름에 대한 비밀번호를 지정할 수 있습니다.이 예는 ip ftp 비밀번호와 같습니다.

- ip ftp source-interface interface - FTP 연결을 소스로 설정할 인터페이스를 결정합니다.

- ip ftp passive—기본적으로 라우터는 연결을 위해 수동 모드 FTP를 사용하려고 시도합니다.no ip ftp passive 명령을 사용하여 이를 끕니다.

참고: Cisco IOS Software Release 12.0(22)S부터 코어 덤프 생성이 최신 엔진 유형(2, 3, 4, 4 이상)에서 지원됩니다. 이 기능은 새 엔진이 나오는 즉시 지원되어야 합니다.모든 라인 카드는 문제 해결 프로세스를 쉽게 수행할 수 있도록 이 기능을 지원합니다.

관련 정보

- Technical Support - Cisco Systems