7.14.3. 게스트 메모리 관리

특정 사용 사례에 맞게 게스트 메모리 설정을 조정하려면 게스트의 YAML 구성 파일을 편집하면 됩니다. OpenShift Virtualization에서는 게스트 메모리 과다 할당을 구성하고 게스트 메모리 오버헤드 계산을 비활성화할 수 있습니다.

주의

다음 절차를 수행하면 메모리 부족으로 인해 가상 머신 프로세스가 종료될 가능성이 높아집니다. 이러한 위험을 인지하는 경우에만 진행하십시오.

7.14.3.1. 게스트 메모리 과다 할당 구성

가상 워크로드에 사용 가능한 것보다 많은 메모리가 필요한 경우, 메모리 과다 할당을 사용하여 호스트의 메모리 전체 또는 대부분을 VMI(가상 머신 인스턴스)에 할당할 수 있습니다. 메모리 과다 할당을 사용하면 일반적으로 호스트에 예약되는 리소스를 최대화할 수 있습니다.

예를 들어 호스트에 32GB RAM이 있으면 메모리 과다 할당을 사용하여 각각 4GB의 RAM이 있는 VM(가상 머신) 8개를 만들 수 있습니다. 이러한 할당은 가상 머신에서 모든 메모리를 동시에 사용하지 않는다는 가정 하에 작동합니다.

중요

메모리를 과다 할당하면 메모리 부족(OOM 종료)으로 인해 가상 머신 프로세스가 종료될 가능성이 높아집니다.

VM이 OOM인해 종료될 가능성은 특정 구성, 노드 메모리, 사용 가능한 스왑 공간, 가상 머신 메모리 사용량, 커널 동일 페이지 병합(KSM) 및 기타 요인에 따라 달라집니다.

절차

  1. 클러스터에서 요청한 것보다 사용 가능한 메모리가 많다는 것을 가상 머신 인스턴스에 명시적으로 알리기 위해 가상 머신 구성 파일을 편집하여 spec.domain.memory.guestspec.domain.resources.requests.memory보다 높은 값으로 설정합니다. 이 과정을 메모리 과다 할당이라고 합니다.

    이 예제에서는 클러스터에서 1024M를 요청했지만 가상 머신 인스턴스에는 2048M가 사용 가능한 것으로 표시됩니다. 노드에 사용 가능한 메모리가 충분한 경우 가상 머신 인스턴스에서 최대 2048M를 사용합니다.

    kind: VirtualMachine
    spec:
      template:
        domain:
        resources:
            requests:
              memory: 1024M
        memory:
            guest: 2048M
    참고

    노드의 메모리가 부족한 경우에는 Pod에 대한 제거 규칙과 동일한 제거 규칙이 가상 머신 인스턴스에 적용됩니다.

  2. 가상 머신을 생성합니다.

    $ oc create -f <file_name>.yaml