2013-06-21 2 views
0

QEMU/KVM 및 libvirt를 사용하는 Fedora 18 호스트에서 Ubuntu VM을 실행하는 설치 작업을하고 있습니다. 이제 2 개의 vCPU를 내 VM에 고정 시켰습니다. virsh를 사용하여 고정 된 vCPU를 볼 수 있습니다. 그러나 그것을 발견 할 수있는 다른 방법이 있습니까? 이상적으로, 고정 된 vCPU의 수/id를 반환하는 함수를 작성하고 싶습니다.고정 된 vCPU를 찾는 방법은 무엇입니까?

답변

0

도메인 XML의 요소를 사용하여 vcpu에 대해 고정 된 CPU를 결정할 수 있습니다. 섹션 CPU Tuning을 참조하십시오. 기본적으로 vcpu는 모든 물리적 CPU에 고정되어 있습니다. 예를 들어

:

<cputune> 
<vcpupin vcpu="0" cpuset="1-4,^2"/> 
<vcpupin vcpu="1" cpuset="0,1"/> 
</cputune> 
+0

사실 내가 알고 싶은 것은 내가 API를 쓸 수있는 방법이 있는지, 즉 시스템에 나에게 전체 고정 된 CPU의 수를 반환 할 수 있다는 것입니다. 2 대의 VM을 실행 중이라고 가정하면 이제 각 VM마다 별도의 XML 파일이 있습니다. 해당 호스트에 얼마나 많은 CPU가 고정되어 있는지 알고 싶습니다. – Pensu

+0

libvirt에 따르면 [virDomainGetVcpuPinInfo] (http://libvirt.org/html/libvirt-libvirt.html#virDomainGetVcpuPinInfo) 메서드를 사용할 수 있으며 선택할 수있는 다양한 언어 바인딩이 있습니다. 일반적으로 명령어 ** taskset **를 사용하여 하이퍼 바이저에서 VM 프로세스를 조회하여 다음과 같이 사용하는 고정 된 CPU를 확인할 수 있습니다 :'taskset -c -p 1366' (qemu 프로세스 PID가 1366이라고 가정) – shawnzhu

+0

고맙습니다. . 그거야. 나에게 묻지 마라. 그러나 나는 한 가지 더 문제가있다. 내 VM의 XML 파일에 다음과 같이 정의 된 vCPU 속성이 있습니다. 3 이제는 taskset을 시도했을 때 선호도가 0-3으로 표시됩니다. – Pensu

관련 문제