13.7. 가상 머신 네트워크 성능 최적화

VM의 NIC(네트워크 인터페이스 카드)의 가상 특성으로 인해 VM은 할당된 호스트 네트워크 대역폭의 일부를 손실하므로 VM의 전체 워크로드 효율성을 줄일 수 있습니다. 다음 팁은 가상 NIC(vNIC) 처리량에 가상화의 부정적인 영향을 최소화할 수 있습니다.

절차

다음 방법 중 하나를 사용하고 VM 네트워크 성능에 유용한 영향을 미치는지 확인합니다.

vhost_net 모듈 활성화

호스트에서 vhost_net 커널 기능이 활성화되었는지 확인합니다.

# lsmod | grep vhost
vhost_net              32768  1
vhost                  53248  1 vhost_net
tap                    24576  1 vhost_net
tun                    57344  6 vhost_net

이 명령의 출력이 비어 있으면 vhost_net 커널 모듈을 활성화합니다.

# modprobe vhost_net
다중 큐 virtio-net 설정

VM의 다중 대기열 virtio-net 기능을 설정하려면 virsh edit 명령을 사용하여 VM의 XML 구성에 대해 편집합니다. XML에서 < devices&gt; 섹션에 다음을 추가하고 N 을 VM의 vCPU 수로 최대 16개씩 바꿉니다.

<interface type='network'>
      <source network='default'/>
      <model type='virtio'/>
      <driver name='vhost' queues='N'/>
</interface>

VM이 실행 중인 경우 변경 사항이 적용되도록 다시 시작합니다.

네트워크 패킷 배치

긴 전송 경로가 있는 Linux VM 구성에서 패킷을 커널에 제출하기 전에 배치하면 캐시 사용률이 향상될 수 있습니다. 패킷 배치를 설정하려면 호스트에서 다음 명령을 사용하고 tap0 을 VM에서 사용하는 네트워크 인터페이스 이름으로 바꿉니다.

# ethtool -C tap0 rx-frames 64
SR-IOV
호스트 NIC에서 SR-IOV를 지원하는 경우 vNICs에 SR-IOV 장치 할당을 사용합니다. 자세한 내용은 SR-IOV 장치 관리를 참조하십시오.

추가 리소스