A.12. KVM 네트워킹 성능
기본적으로 KVM 가상 머신에는 가상 Realtek 8139(rtl8139) NIC(네트워크 인터페이스 컨트롤러)가 할당됩니다.
rtl8139 가상화된 NIC는 대부분의 환경에서 제대로 작동하지만 이 장치는 10GBbit 이더넷과 같은 일부 네트워크에서 성능 저하 문제가 발생할 수 있습니다.
성능을 개선하기 위해 반가상화 네트워크 드라이버로 전환할 수 있습니다.
참고
가상화된 Intel PRO/1000(
e1000
) 드라이버도 에뮬레이션 드라이버 선택으로 지원됩니다. e1000
드라이버를 사용하려면 아래 절차의 virtio
를 e1000
으로 교체합니다. 최적의 성능을 위해서는 virtio
드라이버를 사용하는 것이 좋습니다.
절차 A.6. virtio 드라이버로 전환
- 게스트 운영 체제를 종료합니다.
- virsh 명령을 사용하여 게스트 구성 파일을 편집합니다(여기서
GUEST
는 게스트의 이름임).# virsh edit
GUEST
virsh edit 명령은 $EDITOR 쉘 변수를 사용하여 사용할 편집기를 결정합니다. - 구성의 네트워크 인터페이스 섹션을 찾습니다. 이 섹션은 아래 코드 조각과 유사합니다.
<interface type='network'> [output truncated] <model type='rtl8139' /> </interface>
- model 요소의 type 속성을
'rtl8139'
에서'virtio'
로 변경합니다. 이렇게 하면 드라이버가 rtl8139 드라이버에서 virtio 드라이버로 변경됩니다.<interface type='network'> [output truncated] <model type=
'virtio'
/> </interface> - 변경 사항을 저장하고 텍스트 편집기를 종료합니다.
- 게스트 운영 체제를 다시 시작합니다.
기타 네트워크 드라이버를 사용하여 새 게스트 생성
또는 다른 네트워크 드라이버를 사용하여 새 게스트를 만들 수 있습니다. 네트워크 연결을 통해 게스트를 설치하는 데 어려움이 있는 경우 이 작업이 필요할 수 있습니다. 이 방법을 사용하려면 하나 이상의 게스트가 이미 생성(CD 또는 DVD에서 설치될 수 있음)이 템플릿으로 사용해야 합니다.
- 기존 게스트(이 예에서는 Guest1라는 이름의 XML 템플릿)를 만듭니다.
# virsh dumpxml Guest1 > /tmp/guest-template.xml
- XML 파일을 복사하고 편집하고 가상 머신 이름, UUID, 디스크 이미지, MAC 주소 및 기타 고유한 매개 변수 등의 고유한 필드를 업데이트합니다. UUID 및 MAC 주소 행을 삭제할 수 있으며 virsh는 UUID와 MAC 주소를 생성합니다.
# cp /tmp/guest-template.xml /tmp/new-guest.xml # vi /tmp/new-guest.xml
네트워크 인터페이스 섹션에 model 행을 추가합니다.<interface type='network'> [output truncated] <model type='virtio' /> </interface>
- 새 가상 머신을 생성합니다.
# virsh define /tmp/new-guest.xml # virsh start new-guest