18.7. 가상 머신 네트워크 성능 최적화
VM의 NIC(네트워크 인터페이스 컨트롤러)의 가상 특성으로 인해 VM이 할당된 호스트 네트워크 대역폭의 일부가 손실됩니다. 이를 통해 VM의 전체 워크로드 효율성을 줄일 수 있습니다. 가상화에 대한 vNIC(가상 NIC) 처리량에 미치는 부정적인 영향을 최소화하기 위해 다양한 방법을 사용할 수 있습니다.
프로세스
다음 방법 중 하나를 사용하여 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> 섹션에 다음을 추가하고N을 VM의 vCPU 수(최대 16개)로 바꿉니다.<interface type='network'> <source network='default'/> <model type='virtio'/> <driver name='vhost' queues='N'/> </interface>VM이 실행 중인 경우 변경 사항을 적용하려면 VM을 다시 시작합니다.
네트워크 패킷 배치
긴 전송 경로가 있는 Linux VM 구성에서 패킷을 커널에 제출하기 전에 패킷을 배치하면 캐시 사용률이 향상될 수 있습니다. 패킷 일괄 처리를 설정하려면 호스트에서 다음 명령을 사용하고 VMs에서 사용하는 네트워크 인터페이스 이름으로 tap0 을 바꿉니다.
# ethtool -C tap0 rx-frames 64SR-IOV
호스트 NIC에서 SR-IOV(Single-root I/O Virtualization)를 지원하는 경우 vNICs에 SR-IOV 장치 할당을 사용합니다.
자세한 내용은 SR-IOV 장치 관리를 참조하십시오.