18.6.6. 가상 CPU 제한 구성
VM(가상 머신)에서 사용할 수 있는 CPU 리소스의 양을 제한하려면 가상 CPU(vCPU) 제한을 설정할 수 있습니다. vCPU는 단일 VM에서 호스트의 CPU 리소스를 과도하게 사용하지 않고 하이퍼바이저가 CPU 스케줄링을 더 쉽게 관리할 수 있도록 하여 전체 성능을 향상시킬 수 있습니다.
프로세스
호스트의 현재 vCPU 스케줄링 구성을 확인합니다.
# virsh schedinfo <vm_name> Scheduler : posix cpu_shares : 0 vcpu_period : 0 vcpu_quota : 0 emulator_period: 0 emulator_quota : 0 global_period : 0 global_quota : 0 iothread_period: 0 iothread_quota : 0VM에 대한 절대 vCPU 제한을 구성하려면
vcpu_period및vcpu_quota매개변수를 설정합니다. 두 매개변수는 마이크로초 단위로 기간을 나타내는 숫자 값을 사용합니다.virsh schedinfo명령을 사용하여vcpu_period매개변수를 설정합니다. 예를 들면 다음과 같습니다.# virsh schedinfo <vm_name> --set vcpu_period=100000이 예에서
vcpu_period는 100,000 마이크로초로 설정됩니다. 즉, 스케줄러는 이 시간 간격 동안 vCPU 제한을 적용합니다.--live --config옵션을 사용하여 다시 시작하지 않고 실행 중인 VM을 구성할 수도 있습니다.virsh schedinfo명령을 사용하여vcpu_quota매개변수를 설정합니다. 예를 들면 다음과 같습니다.# virsh schedinfo <vm_name> --set vcpu_quota=50000이 예에서
vcpu_quota는vcpu_period시간 간격 동안 VM에서 사용할 수 있는 최대 CPU 시간을 지정하는 50,000 마이크로초로 설정됩니다. 이 경우vcpu_quota는vcpu_period의 절반으로 설정되므로 VM에서 해당 간격 동안 최대 50%의 CPU 시간을 사용할 수 있습니다.--live --config옵션을 사용하여 다시 시작하지 않고 실행 중인 VM을 구성할 수도 있습니다.
검증
vCPU 스케줄링 매개변수에 올바른 값이 있는지 확인합니다.
# virsh schedinfo <vm_name> Scheduler : posix cpu_shares : 2048 vcpu_period : 100000 vcpu_quota : 50000 ...