15.2. kdump 메모리 사용량 구성
kdump
의 메모리 예약은 시스템 부팅 중에 발생합니다. 메모리 크기는 시스템의 GRUB(GRUB) 구성에 설정되어 있습니다. 메모리 크기는 구성 파일에 지정된 crashkernel=
옵션 값과 시스템 실제 메모리 크기에 따라 달라집니다.
crashkernel=
옵션은 여러 가지 방법으로 정의할 수 있습니다. crashkernel=
값을 지정하거나 auto
옵션을 구성할 수 있습니다. crashkernel=auto
매개 변수는 시스템의 실제 메모리 크기에 따라 자동으로 메모리를 예약합니다. 구성된 경우 커널은 캡처 커널에 적절한 양의 메모리를 자동으로 예약합니다. 이렇게 하면 OOM(Out-of-Memory) 오류가 발생하지 않도록 방지할 수 있습니다.
kdump
의 자동 메모리 할당은 시스템 하드웨어 아키텍처 및 사용 가능한 메모리 크기에 따라 다릅니다.
예를 들어 AMD64 및 Intel 64에서는 사용 가능한 메모리가 1GB 이상인 경우에만 crashkernel=auto
매개 변수가 작동합니다. 64비트 ARM 아키텍처 및 IBM Power Systems에는 2GB 이상의 사용 가능한 메모리가 필요합니다.
시스템에 자동 할당의 최소 메모리 임계값보다 적은 경우 예약된 메모리 양을 수동으로 구성할 수 있습니다.
사전 요구 사항
- 시스템에 대한 root 권한이 있습니다.
-
kdump
구성 및 대상에 대한 요구 사항을 충족했습니다. 자세한 내용은 지원되는 kdump 구성 및 대상을 참조하십시오.
절차
crashkernel=
옵션을 준비합니다.예를 들어 128MB의 메모리를 예약하려면 다음을 사용합니다.
crashkernel=128M
또는 설치된 메모리의 총 크기에 따라 예약된 메모리 양을 변수로 설정할 수 있습니다. 메모리 예약을 변수에 대한 구문은
crashkernel=<range1> :< size1>,< range2>:<size2>
입니다. 예를 들면 다음과 같습니다.crashkernel=512M-2G:64M,2G-:128M
총 시스템 메모리 양이 512MB와 2GB인 경우 명령은 64MB의 메모리를 예약합니다. 총 메모리 양이 2GB를 초과하는 경우 메모리 예약은 128MB입니다.
예약된 메모리를 오프셋합니다.
일부 시스템에서는
crashkernel
예약이 일찍 이루어지기 때문에 고정된 오프셋이 있는 메모리를 예약해야 하며, 특수 사용을 위해 더 많은 메모리를 예약해야 할 수도 있습니다. 오프셋을 정의할 때 예약된 메모리가 시작됩니다. 예약된 메모리를 오프셋하려면 다음 구문을 사용하십시오.crashkernel=128M@16M
이 예에서
kdump
는 16MB(실제 주소0x01000000
)부터 128MB의 메모리를 예약합니다. offset 매개변수를 0으로 설정하거나 완전히 생략하면kdump
가 예약된 메모리를 자동으로 오프셋합니다. 변수 메모리 예약을 설정할 때 이 구문을 사용할 수도 있습니다. 이 경우 오프셋은 항상 마지막으로 지정됩니다. 예를 들면 다음과 같습니다.crashkernel=512M-2G:64M,2G-:128M@16M
boot loader 구성에
crashkernel=
옵션을 적용합니다.# grubby --update-kernel=ALL --args="crashkernel=<value>"
&
lt;value
>를 이전 단계에서 준비한crashkernel=
옵션의 값으로 바꿉니다.