7.5. 펌웨어에서 덤프 메커니즘 지원
7.5.1. 펌웨어에서 지원하는 덤프의 경우
kexec
및 kdump
메커니즘은 AMD64 및 Intel 64 시스템의 코어 덤프를 캡처하는 신뢰할 수 있고 검증된 방법입니다. 그러나 더 긴 내역, 특히 미니 및 메인프레임 시스템이 있는 일부 하드웨어를 사용하면 온보드 펌웨어를 활용하여 메모리 영역을 분리하고 충돌 분석에 중요한 데이터의 실수로 덮어 쓰기를 방지할 수 있습니다.
이 장에서는 덤프 방법을 지원하는 일부 펌웨어와 Red Hat Enterprise Linux와의 통합 방법에 대해 설명합니다.
7.5.2. IBM PowerPC 하드웨어에서 fadump 사용
펌웨어 지원 덤프(fadump
)는 IBM PowerPC LPARS에서 사용 가능한 kexec-kdump
의 안정적인 대안입니다. PCI 및 I/O 장치가 있는 완전 재설정 시스템에서 vmcore를 캡처합니다. 이 메커니즘은 펌웨어를 사용하여 충돌이 발생할 경우 메모리를 보존하지만 kdump
사용자 공간 스크립트를 사용하여 vmcore를 저장합니다.
이를 위해 fadump
는 시스템 펌웨어와의 충돌 발생 시 유지해야 하는 메모리 영역을 등록합니다. 이러한 리전은 부팅 메모리, 시스템 레지스터 및 하드웨어 페이지 테이블 항목 (PTE)을 제외한 모든 시스템 메모리 콘텐츠로 구성됩니다.
상기에 대한 보다 자세한 내용은 fadump 하드웨어를 재설정하는 PowerPC 특정 방법을 포함한 메커니즘은 /usr/share/doc/kexec-tools-X.y.z/fadump-howto.txt
를 참조하십시오. kexec-tools 시스템에 설치되어 있어야 합니다.
메모리 영역이 보존되지 않고 부팅 메모리
라고 알려진 것은 충돌 이벤트 후 커널을 성공적으로 부팅하는 데 필요한 RAM의 양입니다. 기본적으로 부팅 메모리 크기는 총 시스템 RAM의 256MB 또는 5 %이며 이는 더 큽니다.
kexec
-initiated 이벤트와 달리 fadump
프로세스는 프로덕션 커널을 사용하여 크래시 덤프를 복구합니다. 충돌 후 부팅 시 PowerPC 하드웨어는 장치 노드 /proc/device-tree/rtas/ibm,kernel-dump
를 사용할 수 있도록 fadump-aware kdump
스크립트에서 vmcore를 저장하도록 확인했습니다. 이 작업이 완료되면 시스템이 정상적으로 재부팅됩니다.
fadump 활성화
-
7.2절. “kdump 설치 및 구성” 에 설명된 대로
kdump
를 설치하고 구성합니다. /etc/default/grub
의GRUB_CMDLINE_LINUX
행에fadump=on
을 추가합니다.GRUB_CMDLINE_LINUX="rd.lvm.lv=rhel/swap crashkernel=auto rd.lvm.lv=rhel/root rhgb quiet
fadump=on
"(선택 사항) 기본값을 수락하지 않고 예약된 부팅 메모리를 지정하려면
crashkernel=xxM
을GRUB_CMDLINE_LINUX
로 구성합니다. 여기서 xx 는 메가바이트에 필요한 메모리 양입니다.GRUB_CMDLINE_LINUX="rd.lvm.lv=rhel/swap crashkernel=xxM rd.lvm.lv=rhel/root rhgb quiet fadump=on"
모든 부팅 구성 옵션과 마찬가지로 필요한 구성을 테스트하는 것이 좋습니다. 크래시 커널에서 부팅할 때 OOM(Out of Memory) 오류가 발생하는 경우 크래시 커널이 정상적으로 부팅할 수 있을 때까지 crashkernel=
에 지정된 값을 늘립니다. 이 경우 일부 시험 및 오류가 필요할 수 있습니다.
7.5.3. IBM Z에서 지원되는 펌웨어
IBM Z에는 두 개의 펌웨어가 지원됩니다. 독립 실행형 Dump
와 VMDUMP
입니다.
The kdump 인프라는 이러한 시스템에서 지원 및 활용되고 Red Hat Enterprise Linux의 구성에는 7.2절. “kdump 설치 및 구성” 에 설명되어 있습니다. 그러나 IBM Z 하드웨어에서 제공하는 펌웨어 지원 방법 중 하나를 사용할 때 몇 가지 이점이 있습니다.
Stand-alone Dump(SADMP) 메커니즘은 시스템 콘솔에서 시작 및 제어되며 IPL 부팅 가능 장치에 저장해야 합니다.
SADMP와 비슷한 경우는 VMDUMP입니다. 이 툴은 시스템 콘솔에서 시작되지만, 하드웨어에서 결과 덤프를 검색하여 분석을 위해 시스템에 복사하는 메커니즘이 있습니다.
이러한 방법의 한 가지 장점은 (및 다른 하드웨어 기반 덤프 메커니즘과 유사하게) Early Boot 단계에서 시스템의 상태를 캡처하는 기능입니다 ( kdump 서비스가 시작되기 전에)
VMDUMP에는 Red Hat Enterprise Linux 시스템으로 덤프 파일을 수신하는 메커니즘이 포함되어 있지만 SADMP와 VMDUMP의 구성 및 제어는 IBM Z Hardware 콘솔에서 모두 관리됩니다.
IBM은 SADMP에 대해 자세히 설명하고 독립 실행형 덤프 프로그램 문서 및 VMDUMP 문서의 VMDUMP에 대해 자세히 설명합니다.
IBM에는 Red Hat Enterprise Linux에서 Dump Tools on Red Hat Enterprise Linux 문서 사용 시 Red Hat Enterprise Linux 7의 덤프 툴 사용에 대한 문서도 포함되어 있습니다.
7.5.4. Fujitsu PRIMEQUEST 시스템에서 sadump 사용
Fujitsu sadump
메커니즘은 이벤트에서 대체 덤프 캡처를 제공하도록 설계되었습니다. kdump 를 성공적으로 완료할 수 없습니다.
sadump
프로세스는 시스템 ManageMent Board(MMB) 인터페이스에서 수동으로 호출됩니다.
이 시스템을 사용하여 X86_64 서버에 대해 kdump를 정상적으로 구성한 다음 다음 추가 단계를 수행하여 sadump
를 활성화합니다.
/etc/sysctl.conf
에서 다음 행을 추가하거나 편집하여 확인합니다. kdump sadump
에 대해 예상대로 시작됩니다.
kernel.panic=0 kernel.unknown_nmi_panic=1
위 항목 외에도 /etc/kdump.conf
에 일부 옵션을 추가하여 해당 상태를 확인해야 합니다. kdump sadump에 대해 올바르게 작동합니다.
특히 다음 사항을 확인하십시오. kdump시스템이 재부팅되지 않습니다. 시스템이 재부팅되는 경우 kdump 는 코어를 저장하지 못했습니다. 그러면 호출할 기회가 없습니다. sadump.
이를 위해 /etc/kdump.conf
에서 기본
작업을 halt 또는 shell 로 설정합니다.
default shell
하드웨어 구성에 대한 자세한 내용은 sadumpFUJITSU Server PRIMEQUEST 2000 설치 설명서를 참조하십시오.