메모리 소모량이 과도하게 많은 가상 시스템의 경우 고급 옵션을 사용하여 기본 가상 CPU 설정을 수동으로 재정의할 수 있습니다.

다음과 같은 고급 옵션을 가상 시스템 구성 파일에 추가할 수 있습니다.

표 1. 가상 NUMA 제어를 위한 고급 옵션

옵션

설명

기본값

cpuid.coresPerSocket

가상 CPU 소켓당 가상 코어의 수를 결정합니다. 값이 1보다 크면 가상 시스템에 가상 NUMA 토폴로지가 있는 경우 가상 NUMA 노드의 크기도 결정합니다. 각 물리적 호스트에 대한 정확한 가상 NUMA 토폴로지를 아는 경우 이 옵션을 설정할 수 있습니다.

1

numa.vcpu.maxPerVirtualNode

cpuid.coresPerSocket이 2의 배수로 너무 제한된 경우에는 numa.vcpu.maxPerVirtualNode를 직접 설정할 수 있습니다. 이 경우에는 cpuid.coresPerSocket을 설정하지 마십시오.

8

numa.autosize

이 옵션을 설정하면 가상 NUMA 토폴로지에서 가상 노드당 가상 CPU의 수는 각 물리적 노드의 코어 수와 같습니다.

FALSE

numa.autosize.once

이 설정으로 가상 시스템 템플릿을 만들면 이후에 가상 시스템 전원을 켤 때마다 설정이 항상 동일하게 유지됩니다. 가상 시스템의 구성된 가상 CPU의 수가 수정되면 가상 NUMA 토폴로지가 재평가됩니다.

TRUE

numa.vcpu.min

가상 NUMA 토폴로지를 생성하기 위해 필요한 가상 시스템의 최소 가상 CPU 수입니다.

9

참고:

numa.autosize를 TRUE로 설정한 경우 수동으로 또는 스크립트를 사용하여 구성을 설정하면 일부 게스트가 동적 변경 내용을 처리하지 못할 수 있습니다.

예를 들어 numactl 시스템 유틸리티를 사용하여 구성된 Linux 애플리케이션은 노드당 4개의 코어가 있는 하나의 물리적 호스트에서 설정되고 테스트됩니다. 호스트에는 8개의 가상 CPU가 있는 가상 시스템에 대한 두 개의 NUMA 노드가 필요합니다. 동일한 가상 시스템이 노드당 8개의 코어가 있는 시스템에서 실행되는 경우(vMotion 작업 중에 발생 가능) numa.autosize가 TRUE로 설정되어 있으면 두 개의 가상 NUMA 노드가 아니라 하나의 가상 NUMA 노드만 만들어집니다. numactl에서 두 번째 가상 NUMA 노드를 참조하면 작업이 실패합니다.

이 문제를 방지하려면 스크립트가 numactl --hardware를 먼저 쿼리할 만큼 충분히 지능적이어야 합니다. 그렇지 않은 경우에는 NUMA 토폴로지를 명시적으로 설정하거나 기본 numa.autosize.once 설정이 적용되도록 해야 합니다.