Menu Close

Red Hat Training

A Red Hat training course is available for RHEL 8

11.2. kdump 메모리 사용량 구성

kdump 의 메모리는 시스템 부팅 중에 예약됩니다. 메모리 크기는 GRUB(Grand Unified Bootloader) 2 구성 파일에서 구성됩니다. 메모리 크기는 구성 파일에 지정된 crashkernel= 옵션 값과 시스템 실제 메모리 크기에 따라 달라집니다.

crashkernel= 옵션은 다양한 방법으로 정의할 수 있습니다. crashkernel= 값을 지정하거나 auto 옵션을 구성할 수 있습니다. crashkernel=auto 매개 변수는 시스템의 실제 메모리 크기에 따라 자동으로 메모리를 예약합니다. 구성된 경우 커널은 캡처 커널에 필요한 메모리 양을 자동으로 예약합니다. 이렇게 하면 OOM(Out-of-Memory) 오류가 발생하지 않도록 방지할 수 있습니다.

참고

kdump 의 자동 메모리 할당은 시스템 하드웨어 아키텍처 및 사용 가능한 메모리 크기에 따라 다릅니다.

예를 들어 AMD64 및 Intel 64에서는 사용 가능한 메모리가 1GB 이상인 경우에만 crashkernel=auto 매개 변수가 작동합니다. 64비트 ARM 아키텍처 및 IBM Power Systems에는 2GB 이상의 사용 가능한 메모리가 필요합니다.

시스템에 자동 할당의 최소 메모리 임계값보다 적은 경우 예약된 메모리 양을 수동으로 구성할 수 있습니다.

사전 요구 사항

절차

  1. /etc/default/grub 파일을 편집합니다.
  2. 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).

  3. 다음 명령을 사용하여 GRUB2 설정 파일을 업데이트합니다.

    # grub2-mkconfig -o /boot/grub2/grub.cfg
참고

kdump 용 메모리를 구성하는 다른 방법은 모든 부팅 항목을 업데이트할 grub2-editenv 명령을 사용하여 kernelopts 변수에 crashkernel=<SOME_VALUE > 매개변수를 추가하는 것입니다. 또는 grubby 유틸리티를 사용하여 하나의 부팅 항목, 더 많은 부팅 항목 또는 모든 부팅 항목을 업데이트할 수 있습니다.