17.7. 가상 머신 네트워크 성능 최적화
VM의 NIC(네트워크 인터페이스 컨트롤러)의 가상 특성으로 인해 VM은 할당된 호스트 네트워크 대역폭의 일부를 손실하여 VM의 전체 워크로드 효율성을 줄일 수 있습니다. VM 구성을 수정하여 가상 NIC(vNIC) 처리량에 가상화의 부정적인 영향을 최소화할 수 있습니다.
프로세스
다음 방법 중 하나를 사용하여 VM 네트워크 성능에 유용한 영향을 미치는지 확인합니다.
- vhost_net 모듈 활성화
호스트에서
vhost_net
커널 기능이 활성화되어 있는지 확인합니다.lsmod | grep vhost
# lsmod | grep vhost vhost_net 32768 1 vhost 53248 1 vhost_net tap 24576 1 vhost_net tun 57344 6 vhost_net
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 명령의 출력이 비어 있으면
vhost_net
커널 모듈을 활성화합니다.modprobe vhost_net
# modprobe vhost_net
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
- 다중 대기열 virtio-net 설정
VM의 다중 대기열 virtio-net 기능을 설정하려면
virsh edit
명령을 사용하여 VM의 XML 구성을 편집합니다. XML에서 <devices
> 섹션에 다음을 추가하고N
을 VM의 vCPU 수(최대 16개)로 바꿉니다.<interface type='network'> <source network='default'/> <model type='virtio'/> <driver name='vhost' queues='N'/> </interface>
<interface type='network'> <source network='default'/> <model type='virtio'/> <driver name='vhost' queues='N'/> </interface>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow VM이 실행 중인 경우 변경 사항을 적용하려면 VM을 다시 시작합니다.
- 네트워크 패킷 배치
전송 경로가 긴 Linux VM 구성에서 패킷을 커널에 제출하기 전에 패킷을 배치하면 캐시 사용률이 향상될 수 있습니다. 패킷 일괄 처리를 설정하려면 호스트에서 다음 명령을 사용하고 VMs에서 사용하는 네트워크 인터페이스 이름으로 tap0 을 바꿉니다.
ethtool -C tap0 rx-frames 64
# ethtool -C tap0 rx-frames 64
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - SR-IOV
- 호스트 NIC가 SR-IOV를 지원하는 경우 vNICs에 SR-IOV 장치 할당을 사용합니다.
자세한 내용은 SR-IOV 장치 관리를 참조하십시오.