kdump
kdump 의 설정 유무와 상태를 확인하고 정상적으로 동작하는지 확인
목적
Window Desktop 경우는 재부팅하거나 포맷하면 되지만, Linux 서버 경우는 장애가 발생했을 때 재부팅을 하는 것도 리스크가 있다. 장애가 발생했을 때 그 원인을 찾아내서 같은 장애가 나타나지 않도록 하기 위해 사용되고 있다. 그 원인을 찾을 수 있는 실마리를 제공하는 것이 vmcore라는 코어 파일이며, 코어파일을 생성하는 것이 kdump이다.[1]
기능과 옵션
<sysrq-trigger에 대한 이벤트[2]>
m - 메모리 할당에 대한 정보를 덤프
t - thread 상태 정보를 덤프
p - 현재 CPU의 registers와 flags를 덤프
c - 의도적으로 system을 crash시킴
s - 모든 mount된 file system을 즉시로 동기화
u - 즉시 모든 mount된 file system을 read-only모드로 remount.
b - 즉시 system을 재기동
o - 즉시 power off (설치한 상태에서 가능)
f - Out Of Memory Killer를 기동(OOM)
w - 무정전(차단) 상태의 작업을 덤프
설치 및 실행 방법
1. kexec-tools 설치 여부 확인
# rpm -qa | grep kexec-tools
1-1. kexec-tools 파일이 없을 경우, 아래 패키지 설치
# yum install kexec-tools system-config-kdump
2. vi 에디터로 "crashkernel=128M" 항목추가
# vi /etc/grub.conf
3. kdump.conf 파일에 아래의 내용 추가
# vi /etc/kdump.conf
4. 서비스 활성화 및 재부팅
# chkconfig kdump on
# shutdown -r now
5. kdump 상태확인
# service kdump status
6. kdump 테스트진행 (명령어 실행 시 강제 재부팅 되므로 주의)
# echo 'c' > /proc/sysrq-trigger
Reference
Last updated