14.2. RHEL 9에서 kdump 메모리 사용량 구성
kexec-tools 패키지는 기본 crashkernel= 메모리 예약 값을 유지 관리합니다. kdump 서비스는 기본값을 사용하여 각 커널에 대해 크래시 커널 메모리를 예약합니다. 기본값은 crashkernel= 값을 수동으로 설정할 때 필요한 메모리 크기를 추정하는 참조 기본 값으로도 사용할 수 있습니다. 크래시 커널의 최소 크기는 하드웨어 및 머신 사양에 따라 다를 수 있습니다.
kdump 의 자동 메모리 할당은 시스템 하드웨어 아키텍처 및 사용 가능한 메모리 크기에 따라 다릅니다. 예를 들어 AMD64 및 Intel 64비트 아키텍처에서는 사용 가능한 메모리가 1GB를 초과하는 경우에만 crashkernel= 매개변수의 기본값이 작동합니다. kexec-tools 유틸리티는 AMD64 및 Intel 64비트 아키텍처에 다음과 같은 기본 메모리를 구성합니다.
crashkernel=1G-4G:192M,4G-64G:256M,64G:512M
kdumpctl 추정치를 실행하여 충돌을 트리거하지 않고 대략적인 값을 얻을 수도 있습니다. 추정된 crashkernel= 값은 정확히 일치하지 않을 수 있지만 적절한 crashkernel= 값을 설정하는 참조 역할을 할 수 있습니다.
부팅 명령줄의 crashkernel=auto 옵션은 RHEL 9 이상 릴리스에서 더 이상 지원되지 않습니다.
사전 요구 사항
- 시스템에 대한 root 권한이 있습니다.
-
구성 및 대상에 대한
kdump요구 사항을 충족했습니다. 자세한 내용은 지원되는 kdump 구성 및 대상 을 참조하십시오. -
zipl유틸리티가 IBM Z 시스템인 경우 설치했습니다.
절차
크래시 커널의 기본값을 구성합니다.
# kdumpctl reset-crashkernel --kernel=ALLcrashkernel=값을 구성할 때kdump가 활성화된 시스템을 재부팅하여 구성을 테스트합니다.kdump커널이 부팅되지 않으면 메모리 크기를 점진적으로 늘려 허용 가능한 값을 설정합니다.사용자 지정
crashkernel=값을 사용하려면 다음을 수행합니다.필요한 메모리 예약을 구성합니다.
crashkernel=192M선택적으로
crashkernel= <range1>:<size1>,<range2>:<size2>:<size2> 구문을 사용하여 설치된 총 메모리 양에 따라 예약된 메모리 양을 변수로 설정할 수 있습니다. 예를 들면 다음과 같습니다.crashkernel=1G-4G:192M,2G-64G:256M이 예제에서는 총 시스템 메모리 양이 1GB 이상이고 4GB보다 낮은 경우 192MB의 메모리를 예약합니다. 총 메모리 양이 4GB를 초과하면
kdump용으로 256MB가 예약되어 있습니다.선택 사항: 예약된 메모리를 오프셋합니다.
일부 시스템은
crashkernel예약이 매우 초기이므로 특정 고정 오프셋이 있는 메모리를 예약해야 하며 특수 사용을 위해 일부 영역을 예약하려고 합니다. 오프셋이 설정되면 예약된 메모리가 여기에서 시작됩니다. 예약된 메모리를 오프셋하려면 다음 구문을 사용합니다.crashkernel=192M@16M이 예제에서는 16MB(실제 주소 0x01000000)부터 192MB의 메모리를 예약합니다. 0으로 오프셋하거나 값을 지정하지 않으면
kdump에서 예약된 메모리를 자동으로 오프셋합니다. 오프셋을 마지막 값으로 지정하여 변수 메모리 예약을 설정할 때 메모리를 오프셋할 수도 있습니다. 예를 들어crashkernel=1G-4G:192M,2G-64G:256M@16M.부트 로더 구성을 업데이트합니다.
# grubby --update-kernel ALL --args "crashkernel=<custom-value>"&
lt;custom-value>에는 크래시 커널에 대해 구성한 사용자 정의crashkernel=값이 포함되어야 합니다.
변경 사항을 적용하려면 재부팅하십시오.
# reboot
kdump 구성을 테스트하는 명령으로 인해 커널이 데이터 손실과 충돌합니다. 주의해서 지침을 따르십시오. kdump 설정을 테스트하기 위해 활성 프로덕션 시스템을 사용해서는 안 됩니다.
sysrq 키를 활성화하여 커널이 충돌하도록 합니다. address-YYY-MM-DD-HH:MM:SS/vmcore 파일은 /etc/kdump.conf 파일에 지정된 대로 대상 위치에 저장됩니다. 기본 대상 위치를 선택하면 vmcore 파일은 /var/crash/ 에 마운트된 파티션에 저장됩니다.
kdump커널에 부팅하려면sysrq키를 활성화합니다.# echo c > /proc/sysrq-trigger명령을 사용하면 커널이 충돌하고 필요한 경우 커널이 다시 부팅됩니다.
-
/etc/kdump.conf파일을 표시하고vmcore파일이 대상 대상에 저장되는지 확인합니다.